Permission problems on deploy can't create "current" symlink. 500 NGINX

I am trying to provision a production website on hosting solution provided by my work. Project took a while so bit older trellis like 1.0.3 or something deploying on 18.04. I have a local dev environment that works great and a digital ocean box that setup a staging server fine as well.

Immediately after running server.yml I ran deploy.yml, I think I am supposed to setup the wordpress first? Anyways it gets to the step of “Wordpress Installed?”

fatal: []: FAILED! => {"changed": false, "cmd": "wp core is-installed --skip-plugins --skip-themes

If I goto it shows a 500 NGINX error.

So I went into /srv/www/ and saw

*81 rewrite or internal redirection cycle while internally redirecting to "/index.php",

Snoop around the internet usually means the website is not finding “Index.php at all”.

So I compare my /srv/www/ directory with my staging one I notice everything on production has chmod 750 under this directory while everything on staging is 755. I also noticed there is a current->releases/22035235wheverrelease sym-link created in /srv/www/ on staging but not on production.

I think it doesn’t have permission to create one with web:www-data ?

Everything and all releases in the folder at owned by web:www-data though.

I can create a current symlink as root to a specific release on production and then change the owner to web:www-data the wordpress is able to install and setup fine. But if I do another deploy it fails again. Every new release it pulls is chmod 750 and I have to go in and change the symlink manually.

Is there a reason the production permissions are a little tighter or what is the issue causing this?

This was a default UMASK error, the provider of the virtual machine had created more strict defaults with their ubuntu install. Had to go in and edit the UMASK before running.


Thanks for following up. Glad it’s all working :smile: