Commit Graph

735 Commits

Author SHA1 Message Date
André Roth
b2b7f11d17 ci: remove pip and virtualenv
- separate unit tests, benchmark, system tests, flake8
2024-10-04 15:56:57 +02:00
André Roth
f0ad0f9496 improve and test grab downloader 2024-10-04 13:37:56 +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
dbc336f921 system-tests: show execution time 2024-10-03 21:53:43 +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
Mauro Regli
af5b04b24f Feature: Add Pull Snapshot API 2024-10-03 14:25:46 +02:00
André Roth
37ee41af67 system-test: enable test not depending on FTP 2024-10-03 01:15:56 +02:00
André Roth
d6efe8636e cleanup FTP system tests
as we cannot test FTP with S3 backend easily, test is disabled and removed from api tests
2024-10-03 01:15:56 +02:00
André Roth
caf55bb8e0 ci: cleanup step names 2024-10-03 01:15:56 +02:00
André Roth
cc4798472f fix test depending on gpg1 keys 2024-10-02 21:29:28 +02:00
André Roth
c6c607a406 improve make docker-shell 2024-10-02 19:13:00 +02:00
André Roth
c25693b009 storage: add tests 2024-10-02 19:12:05 +02:00
André Roth
fca153cc8b docker-deb: install and init swagger 2024-10-02 18:48:48 +02:00
André Roth
09954b2c73 build-deb: build only host architecture 2024-10-01 13:59:42 +02:00
André Roth
26a9219f7d swagger: add test 2024-10-01 01:32:56 +02:00
André Roth
5b92336668 add development server 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
20c81d7f9a ci: allow pull requests
disable tests if env secrets are empty

- detect emtpy aws token
- upload: check for aptly creds
2024-09-24 10:14:39 +02:00
André Roth
9771747916 improve CI workflow
- use debian version consistently
- if the commit is not on a git tag, append ci version
- avoid double zipping
- cleanup binary builds
- replace `make release` with `make binaries`
- add missing files to archives
- use matrix build for deb packages
- allow building release version
- keep directory inside zip archives
- accept releases only on master
  only tags on master will trigger a release
- cleanup namings
- keep path in zip
- add retention period for pipeline artifacts
2024-09-24 10:14:39 +02:00
André Roth
497196886a system-tests: download compressed etcd.db 2024-09-24 10:14:39 +02:00
iofq
056df39a3c move release script to Makefile 2024-09-24 10:14:39 +02:00
André Roth
88f4101866 update or downgrade go modules to match debian versions
- use go 1.22 (as available also in bookworm-backports)
- do not install go mods in docker
2024-09-24 10:14:39 +02:00
André Roth
2306993b7b ci: improve aptly repo layout
use the new -multi-dist option to combine all distributions into one
publish point:

deb http://repo.aptly.info/ci bookworm main

or:

deb http://repo.aptly.info/release bookworm main

for the following distributions: buster, bullseye, bookworm, focal, jammy
2024-09-24 10:14:39 +02:00
André Roth
98b1ed07d1 docker: improve dev env
- abort docker scripts on error
- generate version in system tests
- build debian packages in docker
- add make clean target
- fix lint
2024-09-24 10:14:39 +02:00
André Roth
b342af0d96 system tests: fix gpgv warning when verifying signatures
gpgv: can't allocate lock for '/home/runner/.gnupg/aptlytest.gpg'

this forced running local system tessts in /home/runner, as it is
in the gitgub actions.
2024-09-24 10:14:39 +02:00
Andre Roth
8fd48e9fa9 add default aptly config files
config rfiles are read in the following order:

1) ~/.aptly.conf
2) /usr/local/etc/aptly.conf
3) /etc/aptly.conf
2024-09-24 10:14:39 +02:00
André Roth
95915480a0 update tests
the fixed handling of provided packages results in snapshots no longer missing provided packages,
and also provided packages being added to repos.
2024-08-11 12:35:46 +02:00
André Roth
40eb4b4751 docker-lint: use go 1.19 compatible golangci-lint version
- use same user in docker container
- use GOPATH in source dir to prevent downloading all dependencies on each run
- add make clean
2024-08-03 00:14:26 +02:00
André Roth
0215925608 add graphviz to enable system tests
aptly uses dot in the aptly graph command and API. if it is not available, the test is skipped...
2024-08-03 00:14:26 +02:00
André Roth
696b78f207 docker: update dev env and documentation 2024-08-03 00:14:26 +02:00
André Roth
48a0bca35e allow s3 test in docker
read AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY from ./aws.creds when running:

  make docker-system-tests
2024-08-03 00:14:26 +02:00
André Roth
a0bd32a39c system tests: fix expired ppa mirror key 2024-07-31 22:16:00 +02:00
André Roth
640c202ee5 etcd: implement separate system tests
- add t13_etcd test directory
- etcd will be started for the unit tests and each system test
- etcd will load fixture DB export if requested by the test
- existing tests are reused for etcd testing
2024-07-31 22:16:00 +02:00
hudeng
59bf4501e8 feat: Use databaseBackend config repace databaseEtcd
databaseBackend config contains type and url sub config, It can facilitate the expansion of other types of databases in the future.
2024-07-31 22:16:00 +02:00
hudeng
f29449db14 feat: Add system test for etcd 2024-07-31 22:16:00 +02:00
hudeng
78172d11d7 feat: Add etcd database support
improve concurrent access and high availability of aptly with the help of the characteristics of etcd
2024-07-31 22:16:00 +02:00
André Roth
57e2c5c670 api tests: use check_task_fail 2024-07-24 21:19:47 +02:00
André Roth
49ff832f94 reenable lost tests 2024-07-24 21:19:47 +02:00
André Roth
4a0bdcbb64 improve system tests
- log import errors for test modules
- log output only on test failure
- improve docker system test container
- use go 1.19 in docker system tests
- download go dependencies in docker container
- system tests: color failues output
- imrpove test result output
- do not install golangci-lint in system tests
2024-07-24 21:19:47 +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
440c3debdc improve api tests and error output
show only relevant aptly logs if a test fails.
for async tasks, show task output, as it contains the error message.
2024-07-24 21:19:47 +02:00
André Roth
8029305d32 dependencies: remove duplicates / missing deps from test 2024-07-11 18:25:49 +02:00
Sylvain Nieuwlandt
11401ca472 [api/copy] create system tests for new copy api endpoint 2024-07-10 16:43:03 +02:00
André Roth
d8c1e432c6 add test 2024-07-03 18:08:58 +02:00
André Roth
4661913265 add system test for maximumVersion filter 2024-06-24 17:44:40 +02:00
Ryan Gonzalez
b5bf2cbcda Fix functional tests' '--capture' on Python 3
None of the commands' output is ever treated as binary, so we can just
always decode it as text.

Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com>
2024-06-17 11:51:18 +02:00
Ryan Gonzalez
f9325fbc91 Add support for Azure package pools
This adds support for storing packages directly on Azure, with no truly
"local" (on-disk) repo used. The existing Azure PublishedStorage
implementation was refactored to move the shared code to a separate
context struct, which can then be re-used by the new PackagePool. In
addition, the files package's mockChecksumStorage was made public so
that it could be used in the Azure PackagePool tests as well.

Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com>
2024-06-17 11:51:18 +02:00
Ryan Gonzalez
8e37813129 Add support for custom package pool locations
Signed-off-by: Ryan Gonzalez <ryan.gonzalez@collabora.com>
2024-06-17 11:51:18 +02:00