From 41aae7abb37d43db3a38e09f2ef674cce2c98ce9 Mon Sep 17 00:00:00 2001 From: Ulisse mini Date: Fri, 19 Jul 2019 12:24:08 +0200 Subject: [PATCH] Better deploy script example The given deploy script example was not very robust, if cd fails then it would update the current git repository etc I've also improved the portability by changing the shebang to `#!/bin/sh` and used `printf` instead of `echo` (in posix sh echo with arguments is undefined) --- .../hosting-and-deployment/hosting-on-github.md | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/content/en/hosting-and-deployment/hosting-on-github.md b/content/en/hosting-and-deployment/hosting-on-github.md index 8df6bc87c..200c216c8 100644 --- a/content/en/hosting-and-deployment/hosting-on-github.md +++ b/content/en/hosting-and-deployment/hosting-on-github.md @@ -67,30 +67,31 @@ You're almost done. In order to automate next steps create a `deploy.sh` script. The following are the contents of the `deploy.sh` script: ``` -#!/bin/bash +#!/bin/sh -echo -e "\033[0;32mDeploying updates to GitHub...\033[0m" +# If a command fails then the deploy stops +set -e + +printf "\033[0;32mDeploying updates to GitHub...\033[0m\n" # Build the project. hugo # if using a theme, replace with `hugo -t ` # Go To Public folder cd public + # Add changes to git. git add . # Commit changes. -msg="rebuilding site `date`" -if [ $# -eq 1 ] - then msg="$1" +msg="rebuilding site $(date)" +if [ -n "$*" ]; then + msg="$*" fi git commit -m "$msg" # Push source and build repos. git push origin master - -# Come Back up to the Project Root -cd .. ```