27 lines
		
	
	
		
			662 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			662 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| cd /var/www/hugo/site
 | |
| 
 | |
| echo "*** Running cronjob @ `date` ***"
 | |
| 
 | |
| # Pull any updates, and if the project is already up to date, exit successfully.
 | |
| git pull | grep -v "up to date"
 | |
| status="$?"
 | |
| echo "* Pull status is '$status'."
 | |
| if [[ $status != 0 && -e /var/www/html/index.html ]]; then
 | |
| 	echo "* Site is already up to date and copied, exiting."
 | |
| 	exit 0
 | |
| fi
 | |
| 
 | |
| # If the project was not already up to date, build the new files for NGINX.
 | |
| hugo --gc --minify
 | |
| status="$?"
 | |
| echo "* Hugo status is '$status'."
 | |
| if [[ $status == 0 && -e public/index.html ]]; then
 | |
| 	echo "* Copying files..."
 | |
| 	rm -rfv /var/www/html/*
 | |
| 	mv -v public/* /var/www/html/
 | |
| fi
 | |
| 
 | |
| exit 0
 |