Closed xaqrox closed 3 years ago
@xaqrox I haven't been able to reproduce this on my machine (similar specs), is this running off a boilerplate repo that you can share with me? I could spin it up in P.sh and see if I can replicate.
@reynoldsalec sorry, it's a custom site for a client and i don't think i can share the repo. but i do have some news on this.
i tried pulling out as much customization as i could out of the .lando
and .platform.app
.yml
s, to try to rule out something I was doing. but the problem was still happening.
the error message above is frustratingly empty, but fortunately i discovered "silly" verbosity, which finally revealed that the problem script was /helpers/psh-build.sh
, so i looked at that script. i build lando 3.5.1 from source, and removed the set -e
from that script, hoping to get more informative errors. to my surprise, that actually let the build proceed as normal, and i just performed a successful pull via platform.sh. so something seems to be killing that script that doesn't actually need to be fatal when set -e
is on, but i'm not sure what that is.
for now i have my app working and i need to get some stuff done so i'm going to stop debugging this, but i'll post here if i have any more clues in the next couple weeks.
Huh, that's interesting @xaqrox, wish you had got an error, could help figure out the culprit.
For now I'm going to close this out unless you have further info, thanks for following up!
@reynoldsalec One more detail I'm hoping will be helpful. I was inspired to try removing the set -e
by a similar issue with nvm: https://github.com/nvm-sh/nvm/issues/1985 Long story short, it seems nvm does some error handling that expects set -e
to not be present, perhaps a similar thing was happening with the psh cli installer, it was expecting to gracefully handle some error that set -e
just took and ran with. 🤷
That's super interesting @xaqrox, my guess is that we're in a weird middle ground where set -e
is probably the best default, but that something(s) that throw an error during the process don't really matter and shouldn't stop the show.
@pirog guessing we can't safely get rid of set -e
for all cases?
I finally figured this out. There was some bad stuff in my .environment
file, which does get included, eventually, via the platformsh plugin's psh-build.sh
script. But there were various levels of error suppression, so I didn't realize that was where the problem was until I added some debugging to psh-build.sh
(with very helpful tips from @pirog) to figure out exactly where it was choking, and followed it back to .environment
. Whew!
I am running into this again, leaving a note for myself to the thread where pirog taught me how tell lando to use a different plugin location: https://devwithlando.slack.com/archives/C2XBSHX8R/p1642093821085800
@xaqrox note that there are now "custom installation" instructions on every Lando plugin in their docs, so hopefully that's a good reminder as well on how to download a specific version of the plugin and play with it: https://docs.lando.dev/platformsh/getting-started.html#custom-installation
I'm on v3.5.1 and bundled Docker, on macOS 11.6. Here's the error:
And my .lando.yml:
The app starts up well enough to serves page but when I try to run
lando pull
I get (sorry for -vvv output, error is at the bottom):