Project

Profile

Help

Story #5251

closed

Dependency Downloading for Ansible Collection sync

Added by sajha over 4 years ago. Updated over 2 years ago.

Status:
CLOSED - DUPLICATE
Priority:
Normal
Assignee:
-
Sprint/Milestone:
-
Start date:
Due date:
% Done:

0%

Estimated time:
Platform Release:
Groomed:
No
Sprint Candidate:
No
Tags:
Katello
Sprint:
Quarter:

Description

Ticket moved to GitHub: "pulp/pulp_ansible/685":https://github.com/pulp/pulp_ansible/issues/685


Dependency Downloading when syncing collections:

When syncing a collection, we would like to have the collections listed as dependencies to be synced into the repository as well.
Example: https://docs.ansible.com/ansible/devel/dev_guide/collections_galaxy_meta.html#examples

For a collection to be synced, having the below dependencies:

dependencies:
    "other_namespace.collection1": ">=1.0.0"
    "other_namespace.collection2": ">=2.0.0,<3.0.0"
    "anderson55.my_collection": "*"    # note: "*" selects the highest version available

The 3 listed collections should also get synced when syncing the collection.

Actions #1

Updated by sajha over 4 years ago

  • Tags Katello-P2 added
Actions #2

Updated by bmbouter over 4 years ago

Can the user disable this as an option? I'm hoping so. What would the option be called sync_dependencies? Is there a better name? Also does it default to on or off?

Actions #3

Updated by jsherril@redhat.com over 4 years ago

I think making it optional is fine, and defaulting to off is fine too!

Actions #4

Updated by daviddavis over 4 years ago

Regarding name. What's the option called when copying content over in pulp_rpm with dependencies?

Actions #6

Updated by rchan over 4 years ago

Let's definitely discuss. This was an open item to discuss later, but I thought we were going with an include/exclude list rather than dependency solving for the initial feature.

Actions #7

Updated by bmbouter over 4 years ago

@daviddavis pulp2 uses these override_config booleans named recursive and revursive_conservative. I got that info from here: https://docs.pulpproject.org/plugins/pulp_rpm/user-guide/features.html#rpm-dependencies

rchan, jsherrill raised the issue on IRC that whitelisting the packages of interest will leave them uninstallable due to missing dependencies. After some IRC discussion in #pulp-ansible this was filed.

Actions #8

Updated by bmbouter over 4 years ago

  • Subject changed from Dependency Solving for Ansible Collection sync to Dependency Downloading for Ansible Collection sync
  • Description updated (diff)

This should be called 'Dependency Downloading' instead of 'Dependency Solving'.

Actions #9

Updated by rchan over 4 years ago

bmbouter - thanks for the clarification. Understanding that other Ansible software also supports strict enforcement of dependencies being available was helpful. Sounds like this tracker covers just recursive_conservative and only for downloading/sync and not repo copy use case. My main concern was scope and effort involved (as dependency solving for all cases in RPM connotes a very large effort.) I now understand that this functionality would keep this behavior consistent with Ansible Automation Hub and a better experience for the end user without requiring efforts similar to RPM "depsolving" or being inconsistent with Ansible treatment of dependencies.

Actions #10

Updated by bmbouter over 4 years ago

rchan wrote:

bmbouter - thanks for the clarification. Understanding that other Ansible software also supports strict enforcement of dependencies being available was helpful. Sounds like this tracker covers just recursive_conservative and only for downloading/sync and not repo copy use case. My main concern was scope and effort involved (as dependency solving for all cases in RPM connotes a very large effort.) I now understand that this functionality would keep this behavior consistent with Ansible Automation Hub and a better experience for the end user without requiring efforts similar to RPM "depsolving" or being inconsistent with Ansible treatment of dependencies.

This makes sense with the language I was using (the RPM language). Thanks for asking and following up.

Actions #11

Updated by ggainey almost 4 years ago

  • Tags Katello added
  • Tags deleted (Katello-P2)
Actions #12

Updated by pulpbot over 2 years ago

  • Description updated (diff)
  • Status changed from NEW to CLOSED - DUPLICATE

Also available in: Atom PDF