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

[BUG]: Collection does not support ansible.netcommon 5.x.y, thus latest version will not be included in Ansible 8 until this is fixed #267

Closed
felixfontein opened this issue May 20, 2023 · 4 comments · Fixed by ansible-community/ansible-build-data#245

Comments

@felixfontein
Copy link

Bug Description

Currently the Ansible 8 pre-releases contain dellemc.enterprise_sonic 2.0.0, which claims to support ansible.netcommon 5.x.y. Since ansible.netcommon 5.x.y will be included in Ansible 8, Ansible 8 cannot include dellemc.enterprise_sonic 2.1.0 since that release claims to no longer support ansible.netcommon 5.x.y.

Since apparently dellemc.enterprise_sonic 2.0.0 doesn't work with ansible.netcommon 5.x.y - but doesn't document so - Ansible 8 will stick to the broken dellemc.enterprise_sonic 2.0.0 until a later dellemc.enterprise_sonic 2.x.y. release will work with ansible.netcommon 5.x.y again.

Please make sure that your collection is compatible with ansible.netcommon 5.x.y as soon as possible.

Ref: ansible-community/ansible-build-data#233
Ref: #176 which unfortunately does not say what's the problem with ansible.netcommon 5.0.0.

Product Name

Component or Module Name

DellEMC Enterprise SONiC Ansible Collection Version

2.1.0

SONiC Software Version

Configuration

Steps to Reproduce

Expected Behavior

Actual Behavior

Logs

Screenshots

No response

Additional Information

No response

gotmax23 added a commit to gotmax23/ansible-build-data that referenced this issue May 21, 2023
dellemc.enterprise_sonic has depclosure errors. This pins it to the last
working version. Normally, we wouldn't use ==, but since 2.0.0 is the
only release in the range.

```
ERROR: found collection dependency
ERROR: dellemc.enterprise_sonic version_conflict: ansible.netcommon-5.1.1 but needs >=2.0.0,<5.0.0
```

Relates: ansible-community#233
Relates: ansible-collections/dellemc.enterprise_sonic#267
gotmax23 added a commit to gotmax23/ansible-build-data that referenced this issue May 21, 2023
dellemc.enterprise_sonic has depclosure errors. This pins it to the last
working version. We wouldn't normally use ==, but in this case, 2.0.0 is
the only release in the range.

```
ERROR: found collection dependency
ERROR: dellemc.enterprise_sonic version_conflict: ansible.netcommon-5.1.1 but needs >=2.0.0,<5.0.0
```

Relates: ansible-community#233
Relates: ansible-collections/dellemc.enterprise_sonic#267
felixfontein pushed a commit to ansible-community/ansible-build-data that referenced this issue May 21, 2023
dellemc.enterprise_sonic has depclosure errors. This pins it to the last
working version. We wouldn't normally use ==, but in this case, 2.0.0 is
the only release in the range.

```
ERROR: found collection dependency
ERROR: dellemc.enterprise_sonic version_conflict: ansible.netcommon-5.1.1 but needs >=2.0.0,<5.0.0
```

Relates: #233
Relates: ansible-collections/dellemc.enterprise_sonic#267
gotmax23 added a commit to gotmax23/ansible-build-data that referenced this issue May 21, 2023
dellemc.enterprise_sonic has depclosure errors. This pins it to the last
working version. We wouldn't normally use ==, but in this case, 2.0.0 is
the only release in the range.

```
ERROR: found collection dependency
ERROR: dellemc.enterprise_sonic version_conflict: ansible.netcommon-5.1.1 but needs >=2.0.0,<5.0.0
```

Relates: ansible-community#233
Relates: ansible-collections/dellemc.enterprise_sonic#267
gotmax23 added a commit to gotmax23/ansible-build-data that referenced this issue May 22, 2023
dellemc.enterprise_sonic has depclosure errors. This pins it to the last
working version. We wouldn't normally use ==, but in this case, 2.0.0 is
the only release in the range.

```
ERROR: found collection dependency
ERROR: dellemc.enterprise_sonic version_conflict: ansible.netcommon-5.1.1 but needs >=2.0.0,<5.0.0
```

Relates: ansible-community#233
Relates: ansible-collections/dellemc.enterprise_sonic#267
@kerry-meyer
Copy link
Collaborator

Version 5.0.0 of Ansible Netcommon contained a bug (ansible-collections/ansible.netcommon#524) caused by accidentally overwriting a necessary instruction. This bug rendered the httpapi connection method used by most of the resource modules in the enterprise_sonic Ansible collection inoperable. We implemented a workaround using the netcommon dependency statement in our "galaxy.yml" file to allow us to continue using our collection while awaiting a fix. Although a fix for the bug was committed with "ansible-collections/ansible.netcommon#523", no new tag was applied to the Netcommon repo until a month later, and we didn't notice this new tagging until recently.

Now that we know about the new tags (5.1.0 and 5.1.1) on the Netcommon repo, we will merge a fix a soon as possible to enable installation of Netcommon versions after 5.0.0.

@kerry-meyer kerry-meyer mentioned this issue May 31, 2023
11 tasks
@felixfontein
Copy link
Author

If there is a known bad version and you know that the next release will contain a bugfix which will solve the problem, you can also modify the dependency range by excluding that specific version:

dependencies: 
  "ansible.netcommon": ">=2.0.0,!=5.0.0"

This will avoid installing your collection with ansible.netcommon 5.0.0, but will allow installing it with 5.0.1, 5.1.0, etc.

This works with the old collection dependency resolver in ansible-base 2.10 and Ansible 2.9 (https://github.com/ansible/ansible/blob/stable-2.9/lib/ansible/galaxy/collection.py#L212), and also with the new one in ansible-core 2.11+ (ansible/ansible#72678).

@kerry-meyer
Copy link
Collaborator

Thanks for this information. If we encounter a similar situation in the future, we will handle it this way.

We have completed a 2.2.0 release to address the problem described in this Issue. The 2.2.0 release has been published to Github and to Ansible Galaxy.

We will leave this issue open for a few days to give the submitter time to verify the fixed release.

If everything looks okay, please close this issue.

@kerry-meyer
Copy link
Collaborator

Thanks for verifying that this fix is compliant.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants