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

CLI-1403: Some symlinks broken symlinks are wrongly present in artifact #1799

Open
regilero opened this issue Sep 18, 2024 · 0 comments
Open
Labels
bug Something isn't working

Comments

@regilero
Copy link

Description

  • Symlinks to tracked directories and files but present in untracked directories are kept, while the directory is clearly expected to be removed from the artifact
  • Broken Symlinks are kept in tracked folders but also in untracked folders.

By untracked folder I mean a folder excluded in the .gitignore file which is used in acli push:artifact to exclude some of the folders.

To Reproduce

mkdir allowed
mkdir crap
cd allowed
touch allowed
ln -s ../crap ln_crap_dir
ln -s ../crap/crap ln_crap_file
ln -s ../broken/link broken1
cd ../crap
touch crap
ln -s ../allowed/ ln_allowed_dir
ln -s ../allowed/allowed ln_allowed_file
ln -s ../broken/link broken2
cd ..
# Here we say we want allowed directory and not the crap directory in the artifact:
echo "/crap" >> .gitignore

> ls -alh crap/
total 13K
drwxrwxrwx 1 www-data www-data    0 Sep 18 11:02 .
drwxrwxrwx 1 www-data www-data 8.0K Sep 18 11:02 ..
lrwxr-xr-x 1 www-data www-data 1.1K Sep 18 11:02 broken2 -> ../broken/link
-rwxr-xr-x 1 www-data www-data    0 Sep 18 11:02 crap
lrwxr-xr-x 1 www-data www-data 1.1K Sep 18 11:02 ln_allowed_dir -> ../allowed/
lrwxr-xr-x 1 www-data www-data 1.1K Sep 18 11:02 ln_allowed_file -> ../allowed/allowed
> ls -alh allowed/
total 13K
drwxrwxrwx 1 www-data www-data    0 Sep 18 11:02 .
drwxrwxrwx 1 www-data www-data 8.0K Sep 18 11:02 ..
-rwxr-xr-x 1 www-data www-data    0 Sep 18 11:02 allowed
lrwxr-xr-x 1 www-data www-data 1.1K Sep 18 11:02 broken1 -> ../broken/link
lrwxr-xr-x 1 www-data www-data 1.1K Sep 18 11:02 ln_crap_dir -> ../crap
lrwxr-xr-x 1 www-data www-data 1.1K Sep 18 11:02 ln_crap_file -> ../crap/crap

After artifact generation:

> acli push:artifact  -n  -vvv  --no-clone  --no-push

> ls -alh /tmp/acli-push-artifact/crap/
total 0
drwxr-xr-x  2 www-data www-data 100 Sep 18 11:03 .
drwxr-xr-x 21 www-data www-data 740 Sep 18 11:04 ..
lrwxrwxrwx  1 www-data www-data  14 Sep 18 11:03 broken2 -> ../broken/link
lrwxrwxrwx  1 www-data www-data  11 Sep 18 11:03 ln_allowed_dir -> ../allowed/
lrwxrwxrwx  1 www-data www-data  18 Sep 18 11:03 ln_allowed_file -> ../allowed/allowed
> ls -alh /tmp/acli-push-artifact/allowed
total 0
drwxr-xr-x  2 www-data www-data  80 Sep 18 11:03 .
drwxr-xr-x 21 www-data www-data 740 Sep 18 11:04 ..
-rwxr-xr-x  1 www-data www-data   0 Sep 18 11:02 allowed
lrwxrwxrwx  1 www-data www-data  14 Sep 18 11:03 broken1 -> ../broken/link

Expected behavior

  • /tmp/acli-push-artifact/crap/ should not exists
    • no broken symlink
    • no links to allowed dir or files
    • no directory in fact
  • /tmp/acli-push-artifact/allowed is almost OK, symlinks to crap dir or files were removed but the broken link is still there. Is this the expected result? Maybe not.

The fact that the broken link was keeped is subject of debate, maybe this link will activate on the targeted env for the artifact.

IMHO we should have a --allow-symlinks options in the artifact generation command, and then all symlinks in the forbidden directory should not be kept and crap/ should not be in the artifact, and all the symlinks in allowed/ should be present in the artifact (even the ones to crap/ and broken links) if we --allow-symlinks and none if we do not.

@regilero regilero added the bug Something isn't working label Sep 18, 2024
@regilero regilero changed the title Some symlinks broken symlinks are wrongly present in artifact Some symlinks and broken symlinks are wrongly present in artifact Sep 18, 2024
@github-actions github-actions bot changed the title Some symlinks and broken symlinks are wrongly present in artifact CLI-1403: Some symlinks broken symlinks are wrongly present in artifact Sep 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant