Set `force_https` to true when Let's Encrypt cert checks out OK.
authorGuo Xiang Tan <tgx_world@hotmail.com>
Tue, 2 Apr 2019 07:57:30 +0000 (15:57 +0800)
committerGuo Xiang Tan <tgx_world@hotmail.com>
Tue, 2 Apr 2019 07:57:30 +0000 (15:57 +0800)
templates/web.letsencrypt.ssl.template.yml

index 3a43d4e6996c78bae66cb517c4087cd91c2a386e..463f04e79952e291127054094b831adf69de7e61 100644 (file)
@@ -61,6 +61,8 @@ hooks:
           if [ ! "$(cd $$ENV_LETSENCRYPT_DIR/$$ENV_DISCOURSE_HOSTNAME && openssl verify -CAfile ca.cer fullchain.cer | grep "OK")" ]; then
             # Try to issue the cert again if something goes wrong
             LE_WORKING_DIR="${LETSENCRYPT_DIR}" $$ENV_LETSENCRYPT_DIR/acme.sh --issue -d $$ENV_DISCOURSE_HOSTNAME -k 4096 --force -w /var/www/discourse/public
+          else
+            echo "force_https = 'true'" >> "/var/www/discourse/config/discourse.conf"
           fi
 
           LE_WORKING_DIR="${LETSENCRYPT_DIR}" $$ENV_LETSENCRYPT_DIR/acme.sh --installcert -d $$ENV_DISCOURSE_HOSTNAME --fullchainpath /shared/ssl/$$ENV_DISCOURSE_HOSTNAME.cer --keypath /shared/ssl/$$ENV_DISCOURSE_HOSTNAME.key --reloadcmd "sv reload nginx"