Commit Graph

2606 Commits

Author SHA1 Message Date
Tim Foerster 609b2da840 (adapted4debian) Add SOURCE_DATE_EPOCH support for reproducible builds
Implement support for the SOURCE_DATE_EPOCH environment variable as
specified by reproducible-builds.org. When set, this variable overrides
the current timestamp in the Release file's Date and Valid-Until fields,
enabling reproducible filesystem publishes.

- Read SOURCE_DATE_EPOCH environment variable in Publish()
- Use the epoch timestamp for both Date and Valid-Until fields
- Gracefully fallback to current time if unset or invalid
- Add comprehensive tests for valid and invalid SOURCE_DATE_EPOCH values
2026-06-19 22:20:45 +02:00
André Roth 4d6b83ff82 multi sign: add test 2026-06-19 22:20:45 +02:00
Ales Bregar c7ca974c2e clearer REST api docs, put whitespace to docs to show that keyId strings are trimmed 2026-06-19 22:20:45 +02:00
Ales Bregar 079273b06e updating REST api with multiple gpg keys support, due backwards compatibility introducing CSV under same key (gpg-key) 2026-06-19 22:20:45 +02:00
Ales Bregar 450757d411 review fix 2026-06-19 22:20:45 +02:00
Ales Bregar 1e0330ba3e system test t12_api sends empty keyRef string, making gpg fail 2026-06-19 22:20:45 +02:00
Ales Bregar cb04fdc21c system test unexpected string fix (would be helpful, but not changing the test just for this) 2026-06-19 22:20:45 +02:00
Ales Bregar bdf09992c9 system test configuration fix 2026-06-19 22:20:45 +02:00
Ales Bregar af304b93b5 documentation updated 2026-06-19 22:20:45 +02:00
Ales Bregar 1ec5a382fa white space revert to minimize change 2026-06-19 22:20:45 +02:00
Ales Bregar 788c3c6420 pgp: support multiple jeys
- #309 adding gpgKeys config key, accepting array of keyRef, cli args has precedence
- #691 adding handling of multiple keyRefs when signing with gpg
2026-06-19 22:20:45 +02:00
André Roth 1bdd1872c2 tasklist: fix deadlocks
* lock correct resources
* unlock list before queueing
2026-06-19 22:20:45 +02:00
André Roth f9d5427cde unit-test: use /smallfs when non-root 2026-06-19 22:20:45 +02:00
André Roth dbafacd531 ci: provide 1MB /smallfs to docker
# Conflicts:
#	Makefile
2026-06-19 22:20:45 +02:00
Brian Witt f38a727b6e (adapted4debian) error on out of space 2026-06-19 22:20:45 +02:00
Yaksh Bariya bfe6b75872 give myself some credit as well
Cause I'm nice :)
2026-06-19 22:20:45 +02:00
Yaksh Bariya e73d99d635 make version comparision more similar to that of dpkg
Initially found by automated repository health checks used by Termux
in https://github.com/termux/termux-packages/issues/27472

The root problem was 4.3.5a comparing less than 4.3.5-rc1-1 by aptly
According to debian "4.3.5a" > "4.3.5-rc1-1"

This is because dpkg splits hyphen for revision at the first hyphen,
whereas aptly was splitting at the last hyphen which is different from
dpkg's behaviour.

dpkg behaviour: https://git.dpkg.org/cgit/dpkg/dpkg.git/tree/lib/dpkg/parsehelp.c#n242

Perhaps this wasn't detected as there was broken tests in the repository
since the initial commit of aptly. This also fixes those tests
2026-06-19 22:20:45 +02:00
Tobias Assarsson a58d0266e7 fix repo edit api. 2026-06-19 22:20:45 +02:00
Ryan Gonzalez 13273d843e system-test: Allow skipping coverage
Enabling coverage near-doubles the incremental build time and adds
overhead to individual tests on the order of **5-10x** or more. It's not
essential to have this for quick local system-test runs, so add an option
to disable it.
2026-06-19 22:20:45 +02:00
Ryan Gonzalez 8d827b1312 system-test: Forward CAPTURE to docker
The code was only forwarding TEST, but CAPTURE is useful too.
2026-06-19 22:20:45 +02:00
Ryan Gonzalez 72f2ba3b1d docker: Preserve the go build cache
Otherwise, every `make docker-...` invocation will need to rebuild
everything from scratch.
2026-06-19 22:20:45 +02:00
Ryan Gonzalez 514e386502 docker: Fix usage with rootless podman and SELinux
When using rootless podman, the *current user* gets mapped to uid 0,
which results in the aptly user being unable to write to the build
directory. We can instead map the current user to the corresponding uid
in the container via `PODMAN_USERNS=keep-id`, which matches up with what
docker-wrapper wants...but then that will *enter the container as the
current uid*, which messes with the ability to set permissions on
`/var/lib/aptly`. That can be fixed by explicitly passing `--user 0:0`,
which should be a no-op on docker (since the container's default user is
already root).

Additionally, this adds `--security-opt label=disable` to avoid
permission errors when running on systems with SELinux enforcing.
2026-06-19 22:20:45 +02:00
Ryan Gonzalez 1ef694096a system-test: Fix crash when a comparison with a non-string value fails
`orig` isn't necessarily a string, so the string concatenation here can
raise a TypeError.
2026-06-19 22:20:45 +02:00
chesseed 9bff408b7b fix comment 2026-06-19 22:20:45 +02:00
chesseed 0b62edb84a fix swagger errors 2026-06-19 22:20:45 +02:00
JupiterRider 45fe4a58ca (adapted4debian) ran "gofmt -s -w ." to format the code 2026-06-19 22:20:45 +02:00
JupiterRider b560a8b146 add JupiterRider to AUTHORS file 2026-06-19 22:20:45 +02:00
JupiterRider 96512fb0e2 remove tautological (unnecessary) nil condition 2026-06-19 22:20:45 +02:00
Alejandro Guijarro Monerris 474d4fac36 chore: add name to AUTHORS 2026-06-19 22:20:45 +02:00
Alejandro Guijarro Monerris 0070b4f596 feat(s3): add publishedPrefix to pathCache to avoid reupload of files 2026-06-19 22:20:45 +02:00
Itay Porezky f01e4dbe76 Removing non related actions from mirror update 2026-06-19 22:20:45 +02:00
André Roth 9fe50921da (debian) Revert "use new azure-sdk"
This reverts commit e2cbd637b8.
2026-06-19 22:20:45 +02:00
André Roth 3d252a6623 (debian) disable swagger 2026-06-19 22:20:45 +02:00
André Roth d1bfd29dfd Merge pull request #1458 from aptly-dev/release/1.6.2
Release 1.6.2
v1.6.2
2025-06-09 18:12:35 +02:00
André Roth 27ec594606 update releasing.md 2025-06-09 14:38:53 +02:00
André Roth f652a522fd update changelog for 1.6.2 2025-06-09 14:38:53 +02:00
André Roth a794e87490 Merge pull request #1456 from aptly-dev/doc/gpg-api
doc: add swagger doc for /api/gpg/key
tests: use faketime for expired keys/signatures
2025-06-09 13:40:54 +02:00
André Roth 5b04d4fbe1 system-tests: abort on failure 2025-06-09 13:17:54 +02:00
André Roth 1566e193f6 system-test: enable faketime optionally per test 2025-06-09 13:17:54 +02:00
André Roth 601c8e9d52 tests: use faketime to prevent expired signing keys 2025-06-08 20:05:49 +02:00
André Roth 8e5707dbcc unit-tests: allow running individual tests 2025-06-08 15:00:16 +02:00
André Roth ad4d0c7b96 doc: add swagger doc for /api/gpg/key
- cleanup swagger validation errors
2025-06-08 14:24:27 +02:00
André Roth a11e004943 Merge pull request #1452 from boxjan/master
bash-completion: include global options in aptly command completions
2025-05-25 22:54:45 +02:00
boxjan f605d86a4e bash-completion: include global options in aptly command completions 2025-05-06 10:11:46 +00:00
André Roth f8bde63081 Merge pull request #1443 from aptly-dev/dependabot/go_modules/golang.org/x/net-0.38.0
Bump golang.org/x/net from 0.33.0 to 0.38.0
2025-05-01 12:17:14 +02:00
dependabot[bot] 887ce71005 Bump golang.org/x/net from 0.33.0 to 0.38.0
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.33.0 to 0.38.0.
- [Commits](https://github.com/golang/net/compare/v0.33.0...v0.38.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.38.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-01 09:14:39 +00:00
André Roth 87233ceafe Merge pull request #1441 from aptly-dev/dependabot/go_modules/golang.org/x/crypto-0.35.0
Bump golang.org/x/crypto from 0.31.0 to 0.35.0
2025-05-01 11:13:30 +02:00
André Roth 27c15680e8 Merge pull request #1445 from silkeh/fix-db-references
Remove corrupt package references in `db recover`
2025-05-01 10:27:42 +02:00
dependabot[bot] cb72e2d70f Bump golang.org/x/crypto from 0.31.0 to 0.35.0
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.31.0 to 0.35.0.
- [Commits](https://github.com/golang/crypto/compare/v0.31.0...v0.35.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.35.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-01 08:15:38 +00:00
André Roth 2cafbc8484 Merge pull request #1439 from aptly-dev/feature/go-1.24
go: use version 1.24
2025-05-01 10:14:27 +02:00