From d2711c91e926fb3850e7732858f53044bc20f027 Mon Sep 17 00:00:00 2001 From: "Felix W. Dekker" Date: Tue, 20 Apr 2021 21:52:35 +0200 Subject: [PATCH] Add nginx deployment script --- deploy-nginx | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 deploy-nginx diff --git a/deploy-nginx b/deploy-nginx new file mode 100644 index 0000000..62b3bf6 --- /dev/null +++ b/deploy-nginx @@ -0,0 +1,37 @@ +#!/usr/local/bin/bash +# Usage: deploy-nginx target + +repo_dir="$(pwd)" +repo_name="$(basename -s .git "$repo_dir")" +dst_dir="/usr/local/etc/nginx" +tmp_dir="$HOME/tmp/git/$repo_name-$(date +%s)" + +echo "[[ Deploy ]] npm($repo_name)" +echo "[[ Deploy ]] src: '$repo_dir'" +echo "[[ Deploy ]] tmp: '$tmp_dir'" + + +if test -e "$tmp_dir"; then + echo "[[ Deploy ]] Directory '$tmp_dir' already exists, stopping deployment." + exit +fi + + +echo "[[ Deploy ]] Creating directory '$tmp_dir'." +mkdir -p "$tmp_dir" + +echo "[[ Deploy ]] Cloning repository at '$repo_dir' into '$tmp_dir'." +git clone "$repo_dir" "$tmp_dir" + +echo "[[ Deploy ]] Removing directories '$dst_dir/sites_available', '$dst_dir/sites_enabled', and '$dst_dir/snippets', and file '$dst_dir/nginx.conf'." +rm -rf "$dst_dir/sites_available" "$dst_dir/sites_enabled" "$dst_dir/snippets" "$dst_dir/nginx.conf" + +echo "[[ Deploy ]] Copying files from '$tmp_dir' to '$dst_dir'." +chmod -R g+w "$tmp_dir" +cp -r "$tmp_dir/sites_available/**" "$tmp_dir/sites_enabled/**" "$tmp_dir/snippets/**" "$tmp_dir/nginx.conf" "$dst_dir" + +echo "[[ Deploy ]] Reloading nginx configurations" +sudo service nginx reload + +echo "[[ Deploy ]] Deleting '$tmp_dir'." +rm -rf "$tmp_dir"