-
Notifications
You must be signed in to change notification settings - Fork 132
ansible-lint v5 now requires ansible? #45
Comments
also if there was a prebuilt ansible-lint-action ( #36 ) this would have been mitigated I suppose, because the prebuilt image would be used instead of using the latest every time. |
attempted workaround for ansible#45
Thanks for the report! The workaround could be using |
Merged. If you look at the README, it already has this example: - name: Lint Ansible Playbook
uses: ansible/ansible-lint-action@master
with:
override-deps: |
ansible==2.9
ansible-lint==4.2.0 |
@webknjaz I was just trying that when I saw you merged. hey, would you consider tagging a release of |
i see other actions (checkout, etc) make a But just a numeric tag would be fine too so i dont have to include a specific commit |
OK this is working for me: - name: Lint Ansible Playbook
uses: ansible/ansible-lint-action@c37fb7b4bda2c8cb18f4942716bae9f11b0dc9bc |
The security considerations of versioning are virtually unsolved in the GitHub Actions ecosystem. GitHub showcases and promotes bad practices in this regard, unfortunately. I recommend that you, as a user, not trust any tag-based or branch-based versioning in GHA and always use commit SHA. Of course, you may rely on some trusted repos like the ones GitHub maintains but nothing else. People tend to forget that tags are floating pointers to an arbitrary repo revision just as much as branches. And the end-users who rely on things like To make it a bit more illustrative:
Now, I understand that we're on the maintenance side of the problem but nevertheless, I think it's wrong to support GH in spreading these unsecured practices. This is why I'm still looking into a more sustainable solution. Another problem is that tags are supposed to be immutable but there's nothing in Git enforcing this so GitHub basically abuses the original purpose of tags by keeping to force-push them. This is something that contributes against traceability as demonstrated above. I'm looking for better solutions in another project that would at least keep the tags immutable on our side (pypa/gh-action-pypi-publish#45). That's why I ended up postponing tagging things... |
@webknjaz fair enough… |
Closing as we already have v6 on main and soon also add a tag for it. |
as of ansible/ansible-lint#1316 (merged yesterday?) version https://github.com/ansible-community/ansible-lint/releases/tag/v5.0.0 ( released 3 hours ago) it seems that
ansible-lint
now requires ansible to be installed ( see release notes under the v5.0.0 tag)This completely breaks ansible-lint-action.
Might be good enough to somehow change the Dockerfile to
pip install
a pre-5.0 version ofansible-lint
for now… Or just addansible
to the Dockerfile.However, in general, it seems like it's not a good idea to just include the 'latest' ansible-lint without any restriction, because breakage like this will happen. We saw build failures from 3 hours ago when 5.0 of ansible-lint dropped.
The text was updated successfully, but these errors were encountered: