# Styleguide Deployment You can use the webhook template `webhook.conf.template` and the `deploy-styleguide.sh` script in `deployment/styleguide/` for an automatic deployment from a (github) webhook. For this to work follow these steps (using alpine): Setup webhook service ```sh apk add webhook cp deployment/styleguide/hooks.json.template deployment/styleguide/hooks.json vi deployment/styleguide/hooks.json # adjust content of .github/webhooks/hooks.json # replace all variables accordingly # copy webhook service file cp deployment/styleguide/webhook.template /etc/init.d/webhook vi /etc/init.d/webhook # adjust content of /etc/init.d/webhook chmod +x /etc/init.d/webhook service webhook start rc-update add webhook boot ``` Setup nginx ```sh vi /etc/nginx/http.d/default.conf # contents of /etc/nginx/http.d/default.conf server { listen 80 default_server; listen [::]:80 default_server; root /var/www/localhost/htdocs; # The github payload is quite big sometimes, hence those two lines can prevent an reoccurring error message on nginx client_body_buffer_size 10M; client_max_body_size 10M; location / { index index.html; try_files $uri $uri/ /index.html; } location /hooks/ { proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:9000/hooks/; proxy_redirect off; } } # contents of /etc/nginx/http.d/default.conf service nginx reload # delete htdocs/ folder to allow creation of symlink rm -r /var/www/localhost/htdocs ``` For the github webhook configure the following: | Field | Value | |------------------------------------------------------|-----------------------------------------------| | Payload URL | https://styleguide.ocelot.social/hooks/github | | Content type | application/json | | Secret | A SECRET | | SSL verification | Enable SSL verification | | Which events would you like to trigger this webhook? | Send me everything. | | Active | [x] |