Skip to content
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

Make various release file fields user configurable #449

Closed
quba42 opened this issue Mar 7, 2022 · 6 comments · Fixed by #782
Closed

Make various release file fields user configurable #449

quba42 opened this issue Mar 7, 2022 · 6 comments · Fixed by #782
Labels
.feature CHANGES/<issue_number>.feature Triage-Needed

Comments

@quba42
Copy link
Collaborator

quba42 commented Mar 7, 2022

Is your feature request related to a problem? Please describe.

This feature is intended to provide a long term solution for #443 while also empowering users to use pulp_deb repos in combination with "APT pinning" and "unattended upgrade" workflows.

Describe the solution you'd like

  • The upstream Origin, Label, and Version fields should be stored on the release content during sync (if present).
  • Users should be able to define their own Origin, Label, and Version values on repositories and/or publications.
  • User supplied values trump upstream repo values during publish

If possible, consider the possibility of respecting arbitrary upstream and user supplied release file fields?

Additional context

#443 Should provide a backportable bugfix solution for the same problem, while this ticket provides a new design approach as a long term solution.

quba42 added a commit that referenced this issue Mar 7, 2022
Closes #443

This is a quick and dirty workaround to prevent apt-secure from
constantly requiering users to run the following:

apt-get update --allow-releaseinfo-change

This fix changes the pulp_deb publication behaviour. To mitigate, the
old behaviour can be renabled by setting SET_RELEASE_FILE_LABEL and
SET_RELEASE_FILE_VERSION to True.

For a long term fix, additional new features and behaviour changes are
now planned: #449
@quba42
Copy link
Collaborator Author

quba42 commented Jul 6, 2022

The title of this ticket remains as valid as ever, but the proposed implementation requires significant rethink!

@quba42
Copy link
Collaborator Author

quba42 commented Jul 6, 2022

Description is another Release file field that should be considered as part of this issue.

@mikalstill
Copy link

@quba42, I'd be happy to take a swing at this one (I am already looking for a starter project to contribute to this plugin), but it is not clear to me from your comment why the design needs a rethink. Is there further information available somewhere else for that?

@quba42
Copy link
Collaborator Author

quba42 commented Aug 2, 2022

@mikalstill I am afraid, I don't always keep the pulp_deb GitHub issues fully up to date (it's on my todo list), because we also use an internal issue tracker in addition to this one. "The design issues" I allude to in this thread are not reflected in an issue right now (I will open one today and link it from this thread). The short version as relates to this issue, is that we no longer want to store any additional fields on the Release model. It would probably be safe/fine, to just store them on the ReleaseFile model instead though, so that would not be a big difference for how to implement this issue.

@quba42
Copy link
Collaborator Author

quba42 commented Aug 2, 2022

Note: I have now added an issue for the above mentioned "design issues": #599

daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 15, 2022
Also create a `PRESERVE_EXTRA_RELEASE_FIELDS` setting that will set
these fields during sync. Defaults to False to preserve backwards
compatibility.

fixes pulp#449
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 15, 2022
Also create a `PRESERVE_EXTRA_RELEASE_FIELDS` setting that will set
these fields during sync. Defaults to False to preserve backwards
compatibility.

fixes pulp#449
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 15, 2022
Also create a `PRESERVE_EXTRA_RELEASE_FIELDS` setting that will set
these fields during sync. Defaults to False to preserve backwards
compatibility.

fixes pulp#449
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 15, 2022
Also create a `PRESERVE_EXTRA_RELEASE_FIELDS` setting that will set
these fields during sync. Defaults to False to preserve backwards
compatibility.

fixes pulp#449
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 15, 2022
Also set `repo_key_fields` on Release and ReleaseFile to ensure that if
new Releases get created (due to the new fields that will get set), they
won't duplicate old Releases in Repo Versions that got created before
without version, origin, etc.

fixes pulp#449
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 17, 2022
Also set `repo_key_fields` on Release and ReleaseFile to ensure that if
new Releases get created (due to the new fields that will get set), they
won't duplicate old Releases in Repo Versions that got created before
without version, origin, etc.

fixes pulp#449
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 17, 2022
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 17, 2022
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 17, 2022
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 17, 2022
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 18, 2022
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Oct 18, 2022
@eman-koch
Copy link

