Commit Graph

2748 Commits

Author SHA1 Message Date
Pierig Le Saux fbad25e2b5 fix: add jfrog parameters to default config generation test 2026-06-18 18:18:31 +02:00
Pierig Le Saux 041eeff67d test: update ConfigShowTest_gold with JFrogPublishEndpoints 2026-06-18 18:18:31 +02:00
Pierig Le Saux 6244747912 chore: fix flake8 linting errors in jfrog test wrappers 2026-06-18 18:18:31 +02:00
André Roth b28daa8417 initial commit for JFrog support
# Conflicts:
#	api/api_test.go
#	api/router.go
#	go.mod
#	go.sum
#	utils/config_test.go
2026-06-18 18:18:31 +02:00
Pierig Le Saux 214c151194 fix: resolve golangci-lint failures in jfrog storage implementation
- Remove unused pathCache field from PublishedStorage struct
- Remove unused md5s accumulation in Filelist()
- Fix unchecked error return on expectedOut.Write in config_test.go
- Suppress unused linter on configFileYAML/configFileYAMLError constants
  (retained to avoid merge conflicts with feat/pls/gcs-support)
- Add --timeout=10m to golangci-lint workflow
- add back removed tests
2026-06-18 18:18:31 +02:00
Pierig Le Saux 4b8f0c42ac initial commit for JFrog support 2026-06-18 13:38:03 +02:00
André Roth 8ebe80f066 Merge pull request #1550 from linuxdataflow/feat/pls/gcs-support
Add support for GCS.
2026-06-18 09:33:48 +02:00
Pierig Le Saux b0c65112cb another lint fix + timeout 2026-06-17 23:39:27 +02:00
Pierig Le Saux 46e9ac65fa missed some files for tests 2026-06-17 23:39:27 +02:00
Pierig Le Saux a2fb925a94 fix golangci ? not too sure what's going on here 2026-06-17 23:39:27 +02:00
Pierig Le Saux b4a171b3ea gcs: pin fake-gcs-server to v1.53.1, restore go 1.24 directive 2026-06-17 23:39:27 +02:00
Pierig Le Saux 83b1c1b6cb gcs: add fake-gcs-server test suite, raise coverage 2026-06-17 23:39:27 +02:00
André Roth 7dd5c34254 go: mod tidy 2026-06-17 23:39:27 +02:00
Pierig Le Saux e04df59065 Sync GCS config goldens with publish endpoint changes 2026-06-17 23:39:27 +02:00
Pierig Le Saux c02c469fa6 feat(gcs): implement GCS publish endpoint support and update config/show/system tests 2026-06-17 23:39:27 +02:00
Pierig Le Saux d5fbf0f795 feat: add GCS publish backend with config, API, docs, and tests 2026-06-17 23:39:27 +02:00
Pierig Le Saux ed4af9a0f6 add support for gcs 2026-06-17 23:39:26 +02:00
André Roth 9bb8de68d0 Merge pull request #1436 from benallard/dput_api
Add API endpoint suitable for dput.
2026-06-17 23:31:04 +02:00
André Roth 00e75ebf3c test(dput): add system test for PUT /api/files/:dir/:file via dput 2026-06-17 21:29:06 +02:00
André Roth c2b0379e91 docs(dput): add missing @Router swagger annotation to apiFilesUploadOne 2026-06-17 21:29:06 +02:00
André Roth 84a5c20abe fix(dput): call syncFile to surface ENOSPC on upload 2026-06-17 21:29:06 +02:00
André Roth d3a613c335 fix(dput): replace manual read loop with io.Copy 2026-06-17 21:29:06 +02:00
André Roth 4e4ca0f38e fix(dput): validate :file path param to prevent directory traversal 2026-06-17 21:29:06 +02:00
Benoît Allard 12390f102e Add API endpoint suitable for dput. 2026-06-17 21:29:06 +02:00
André Roth 1224708283 Merge pull request #1583 from aptly-dev/docs/integrations/jenny
Fix mistake translation documentation integration
2026-06-17 21:14:26 +02:00
André Roth 1c1de6564b Merge pull request #1574 from aptly-dev/fix/task-race
Fix concurrent API race conditions
2026-06-17 18:53:16 +02:00
Clément 9c121c8111 english 2026-06-16 10:47:31 +02:00
André Roth 2605dd24f5 Merge pull request #1579 from aptly-dev/docs/integrations/jenny
Add Integration links : Jenny, an APT repository manager based on aptly
2026-06-16 09:24:52 +02:00
Clément 781eaff397 french language 2026-06-15 13:36:24 +02:00
Clément 33c06b1b4a Add description 2026-06-15 13:34:01 +02:00
André Roth caed9c234d publish: support MultiDist toggle 2026-06-13 14:48:01 +02:00
André Roth af1df410a2 tasks: fix race conditions
* show resources in task details
* fix task state locking
* return task object consistently

Race condition iexisted where task State, err, and processReturnValue fields
were written by consumer goroutine and read by concurrent accessors without
proper synchronization, causing torn reads and data races.
2026-06-13 14:47:58 +02:00
André Roth dfa34157a0 mirror: fix race conditions
* load data inside background tasks
  Perform collection.LoadComplete inside maybeRunTaskInBackground
  Have tasks use a fresh copy of taskCollectionFactory, taskCollection
2026-06-13 14:47:58 +02:00
André Roth 722064363c snapshot: fix race conditions
* perform collection.LoadComplete inside maybeRunTaskInBackground
 * have tasks use a fresh copy of taskCollectionFactory, taskCollection
 * fix locking for snapshots of snapshots by locking SourceSnapshots
 * use uuids, since names can be renamed
2026-06-13 14:47:58 +02:00
André Roth 9771f228bc repos: fix race conditions
* load data inside background tasks
  Perform collection.LoadComplete inside maybeRunTaskInBackground
  Have tasks use a fresh copy of taskCollectionFactory, taskCollection
* use uuids, since names can be renamed
2026-06-13 14:47:58 +02:00
André Roth 6ee51b6454 publish: fix race conditions
* remove useless resource lock
  Resource locks need to be before the background task. creating same publish endpoint at the same time is unlikely...
* load data inside background tasks
  This fixes a flaw in async apis, which loaded the published repo from the DB and mutated it outside the task closure, before the task lock was acquired.
  Perform collection.LoadComplete inside maybeRunTaskInBackground and have tasks use a fresh copy of taskCollectionFactory, taskCollection
* lock source repos/snapshots for publish operations
  Concurrent tasks were not properly locking their resources, leading to inconsistent published indexes:
  SourceLocalRepo: iterate published.Sources (component -> source UUID), look up each local repo via localRepoCollection.ByUUID and append string(repo.Key()) to resources
  SourceSnapshot: iterate b.Snapshots,look up each snapshot via snapshotCollection.ByName and append string(snapshot.ResourceKey()) to resources.
* lock pool on non MultiDist publish
* revert mutex on LinkFromPool
* use uuids, since names can be renamed
* add test for MultiDist change
2026-06-13 14:47:40 +02:00
Clément ab150890cb Add jenny by group edf links 2026-06-09 09:53:21 +02:00
André Roth 2974558aa7 cleanup 2026-06-07 23:46:43 +02:00
André Roth 00773f9840 ci: update codecov-action to 7.0.0 2026-06-07 22:53:09 +02:00
André Roth 8dc61cf362 ci: use correct ubuntu 26.04 codename 2026-05-17 10:16:01 +02:00
André Roth 4a9ddbdc34 Merge pull request #1565 from muresan/fix/aptly-crash-db-recover
Crash in aptly db recover
2026-05-15 16:51:51 +02:00
André Roth c316ea9b73 Merge pull request #1567 from aptly-dev/fix/doc-typos
docs: fix typos
2026-05-15 16:49:14 +02:00
André Roth d027a251ba Merge pull request #1571 from aptly-dev/feature/ubu26.04
ci: build for ubuntu 26.04
2026-05-15 16:48:55 +02:00
André Roth 16b6348710 ci: build for ubuntu 26.04 2026-05-15 00:05:35 +02:00
Catalin Muresan 1c1abe6b10 Added tests to please codeconv 2026-05-14 23:33:27 +02:00
Catalin Muresan c4bfbe52ca Fix crash in aptly db recover 2026-05-14 23:33:27 +02:00
André Roth c723fea807 docs: fix typos 2026-05-04 11:35:55 +02:00
André Roth 0d31298f37 Merge pull request #1568 from aptly-dev/fix/launchpad-test-dependency
Fix/launchpad test dependency
2026-05-04 11:30:56 +02:00
André Roth bba6bd7db5 system tests: do not depend on launchpad.net 2026-05-04 11:05:04 +02:00
André Roth faeaad0378 config: allow setting PPA Base URL 2026-05-04 11:05:04 +02:00