-
Notifications
You must be signed in to change notification settings - Fork 7
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
Bump to ansible 2.4 #10
Conversation
To get the various repos green, I'm currently testing with a fresh virtualenv that's only had
but for completeness
|
The circular dependency here is going to hurt. I need to bump versions in ome/ansible-role-basedeps#4 to have travis do the proper verification. Time to split the meta package from this testing package? |
Discussed today at the SA meeting. To some extent, we always know we need to fix this circular dependency at some point so no fundamental objection. Without too much tought it seems we could go with a structure like:
Would the activation of the cron job across all individual role repos (barring the issues of automating this activation and the setup for new repos) make the downstream testing repo redundant or is it still valuable to have it typically to test an upstream dependency change across all roles? Side comment, if we are adding |
👎 to including openstack modules by default in this, it brings in large number of deps. I'd support making it optional though, e.g. https://github.com/celery/celery/tree/v4.1.0#bundles |
Cheers, @sbesson |
Following up on this, I tried to prototype the solution discussed in #10 (comment) following the examples of the recent integration repositories i.e.
I propose to discuss the next steps here tomorrow at the SA meeting. A couple of initial points of discussion:
|
Conflicting PR. Removed from build ANSIBLE-merge#433. See the console output for more details.
|
@sbesson : what do you want to do with this PR now that it's conflicting? |
@joshmoore I think I have made almost all the progress we need for resurrecting this effort:
I would propose to fix the conflict here, restrict this PR to the |
Updated as suggested, @sbesson, and travis is green. |
@@ -68,8 +68,12 @@ | |||
# requirements files see: | |||
# https://packaging.python.org/en/latest/requirements.html | |||
install_requires=[ | |||
'molecule==1.25.1', | |||
'ansible==2.3.2', | |||
'ansible==2.4', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As per the Python semantics, this will install 2.4.0.0
. Do we want ansible==2.4.6
or ansible<2.4
?
'docker', | ||
'docker-py', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you rememebr why this dependency is required? I briefly looked into the state of the opened molecule v2 PRs with Ansible 2.5/2.6 following the discussion in ome/ansible-role-basedeps#5 (comment). However the initial destroy
phase failed with ansible/molecule#1384. After removing docker-py
from setup.py
and re-installing this meta-package, as suggested in the issue and by the output of molecule --debug test
, the tests passed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From what I remember it was a mess due to breaking changes between docker and docker-py, we definitely shouldn't have both. It'll need testing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't remember what else, but docker-py is certainly critical for docker-compose integration.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed docker
seems to be a full rewrite of docker-py
and both packages certainly incompatible changes.
Looking at the requirements of docker-compose
and various issues includes ansible/molecule#1347, ansible/ansible#22993:
docker-compose
nows declaresdocker
as a dependency instead ofdocker-py
since 2.10.0- the Ansible Docker module used to recommend
docker-py
as a dependency. Recent Ansible versions seem to have included full support fordocker
and docker scenario guide: docker-py -> docker ansible/ansible#44856 is updating the official doc accordingly.
Switching to docker
across the board sounds like the long-term option anyways. For this PR, I wonder whether the decision here is related to the targetted version of Ansible ome/ansible-role-basedeps#5 (comment). If we decide to go for Ansible 2.6, docker
should work both for compose
and the ansible
Docker modules. If we stick to Ansible 2.4, it might be that docker-py
is the best choice.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The following combinations work on travis with idr/deployment IDR/deployment#135
- ansible==2.5.9 docker-py==1.10.6 molecule==2.18.0
- ansible==2.6.4 docker-py==1.10.6 molecule==2.18.0
- ansible==2.6.4 docker==3.5.0 molecule==2.18.0
As per #10 (comment), the new proposed target is ansible 2.6/docker 3.5.0 although we might come back to this is this leads to instabilities. |
Migrate OME resources to Ansible 2.4. Requires updating the molecule tests in all repositories.