Open glensc opened 6 years ago
Can you show us your exact satis.sjon
and the command you are running (even if it's a docker command or something)?
Also
i've installed satis with composer, and therefore /bin/satis, /vendor/ are readonly.
I do not know understand the implication of using composer and the direct correlation you are drawing with /bin/satis
and /vendor
being read only. This is something I never heard of before.
brief setup description:
that /app
tree is readonly, because it's owned by root. satis should not write anything underneath that path, but to $HOME/.composer/cache or whatever env override specifies.
in my example i had setup COMPOSER_CACHE_HOME=/app/var/cache/composer, and that path is writable for user running satis, yet satis/composer tried to write to arbitary path /app/vendor/compose which failed, as that tree is readonly.
https://gist.github.com/glensc/e4e1fac01b331d11ecafb9e1878aa941
git clone -b v2 https://gist.github.com/e4e1fac01b331d11ecafb9e1878aa941.git bug-497
cd bug-497/
# optional for better cache in docker build
#composer install
docker build . -t satis
docker run --rm -it satis
➔ docker run --rm -it satis
Scanning packages
Creating local downloads in 'public/packages'
Dumping 'php-gettext/php-gettext'.
- Installing php-gettext/php-gettext (1.0.11): Downloading (100%)
In Filesystem.php line 186:
/app/vendor/composer/4be6ca62 does not exist and could not be created.
build [--repository-url [REPOSITORY-URL]] [--no-html-output] [--skip-errors] [--stats] [--] [<file>] [<output-dir>] [<packages>]...
ping. were you able to understand and reproduce the problem?
Yes, I think I was able to reproduce it. It has been a while though. I might have some time later today to look into it again.
friendly poke ;)
just spent again too much time before figured out i had vendor/composer not writable in docker composer (didn't realize it was not bind mounted. huh.)
@glensc was this fixed for you? I'm facing the same issue.
@REDLINK I solved for myself with a workaround, and as here is no update, I did not see a reason to re-check that it maybe be fixed.
I've updated my reproducer with latest versions with tag v2
and the problem remains:
i've installed satis with composer, and therefore /bin/satis, /vendor/ are readonly.
but satis seems to need that dir writable for operation when creating archives: