Open samhocevar opened 2 years ago
It works on my cygwin 3.3.4-2 on Windows 11:
$ ansible-galaxy collection install ansible.posix
Process install dependency map
Starting collection install process
Installing 'ansible.posix:1.3.0' to '/home/thelv/.ansible/collections/ansible_collections/ansible/posix'
thelv@hiyoko-hadesnuc ~
$ ls ~/.ansible/collections/ansible_collections/ansible/posix/
CHANGELOG.rst MANIFEST.json docs plugins test-requirements.txt
COPYING README.md hacking requirements.txt tests
FILES.json changelogs meta shippable.yml
Also, your test command wget -qO- https://galaxy.ansible.com/download/ansible-posix-1.3.0.tar.gz | tar xz
is working on my environment without issue too.
thelv@hiyoko-hadesnuc ~
$ wget -qO- https://galaxy.ansible.com/download/ansible-posix-1.3.0.tar.gz | tar xz
thelv@hiyoko-hadesnuc ~
$ ls
CHANGELOG.rst MANIFEST.json docs plugins shippable.yml
COPYING README.md hacking requirements.txt test-requirements.txt
FILES.json changelogs meta rustup-init.exe tests
Could you check you are using latest version of Cygwin? It seems there is no issue on collection side.
Hi @samhocevar If it is possible, can you re-confirm that according to the advice from @hiyokotaisa ?
@hiyokotaisa thank you for your valuable advice! :)
SUMMARY
The installation tarball contains symbolic links that appear before the file they link to in the archive. This makes ansible.posix uninstallable on Windows because
tar
fails to create dangling symlinks and there is no control on the order in which files appear in the tarball.There does not seem to be an easy fix. I can think of several suggestions:
--dereference
when creating the tarball)ansible-galaxy
to ignore the error (--ignore-errors
does not actually ignore the error)ISSUE TYPE
COMPONENT NAME
tests
directory)ANSIBLE VERSION
COLLECTION VERSION
I guess it’s version 1.3.0.
CONFIGURATION
OS / ENVIRONMENT
Up-to-date Windows 11, with up-to-date MSYS2 (mingw64), configured with strict native symlinks (
winsymlinks:nativestrict
).STEPS TO REPRODUCE
Just attempt to install using
ansible-galaxy collection install ansible.posix
.Or simply try to unpack the tarball:
wget -qO- https://galaxy.ansible.com/download/ansible-posix-1.3.0.tar.gz | tar xz
EXPECTED RESULTS
The tarball should unpack without errors.
ACTUAL RESULTS
Using
ansible-galaxy
:Using
tar
: