-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add option to publish using "No-Support-for-Architecture-all: Packages" repo format #447
Comments
I also need this to be added. Not having a way to combine "all" and "amd64" architecture packages breaks specific bootstrap installer that I rely on, specifically the diskimage-builder ubuntu-minimal stuff here: https://docs.openstack.org/diskimage-builder/latest/elements/ubuntu-minimal/README.html |
@akulakhan Can you explain what exact version of Ubuntu software and what exact commands do not work as expected? In the meantime, you could probably still work around the problem by using the "verbatim publisher", which publishes the repo that you synced exactly as it was (including all metadata and signatures). |
Provided a log for the failure. The issue occurs during the
Note that I have tried using the verbatim publisher, however this doesn't work for me since it seems to have various issues. Not the least of which is that it doesn't support translation files. In the workflows I must support, I do not have control over every client to disable fetching of these files, and therefore the builds fail. In the meantime I am simply pointing these builds to use the pulp 2 instance which I will maintain until pulp 3 supports this. Also, I have monitored the nginx logs on the pulp3 server to confirm that this process is only grabbing the amd64 package index, which does not contain the missing packages since they are "all" architecture. (gnupg2, for example) |
@quba42 do you have any idea when this might be fixed or if it's on the roadmap at all? I am presently having to maintain both a pulp 2 and pulp 3 server as a result of this issue, and it would be nice to have an end of life estimation for the former. |
Anyone have any update on whether this is on the roadmap? |
Having discussed this issue internally, I am afraid it has not currently made it onto our roadmap, since none of our use cases are currently hitting this as a problem and we don't have the time to work on it. If any external contributors do want to have a go at it, I can give some pointers (I don't think this would be that hard to implement). |
I can look into implementing it, any pointers would be helpful. |
@akulakhan I guess the place for specifying the option, perhaps named
But that is just a rough draft off the top of my head and some of those variables are currently not available in that function. The basic Idea is: "if we have an architecture all package it needs to be added to every package index, and not just the all index". You do have one other option that does not involve coding a new pulp_deb feature: You could try using the verbatim publisher instead of the APT publisher, to just mirror the upstream repo you are trying to use exactly. |
Thanks for the info. I have tried the verbatim publisher but it does not work in this case since the systems consuming it will fail if the language packages aren't available. These are static/released images that must be supported without changes, so there is no option to make changes on the client side to work around this, unfortunately. I will take a crack at implementing this feature at some point soon. |
I am afraid I have more bad news here: pulp_deb currently ignores all language files during the sync (if it synced them, then the verbatim publisher would publish them). It looks like pulp_deb won't be usable for your use case without some significant further development. We do have the long term goal of making pulp_deb sync absolutely every type of file that can exist in an upstream repo, and then mirroring those files exactly as they were via the verbatim publisher. However, due to resource constraints, this is more a long term goal than an actual roadmap at this point. |
Actually I may have been overly pessimistic with the language files. It is plausible that with verbatim publisher the upstream Release files will advertise language files, that are actually missing, prompting the clients to complain. When using the APT publisher, the language files will also be missing, but they also won't be advertised as present in the Release file, so the clients might be fine with that. In that case all you would need is the "No-Support-for-Architecture-all: Packages" mode described by this issue. The only way to be 100% certain though would be to implement this issue and then test. |
Currently pulp_deb always publishes only separate Architecture = all package indices. This is considered the best practice format, but it is not a format used by any official Debian repos. Instead those use the
No-Support-for-Architecture-all: Packages
format for more backwards compatibility (for example for Debian bullseye).I consider it dangerous to exclusively use a format not used by anyone in the wild.
The proposal would be to add a option to publish in the "No-Support-for-Architecture-all: Packages" style.
The text was updated successfully, but these errors were encountered: