aptly icon indicating copy to clipboard operation
aptly copied to clipboard

aptly repo include not allowing multiple distributions in .changes file

Open qqjom opened this issue 5 years ago • 4 comments

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 .changes: local repo with name stretch jessie not found'

Context

Only one .changes file is needed for packages that can be installed on multiple distributions

Possible Implementation

Your Environment

qqjom avatar Jul 11 '18 14:07 qqjom

Certainly something which might be great enhancement for aptly!

smira avatar Jul 13 '18 20:07 smira

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.

nuclearsandwich avatar Sep 13 '18 05:09 nuclearsandwich

We don't have any date to commit for this feature, but it looks like really good thing to add.

smira avatar Sep 13 '18 21:09 smira

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.

nuclearsandwich avatar Sep 13 '18 21:09 nuclearsandwich