aptly
aptly copied to clipboard
aptly repo include not allowing multiple distributions in .changes file
Detailed Description
aptly repo include does not allow multiple distributions in one .changes file.
According to the deb-changes documentation, the 'Distribution field in a .changes
file can contain one or more space-separated distributions where the version should
be installed.
When I have .changes file with multiple distributions like:
Distributions: stretch jessie
and try to upload it int the repo's with aptly repo include , I get
'unable to process file
Context
Only one .changes file is needed for packages that can be installed on multiple distributions
Possible Implementation
Your Environment
Certainly something which might be great enhancement for aptly!
Is there any work in progress on this enhancement? My team need this feature to migrate a few repositories from reprepro without breaking our existing pipeline tools.
I've only just started reading the aptly source so I don't have a a good idea how to structure it but in an ideal situation I'd be able to use {{.Distribution}} in the repo name template and have it be invoked once per distribution. So the command
aptly repo include -repo 'myrepo-{{.Distribution}}' path/to/incoming
with a .changes file containing the stanza Distribution: stretch jessie
would execute the template once for each individual distribution.
Which I think means working on deb.ImportChangesFiles
to handle cases where Distribution is compound differently from when it is singular.
If that's not tenable then I'll need to figure out how to determine if I can restructure my repositories so that one repository holds all distributions and then work on a different area of the aptly source to support the compound Distribution value and include changes into multiple distributions of the same repository.
Thanks in advance for your input and thanks after the fact for aptly which has been quick to pick up.
We don't have any date to commit for this feature, but it looks like really good thing to add.
I'm interested in contributing this feature and made some comments about a possible approach above.
Because I was under time pressure to migrate our repositories I am using this bash function which takes in compound changes files and generates one changes file per distribution to pre-process unsigned files before running aptly repo include ...
. That may be part of a useful workaround for anyone else who needs this while the feature is in development.