André Roth
4d6688d68e
sanitize archs
2024-10-22 16:58:15 +02:00
Christoph Fiehe
7a7ff1142c
Minor code and documentation changes.
...
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-10-22 16:58:15 +02:00
Christoph Fiehe
8cceed12f7
Fix tests.
...
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-10-22 16:58:15 +02:00
Christoph Fiehe
f8f28e9554
Fixing tests and fix cleanup.
...
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-10-22 16:58:15 +02:00
Christoph Fiehe
ac5ecf946d
Cleanup improved and code redundant code removed.
...
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-10-22 16:58:15 +02:00
Christoph Fiehe
d87d8bac92
Fix test cases.
...
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-10-22 16:58:15 +02:00
Christoph Fiehe
14c29ff912
Fixing tests.
...
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-10-22 16:58:15 +02:00
Christoph Fiehe
73cdf5417b
Use POST instead of PUT for source creation.
...
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-10-22 16:58:15 +02:00
André Roth
fa0d2860f0
fix multidist in publish
2024-10-22 16:58:15 +02:00
André Roth
dcbb2a06a5
fix build
2024-10-22 16:58:15 +02:00
Christoph Fiehe
bd64232eb6
Allow management of components
...
This commit allows to add, remove and update components of published repositories without the need to recreate them.
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-10-22 16:58:15 +02:00
André Roth
f16a68f59c
fix race condition with repo add files
...
Do all relevant database reading/modifying inside `maybeRunTaskInBackground`.
Notably, `LoadComplete` will load the reflist of a repo. if this is done outside of a background operation,
the data might be outdated when the background tasks runs.
2024-10-22 15:12:25 +02:00
André Roth
01f16d35c2
swagger: make json params uppercase and add default values
2024-10-22 11:02:59 +02:00
Андрей Лухнов
f8e0a8d880
Update create repo API to support snapshots
...
To achieve feature parity with cli, it is now possible
to create repos from snapshots
2024-10-22 07:53:43 +03:00
André Roth
cefc09a41b
more sanitize
2024-10-11 14:11:09 +02:00
André Roth
57639c4adf
Sanitize path api params
...
- fix path traversal complains by CodeQL
2024-10-11 12:56:08 +02:00
André Roth
861260198a
publish: persist multidist flag
2024-10-08 22:28:12 +02:00
André Roth
d6a156b181
Merge pull request #1162 from aptly-dev/feature/176-snapshot-pull-api
...
Snapshot Pull API
2024-10-03 23:07:27 +02:00
André Roth
bce54d5878
mirror api: update documentation
2024-10-03 22:39:03 +02:00
André Roth
c35cd783cf
swagger: improve doc
2024-10-03 17:46:32 +02:00
André Roth
38ea720fc5
snapshot merge: use proper REST api
...
- this breaks the existing api, which is only available in CI builds
- improve swagger doc
2024-10-03 17:34:29 +02:00
André Roth
06b2b920da
make REST api more restful
2024-10-03 14:51:45 +02:00
André Roth
0bc45c822d
swagger: document /api/snapshots/pull
2024-10-03 14:25:46 +02:00
Mauro Regli
af5b04b24f
Feature: Add Pull Snapshot API
2024-10-03 14:25:46 +02:00
André Roth
06cbd29d0d
add storage API
2024-10-02 18:48:48 +02:00
André Roth
fb538333fa
add swagger documentation
2024-10-01 01:07:09 +02:00
André Roth
1d1bd41bb8
add swagger support
...
- install swaggo
- add swagger config option
2024-10-01 01:07:09 +02:00
Christoph Fiehe
4195ad90bc
Allow to add a new component to a published repo
...
This commit modifies the behavior of the publish switch method in the way, that also new components can be added to an already published repository. It is no longer necessary to drop and recreate the whole publish.
Signed-off-by: Christoph Fiehe <c.fiehe@eurodata.de >
2024-09-24 15:43:27 +02:00
André Roth
37a9fbe530
api: fix OOM with sync tasks
...
since sync API calls also use tasks internally, this lead to out of memory due to aptly never removing them.
2024-08-03 14:36:04 +02:00
André Roth
fe25414b45
api: repo copy handle package not found
...
and add tests for error proper handling.
2024-07-24 21:19:47 +02:00
André Roth
49184c9163
fix apiReposCopyPackage getting corrupt file name
...
it seems c.Params.ByName("file") should not be used
inside maybeRunTaskInBackground, as the content may be corrupted sometimes.
2024-07-24 21:19:47 +02:00
Sylvain Nieuwlandt
11401ca472
[api/copy] create system tests for new copy api endpoint
2024-07-10 16:43:03 +02:00
Valentin BRICE
66429bff45
[api/repos] Add copy API
2024-07-10 16:43:03 +02:00
Sylvain Nieuwlandt
8114786179
Declare the Copy API
2024-07-10 16:43:03 +02:00
André Roth
c1f7e5fe96
handle GpgDisableVerify and ignore-signatures consistently
...
and be less verbose
2024-07-03 18:08:58 +02:00
André Roth
d16110068c
allow not signed mirrors without InRelease file
2024-07-03 18:08:58 +02:00
hudeng
ecc88e7a40
feat: repo and snapshots packages filter api add 'maximumVersion' query parameter support
...
example: `curl http://localhost:8080/api/repos/test/packages\?maximumVersion\=1 `
Change-Id: Ie9ffd36146bf017bbb353737f32360f7b73d6b0a
2024-06-24 17:44:40 +02:00
André Roth
1a3cfea348
replace io/ioutil
...
fixes golangci-lint errors
2024-06-17 11:51:18 +02:00
André Roth
c33141d49b
fix golangci-lint and compilation errors
2024-06-17 11:51:18 +02:00
Ryan Gonzalez
810df17009
Clean up temporary files when mirroring
...
Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com >
2024-06-17 11:51:18 +02:00
Ryan Gonzalez
19255debb9
Reduce required usage of LocalPackagePool
...
Several sections of the code *required* a LocalPackagePool, but they
could still perform their operations with a standard PackagePool.
Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com >
2024-06-17 11:51:18 +02:00
André Roth
3e1485faf5
queue sync calls
2024-06-15 19:18:14 +02:00
André Roth
787f954833
mirror: do not download already downloaded packages
...
this change imports downloaded packages into the pool immediately after download.
in case mirroring is aborted and later resumed, already downloaded packages will not be downloaded anymore.
2024-06-15 16:15:23 +02:00
André Roth
e9bdb983c8
tasks: improve log level
2024-06-15 16:15:23 +02:00
Noa Resare
b4cd86aa14
Introduce option multi-dist to the publish commands
...
This change makes it possible to publish multiple distributions
with packages named the same but with different content by changing
structure of the generated pool hierarchy. The option not enabled
by default as this changes the structure of the output which could
break the expectations of other tools.
2024-06-15 11:27:26 +02:00
Cal Jurgella
4bd26f5977
Enable SkipArchitectureCheck and IgnoreSignatures in mirror API
2024-06-14 14:30:29 +02:00
Ryan Gonzalez
8d09c202db
Skip loading reflists when listing published repos
...
The output doesn't actually depend on the reflists, and loading them for
every published repo starts to take substantial time and memory.
Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com >
2024-04-24 17:35:44 +02:00
Ryan Gonzalez
8ab8398c50
Use github.com/saracen/walker for file walk operations
...
In some local tests w/ a slowed down filesystem, this massively cut down
on the time to clean up a repository by ~3x, bringing a total 'publish
update' time from ~16s to ~13s.
Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com >
2024-04-24 16:46:16 +02:00
André Roth
6be4f5e8d0
gpg api: allow self signed and use default gpg version
2024-04-03 10:16:56 +02:00
André Roth
b5b0a52cbe
s3 api: get publish root list
2024-04-03 10:14:01 +02:00