debian-forge/tools
Achilleas Koutsou 9552ba0fc1 tools/osbuild-depsolve-dnf: return repositories in response
When generating package sources and rpm stage metadata for a manifest
from a list of packages, we need to associate repository configuration
options to each package [1].  Previously, a caller had all the
repository configurations because they were part of the request, so
packages could be associated with all the repository options by the
repository ID.  Now, osbuild-depsolve-dnf will use repositories loaded
from a directory that the caller shouldn't have to read, so returning
all repository configurations in the response makes it possible to
get all package metadata from the response.

This changes the whole structure of the response to a depsolve request.
Previously, we returned an array of packages.  Now we return an object
with two keys:
- packages: the array of packages as before
- repositories: an object mapping repository IDs to repository
  configurations.

Each package contains the repository ID it comes from (as before), under
`repo_id`.  This can be used to get repository configurations and
determine gpg keys and SSL certs for each package.

The new structure avoids duplicating values across all the (sometimes
hundreds) of packages.

[1] 92497c7b1f/pkg/dnfjson/dnfjson.go (L499-L507)
2024-04-10 16:22:13 -07:00
..
check-runners tools: add "tools" dir to LINTABLES and fix issues 2023-11-13 10:10:12 +01:00
check-snapshots check-snapshots: add log info when a download fails 2024-02-20 14:52:23 -08:00
gen-stage-test-diff tools: make gen-stage-test-diff pylint clean 2024-02-20 14:52:23 -08:00
inline-source.py tools: add inline-source.py 2021-05-12 14:26:16 +02:00
lorax-template-pkgs.py osbuild: run isort on all files 2022-09-12 13:32:51 +02:00
osbuild mpp: combine depsolve and import into mpp.py 2021-06-30 20:26:07 +01:00
osbuild-depsolve-dnf tools/osbuild-depsolve-dnf: return repositories in response 2024-04-10 16:22:13 -07:00
osbuild-depsolve-dnf5 tools: make osbuild-depsolve-dnf5 pylint clean 2024-02-20 14:52:23 -08:00
osbuild-dev lint: explicit check 2024-03-05 16:10:27 +01:00
osbuild-json-seq-progress-example-renderer tools: add example json-seq render based on tqdm 2024-03-12 16:44:12 +01:00
osbuild-mpp osbuild-mpp: Expend information in PkgInfo 2024-04-03 10:29:49 +02:00
set-env-variables.sh tools: add set-env-variables.sh 2022-04-13 14:57:27 +02:00
tree-diff tools/tree-diff: make its output stable 2023-08-08 12:41:17 +02:00