GitHub: More than meets the eye.
In the developer world, GitHub has become synonymous with code's home base. It's the go-to platform for storing, versioning, and collaborating on code. But GitHub's capabilities extend far beyond simple repositories.
Over the years, GitHub has matured into the most popular cloud-based Git platform, with a staggering 56% of developers using it professionally and a whopping 87% leveraging it for personal projects.
What might not be immediately apparent is that GitHub offers a wealth of features beyond just pushing and pulling code. One such powerful feature is GitHub Codespaces. This cloud-hosted development environment lets you spin up an instant virtual machine with customizable resources (2-32 cores, 8-64 GB RAM, and up to 128 GB storage) pre-loaded with your repository. Say goodbye to tedious environment setups for short-lived coding projects!
Epic right? I know! But that's not even the focus of this article.
Enter GitHub Actions
What exactly is GitHub Actions?
Automate, customize, and execute your software development workflows right in your repository with GitHub Actions. You can discover, create, and share actions to perform any job you'd like, including CI/CD, and combine actions in a completely customized workflow.
Now, if that sounded like mumbo jumbo, let's embark on a more practical journey. We'll explore how to automate a workflow using GitHub Actions for a real-world application.
This application scrapes news daily from PunchNG's RSS feed, summarizes the articles using a fine-tuned BERT model, and then sends the summaries to subscribed users' emails.
Visit QuickPunch
I built a pipeline to automate this process, but the challenge remained: how to ensure the pipeline runs consistently every morning?
Manually running the pipeline at 8 AM every day simply wasn't sustainable. There has to be a way to automate this - and this is where GitHub Actions comes into play!
Start by creating a yaml file in the following directory.
On to the fun part: configuring the workflow run. The provided image highlights the key components of the workflow configuration, but the official documentation offers a comprehensive guide for exploring the various options available.
See more: GitHub Actions Documentation
Now let's break down the labeled parts.
Finally, save your yaml file and head over to the Actions tab to see all your workflow runs.
Phew! That covered a lot of ground. However, as Hamel H. points out, memorizing the syntax isn't necessary. In fact, it's actually better to avoid memorization to prevent errors.
Clicking on a run reveals its detailed execution log and you can just watch it go....
And voila! QuickPunch subscribers can now confidently expect their daily digest delivered every morning, ensuring they stay informed right from the start of their day.