I upvote this. In our scenario we would like to have all mirrored repositories in pulp made available to the system and then differ what to install with pin-priorities through apt preferences. This makes it easier to manage the systems for us but results in the possibility that we sometimes have 2 or 3 repositories with different versions active, let's take the example with mariadb:

image

We can't use the filters for neither release/origin as it's the same and thus we would prioritize all repos at the same time. If we can set our own origin or label it would be easy to have this solved.

daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 26, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 26, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 26, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 26, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 26, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 26, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 26, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 26, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 28, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 28, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue Apr 28, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue May 1, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue May 1, 2023
daviddavis added a commit to daviddavis/pulp_deb that referenced this issue May 1, 2023
quba42 pushed a commit to ATIX-AG/pulp_deb that referenced this issue May 11, 2023
quba42 pushed a commit to ATIX-AG/pulp_deb that referenced this issue Jun 1, 2023
quba42 added a commit to ATIX-AG/pulp_deb that referenced this issue Jun 1, 2023
[noissue]

This reverts commit a0bead2.

Together with issue pulp#449 this implies the Release file Label and Version
fields now use values as synced from the upstream Release file if
present. We plan to re-add an option to not publish these fields at all
(default behaviour since at least pulp_deb 2.18.0), but there will be
no way to go back to the problematic internal values used pre 2.18.0 or
when the PUBLISH_RELEASE_FILE_* settings were set to True.
quba42 added a commit to ATIX-AG/pulp_deb that referenced this issue Jun 1, 2023
[noissue]

This reverts commit a0bead2.

Together with issue pulp#449 this implies the Release file Label and Version
fields now use values as synced from the upstream Release file if
present. We plan to re-add an option to not publish these fields at all
(default behaviour since at least pulp_deb 2.18.0), but there will be
no way to go back to the problematic internal values used pre 2.18.0 or
when the PUBLISH_RELEASE_FILE_* settings were set to True.
quba42 pushed a commit to ATIX-AG/pulp_deb that referenced this issue Jun 1, 2023
quba42 added a commit to ATIX-AG/pulp_deb that referenced this issue Jun 5, 2023
[noissue]

This reverts commit a0bead2.

Together with issue pulp#449 this implies the Release file Label and Version
fields now use values as synced from the upstream Release file if
present. We plan to re-add an option to not publish these fields at all
(default behaviour since at least pulp_deb 2.18.0), but there will be
no way to go back to the problematic internal values used pre 2.18.0 or
when the PUBLISH_RELEASE_FILE_* settings were set to True.
quba42 pushed a commit to ATIX-AG/pulp_deb that referenced this issue Jun 5, 2023
fixes pulp#449

Co-author: Quirin Pamp <pamp@atix.de>
quba42 pushed a commit to ATIX-AG/pulp_deb that referenced this issue Jun 5, 2023
fixes pulp#449

Co-author: Quirin Pamp <pamp@atix.de>
quba42 added a commit to ATIX-AG/pulp_deb that referenced this issue Jun 5, 2023
[noissue]

This reverts commit a0bead2.

Together with issue pulp#449 this implies the Release file Label and Version
fields now use values as synced from the upstream Release file if
present. We plan to re-add an option to not publish these fields at all
(default behaviour since at least pulp_deb 2.18.0), but there will be
no way to go back to the problematic internal values used pre 2.18.0 or
when the PUBLISH_RELEASE_FILE_* settings were set to True.
quba42 pushed a commit to ATIX-AG/pulp_deb that referenced this issue Jun 5, 2023
fixes pulp#449

Co-author: Quirin Pamp <pamp@atix.de>
adamsanaglo pushed a commit to adamsanaglo/pulp_deb that referenced this issue Jul 20, 2023
[noissue]

This reverts commit a0bead2.

Together with issue pulp#449 this implies the Release file Label and Version
fields now use values as synced from the upstream Release file if
present. We plan to re-add an option to not publish these fields at all
(default behaviour since at least pulp_deb 2.18.0), but there will be
no way to go back to the problematic internal values used pre 2.18.0 or
when the PUBLISH_RELEASE_FILE_* settings were set to True.
adamsanaglo pushed a commit to adamsanaglo/pulp_deb that referenced this issue Jul 20, 2023
fixes pulp#449

Co-author: Quirin Pamp <pamp@atix.de>
@quba42 quba42 added .feature CHANGES/<issue_number>.feature and removed Feature labels Aug 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
.feature CHANGES/<issue_number>.feature Triage-Needed
Projects
None yet
3 participants