Commit Graph

2277 Commits

Author SHA1 Message Date
André Roth
373a157163 release for ubu24.04 2024-09-24 10:14:39 +02:00
André Roth
0178093f6c catch config file errors 2024-09-24 10:14:39 +02:00
André Roth
8e8cf90a71 ci: use async aptly publish 2024-09-24 10:14:39 +02:00
André Roth
a22dc9be1b do not hardcode go version 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
c248dc1803 github CI: use dpkg-buildpackage for building debian packages
- use go 1.19
- Makefile: improve unit test output
- cleanup: remove travis
2024-09-24 10:14:39 +02:00
André Roth
53f96c98ad CI: use go 1.22 for merging code code 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
André Roth
52faf78324 use /usr/local/etc/aptly.conf config file
fixes #1108
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
32a3943821 support ~ in rootDir as home directory 2024-09-24 10:14:39 +02:00
André Roth
f7f220aa18 debianize
- fix make version on debian
- update gitignore
- add aptly-api and service
- install zsh completion
- add debug package
- move aptly data from orig deb package
- do not add shell for service user
- use 8080 as default port
2024-09-24 10:14:39 +02:00
iofq
372ce3c4bc Avoid nil panic when downloadSpeedLimit is set in api mode 2024-08-16 10:04:46 +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
5hir0kur0
d2332e6452 Log a warning for errors in MatchesDependency 2024-08-11 12:35:46 +02:00
André Roth
1428f54a02 make compatible with go 1.19 2024-08-11 12:35:46 +02:00
André Roth
feb87c0f19 Revert "Remove errors.Join usage for go1.19 compatibility"
This reverts commit 1339e35dd785fff114549e027d81cbe47a882e27.
2024-08-11 12:35:46 +02:00
5hir0kur0
934fa0598b Remove errors.Join usage for go1.19 compatibility 2024-08-11 12:35:46 +02:00
5hir0kur0
6d6761e234 Add unit tests for Provides entries with version 2024-08-11 12:35:46 +02:00
5hir0kur0
ab18d4835b Support version relation in Provides entries 2024-08-11 12:35:46 +02:00
iofq
ff8a02959c fix throttled downloader 2024-08-11 10:20:37 +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
735d7a4d61 docker: reduce build size 2024-08-03 00:14:26 +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
0a6e8e3c9e update code of conduct to use github discussions 2024-08-03 00:14:26 +02:00
André Roth
556d7fa4b8 apply PR feedback 2024-08-03 00:14:26 +02:00
André Roth
5718f3f2f5 improve Makefile help 2024-08-03 00:14:26 +02:00
André Roth
0251fddae4 improve Makefile documentation 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
674f4f784b s3: use new Endpoint API
lint: s3/public.go#L136
SA1019: config.WithEndpointResolverWithOptions is deprecated: The global endpoint resolution interface is deprecated. See deprecation docs on [WithEndpointResolver]. (staticcheck)
lint: s3/public.go#L137
SA1019: aws.Endpoint is deprecated: This structure was used with the global [EndpointResolver] interface, which has been deprecated in favor of service-specific endpoint resolution. See the deprecation docs on that interface for more information.  (staticcheck)
lint: s3/public.go#L138
SA1019: aws.Endpoint is deprecated: This structure was used with the global [EndpointResolver] interface, which has been deprecated in favor of service-specific endpoint resolution. See the deprecation docs on that interface for more information.  (staticcheck)
2024-08-03 00:14:26 +02:00
André Roth
83a05a1900 golangci-lint: download and build before lint 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
dependabot[bot]
a7690c375e Bump google.golang.org/grpc from 1.38.0 to 1.56.3
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.38.0 to 1.56.3.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.38.0...v1.56.3)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-01 22:15:17 +02:00
André Roth
a0bd32a39c system tests: fix expired ppa mirror key 2024-07-31 22:16:00 +02:00
André Roth
0b3dd2709b apply PR feedback 2024-07-31 22:16:00 +02:00
André Roth
ff1557afee update go.mod 2024-07-31 22:16:00 +02:00
André Roth
67771795ca etcd: implement transactions
- use temporary db for lookups in transactions
- use batch implementation to commit transaction
2024-07-31 22:16:00 +02:00
André Roth
7a01c9c62d etcd: implement batch operations
- cache the operations internally in a list
- Write() applies the list to etcd
2024-07-31 22:16:00 +02:00
André Roth
9768ecef22 etcd: implement temporary db support
- temporary db support is implemented with a unique key prefix
- prevent closing etcd connection when closing temporary db
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
André Roth
f10acb3df8 etcd: fix db config and test
fix unit test for adapted config file
2024-07-31 22:16:00 +02:00
André Roth
5b74f82edb etcd: fix int overflow
goxc fails with:

Error: database/etcddb/database.go:17:25: cannot use 2048 * 1024 * 1024 (untyped int constant 2147483648) as int value in struct literal (overflows)
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
NeroBurner
f42ff697d4 CONTRIBUTING: Python3 is supportet
Explicitly state that Python3 is supported and required.

Since aptly `v1.5.1` (with commit 035d5314b0)
the tests are ported to Python3.

With a687df2f4f the system
tests are run with `python3` per default.

With f4a152ab22 (after `v1.5.0` aptly tag)
the tests run against Python 3.11.
2024-07-25 10:10:05 +02:00
André Roth
57e2c5c670 api tests: use check_task_fail 2024-07-24 21:19:47 +02:00
André Roth
8b41ec48c8 use consistent golangci-lint version 2024-07-24 21:19:47 +02:00