I use Drafts for iOS to kick off a build of my Jekyll and send the changed files to my web server. There are separate ones for sending to a testing URL or to the live site. Here's what happens:
- I kick off either the Deploy to Staging (testing) Drafts action or the Deploy to Production (live) Drafts action from Drafts. Clicking either of the previous links on an iOS device with Drafts installed will add the action. All this does is upload a blank text file to my Dropbox with a specific name to a specific folder.
- A Hazel rule on my Mac Mini setup in a server warehouse is watching that specific folder for files with those specific names. Here are the two Hazel rules for kicking off the deployment scripts. All this does after starting is run the scripts in the next steps with something like
sh deploy.shand then deletes the text file.
- The scripts that run will build Jekyll to a separate folder with all production flags ready (i.e. scripts and CSS files are compressed for example). Once done it will upload the site to my web server at Dreamhost (my Mac Mini Colo is not my web server, yet) via rsync to make sure it only uploads files that have changed. You can view the staging deployment script or the production deployment script if you'd like to look under the hood.
- Once that's done, a Pushover notification is sent to my iPhone with a link to let me know the whole process is done.
I use my notes section over blog posts wherever possible so I can continuously build and iterate on my shared knowledge. Here's my post talking about using notes over blog posts where I talk about it more in detail. I'll use blog posts with a title link to the note to announce significant changes to notes.
GitHub History Links
Here's my link I have on my notes that links to the files history on GitHub:
<a href="https://github.com/EvanLovely/my-jekyll-site/commits/master/notes/about-this-jekyll-site/index.md" target="_blank">View historical changes to this note.</a>
Responsive Image List
Will create a list of images for these files in the folder
/photos/india/_full/ using the imgs.html include
--- imgs: - 01 - 02 - 03 ---