-
Notifications
You must be signed in to change notification settings - Fork 74
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
Warning / Skip Symlinks In a Repo? #51
Comments
Typically if you use the Action in this repository, the fact that we don't allow symlinks is transparent because we dereference them in the Did you experience a different behavior? |
I also faced a similar problem, the web site had some bad symlinks with absolute paths and the job failed with:
Only after reading this ticket I realised the links are wrong. I don't know what would be an appropriate solution, but the experience was not great. :-( |
Thanks for looking into this! I think, but am not sure, that the issue might have been a bad symlink, or at least to one outside of the repo. After finding and removing symlinks, I got the site to build fine. |
Ah, I forgot to mention, in my case the issue was definitely caused by the broken absolute links (dev, stable, v6.0). I wrote a shell script to replace them with relative symlinks and this upload action ran smoothly. Not being able to tar a folder with broken absolute symlinks is somehow expected, but I thing that this action should check if such symlinks exist and throw explicit error messages, since messages like tar: ./dev: File removed before we read it are far from obvious. Relative symlinks inside the folder are fine, tar can process them successfully (on Unix-like machines). |
I too want to understand the reasoning behind this no link rule. GitHub Pages works fine with symbolic link when deployed from a branch. We use Pages to host some Debian package archives, where packages are symbolic linked multiple times due to its format. De-reference all of them results in significantly larger artifacts to upload, that not only takes longer time, but also run us close to the size limit. We most likely will fork this action to make that happen, but before we do that we still want to know why it was forbidden, since there might be side effects that we are unaware of.. |
Symbolic links have been a recurring vector of attack of our hosting infrastructure both on GitHub.com and GitHub Enterprise Server. This is the reason we disabled their entire usage sometime last year. |
More just FYI, but somewhat related to this, I've managed to make an |
Would it be possible to improve the experience with symlinks in a repo? It took me a good few hours to realize a bad symlink was the case of many failures.
The 'no symlink' thing is mentioned in the README, but doesn't show in the build output. (I'm also using the default GH Pages build, which isn't super obvious this is the source repo for the build.)
Here's what I ran that tipped me off to the bad file.
find -L . -type l -ls
.In this case, the repo has been around for a while and in the old old days symlinks weren't an issue when using Pages, and now that I'm re-enabling Pages, I wasn't aware of some of the problem files.
If this sounds useful, I can try to author a PR - though I am no windows expert and now sure how I'd test that. :)
The text was updated successfully, but these errors were encountered: