Auto generate a static website after a remote push to the server.

#!/bin/bash

DOMAIN=[domain-name]
GIT_REPO=/var/repos/[repo-name].repo.git
WORKING_DIRECTORY=/tmp/$DOMAIN
PUBLIC_WWW=/var/www/$DOMAIN
BACKUP_WWW=/tmp/$DOMAIN-backup

set -e

rm -rf $WORKING_DIRECTORY
rsync -aqz $PUBLIC_WWW/ $BACKUP_WWW
trap "echo 'A problem occurred.  Reverting to backup.'; rsync -aqz --del $BACKUP_WWW/ $PUBLIC_WWW; r
m -rf $WORKING_DIRECTORY" EXIT

git clone $GIT_REPO $WORKING_DIRECTORY
git clone https://github.com/[them] $WORKING_DIRECTORY/themes/beautifulhugo
# The following section should be changed to use rsync so that it nicely updates
# the directory instead of making it blank.
rm -rf $PUBLIC_WWW/*
hugo -s $WORKING_DIRECTORY -d $PUBLIC_WWW -b "http://${DOMAIN}"
rm -rf $WORKING_DIRECTORY

Build a robots.txt file from a data file

Recently, I was reviewing how I generating my blog. I have noticed that my site seems to get a lot of bot traffic. I would rather not see this traffic so I thought I should investigate how I might limit them to reduce the amount of traffic. So, a bit of searching and thinking and this is what I have decided for now.

[Read More]

Moving Site from GitHub

Generate the redirects for all pages

Hi All,

So yesterday I decided to move my site from github.io to one of my personal domains. I am not sure why I decided this. I mean Github provides a great free service. And I had lots of automation in place. In this article I will just cover how i went about updating all pages with redirects from github to the new domain.

The Goal

My goal was to leave my old site up on GitHub for a few weeks to give Google some time to update its indexing. With all old pages being able to redirect to their new counterparts. This requires that I have redirects in place for each page. I will then remove the github site repo.

[Read More]

Push to GitHub Triggers Push to Remote

Hi. Today I would like to go over how I changed things up a bit and am now able to push my site updates to GitHub, which then pushes the updates to the live production server. This should allow me to add checks within GitHub to ensure my site it updated only if everything is correct. Though I won’t go into that here today. I will be focusing on the GitHub Action.

[Read More]

Auto Update Site from a Git Push

Pushing directly from Dev Server to Remote Production Server

Hi,

For a little while now I have been thinking about moving my personal blog to a self-hosted service. One of the options I have been considering is Linode.

As part of this idea. I wanted to see how I might be able to automate some of the processes. This is just a write up on one of my ideas so far.

[Read More]

Add a New Social to Beautifulhugo

Fairly recently I changed my theme for my personal blog. I switched to Beautifulhugo. I find it to be a nice clean theme.

Beautifulhugo supports a lot of social sites. However, it is also missing some that I like. In particular Dev.to and Flipboard.

I had previously added these to the other theme I was using. So I went about adding them to Beautifulhugo.

[Read More]