I wanted to use Github Actions to deploy zellwk.com — when I push a commit into Github, I want Github Actions to build my site and deploy to my Digital Ocean server.
The hardest part of this process is deploying to the server with SSH and rsync. I tried various Github actions like SSH Deploy and SSH Action, but I couldn’t get the permissions to work for A LONG TIME.
I found most articles about Github actions and SSH didn’t help me much. I got stuck with debugging for a few days before I finally figured out how to make the process work.
Today, I want to share the exact steps to deploy via rsync and SSH. This process works for any server, even if you don’t use Digital Ocean.
Github Actions is a Continuous Integration (CI) + Continuous Deployment (CD) tool by Github.
CI and CD are bombastic terms, but they simply mean the following:
Continuous Integration: People push to a Git repository and the code gets tested automatically.
Continuous Delivery: The pushed code (ideally tested and bug-free) is then pushed into the server so it becomes live for users.
Although Github Actions is one of the many CI + CD Tools out there, it’s probably the simplest one to use (in my experience). Unfortunately, the Github Actions docs is a complete mess — they keep pointing you to different pages, expecting you to read everything (and understand everything) when you’re still trying to set up your first action.
Today I want to share the basics of using Github Actions so it becomes easy for you to use it.
In this article I want to detail the differences between hosting on Netlify, Vercel, and Digital Ocean, along with what I experienced in the process.
Regular expressions are HARD! They look so complicated, they’re turn me off completely most of the time. Sometimes I wished I was smarter so I can use them more effectively.
Rik Schennink is also joining me and giving away 5 lifetime Hobby license for his amazing Image Editor plugin, Doka. Each hobby plan is priced at $149, each year, so Rik is giving away a ton too!