appsembler / configuration

a simple, but flexible, way for anyone to stand up an instance of the edX platform that is fully configured and ready-to-go
GNU Affero General Public License v3.0
14 stars 13 forks source link

run the `fix_dir_perms` role after gcsfuse+nginx #260

Closed thraxil closed 5 years ago

thraxil commented 5 years ago

utility role to clean up some permission conflicts as described in https://github.com/appsembler/roles/pull/60

thraxil commented 5 years ago

I want to make sure that people do understand the problem.

The playbook (before this):

Normally, we would fix it by just running nginx first, so it creates /var/www before gcsfuse and the permissions are set right. Unfortunately, the nginx role with our config references /etc/letsencrypt paths for SSL certificates. /etc/letsencrypt on Tahoe is also mounted from GCS Fuse and thus requires the gcsfuse role to have mounted it. If you run the nginx role before gcsfuse, configs point to nonexistent SSL certificate files on disk, the nginx service fails to start, and the playbook won't get any further.

So this little role afterwards is a fix to get around that circular dependency between gcsfuse and nginx. It allows the playbook to run both steps, and just cleans up the error.

OmarIthawi commented 5 years ago

Thanks @thraxil, now I see that the other PR (https://github.com/appsembler/roles/pull/60) was to create the role and this one is to use it.

Thank you for the detailed explanation again.