Do not pull Ansible Galaxy dependencies #7548
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
SUMMARY
We recently had a case where because of ansible galaxy collections listed as dependencies inside a collection, agnosticd replaced the collections already installed inside the Execution Environment (EE) image.
For example, if you add
ansible.workshops
inansible/config/.../requirements.yml
, you getamazon.aws
version 3.1.1 instead of version 6.x that is normally included with the EE.This occurs because the
ansible.workshops
collection specifies version 3.1.1 in itsgalaxy.yml
file, as seen here: https://github.com/ansible/workshops/blob/devel/galaxy.yml#L56That by-pass our process that ensures collections already installed in the EE are not overridden.
This is going to cause unpredictable issues and will be very hard to troubleshoot when it happens because the symptoms could be anything.
I think we want the list of dependencies to be exhaustive in the requirements.yml of the agnosticd config/.
I suggest we don't pull dependencies automatically.
This change will potentially break some deployment and will require to fix the
requirements.yml
and explicitly add the required galaxy collections.ISSUE TYPE
COMPONENT NAME
agnosticd core