IoT Worlds
Software Development

4 Things You Should Know When Choosing GitHub-Hosted Runners

GitHub is a popular platform used by many software developers across the globe for good reason. You can build your software and at the same time, collaborate with teammates regardless of where they’re from. Everyone is given a chance to contribute to open-source projects. 

Many choose GitHub because of the wide variety of functionalities that it provides. Being a popular choice of platform among developers, this platform allows these developers to create publicly available repositories without charges. In the community, repositories are also known as “repos” which contain a project’s files together with its revision history. 

One of the most useful tools in GitHub is GitHub Actions. Launched back in 2018, it’s a powerful tool to simplify workflows. On top of that, it allows flexible automation. And with its easy-to-use capabilities for continuous integration/continuous development (CI/CD), it comes off as no surprise that more developers are now harnessing the power of this tool. 

What is Github Actions?

GitHub Actions is a CI/CD platform that allows you to automate your workflows within GitHub. It’s a platform that automates the build, deployment, and testing of software. All of these capabilities are found right in your GitHub flow. This platform can be divided into several components: workflows, events, jobs, actions, and runners. 

Workflows refer to a process, usually automated, containing different jobs that are only executed with the right trigger. A job is a series of tasks, typically a GitHub action or script, that is only executed by an event trigger. Meanwhile, an event is anything that occurs in your repository – from pushing code to commenting on certain issues. Actions are tasks used to perform more complex tasks that are often done repeatedly. Additionally, these are incorporated into your workflow. And lastly, we have runners – processes that run the workflow once a trigger is present. There are two types of runners: self-hosted and Github-hosted. But before you make a choice, there are a few things you should know about these runners. 

What You Should Know When Choosing Github-Hosted Runners 

Before choosing a type of runner, it’s useful to know the characteristics of runners. GitHub allows you to choose between different types of runners, each with varying functionalities. One of these is the Github-hosted runner. Here’s what you should know about it: 

There Are Two Types Of Runners 

As mentioned, there are two types of runners. Github-hosted runners contain workflows that run on the virtual machines that you’d find on Github. For those looking into self-hosted runners, you have the option to choose the virtual environment in which your runner app is hosted. For instance, if you own an Azure Virtual Machine account, runners can be run on Azure VM. 

Operating System Limitations 

It’s helpful to know that choosing the appropriate runner for your workflow is also dependent on the operating system’s limitations. Github-hosted runners are a convenient option, but it comes with the cost of hardware limitations. As of writing, it is only limited to dual-core CPUs, lacks ARM compatibility, and is bottlenecked by 7 GB of RAM. However, for other users, RAM shouldn’t be much of an issue. But for those running power-hungry systems, the cap could be a roadblock to getting the job done quickly.  This limitation is absent when using self-hosted runners. Hence, it’s one of their benefits.

Less Time Needed For Setup

Using self-hosted runners requires more time for setup. You’ll need to set up the servers and install the runner application before configuring. It’s worth noting that taking this route consumes a lot of resources, specifically time. Not to mention, there’s a high level of expertise that comes with it. On the contrary, Github-hosted runners are quite straightforward to use. All you have to do is identify the OS your pipeline needs to run on. And you’re done. Ease of use has always been the biggest advantage of using Github-hosted runners.

Lower Costs  

Because there’s a huge amount of resources needed when using self-hosted runners, it’s a given that choosing Github-hosted runners is the way to go if budget is an issue. Of course, this depends on the type of hardware you use. The benefit of choosing a Github-hosted runner is that you don’t have to deal with the higher maintenance costs that come with having your own server. More engineers and developers are required to ensure your servers are running smoothly, contributing to the increased cost of using self-hosted runners. 

Preferable For Smaller Teams 

If you own a small team, using Github-hosted runners might be more appropriate for your workflow. It streamlines your working process, allowing your developers to focus on software development. This is especially true for teams without qualified personnel in the field of computer science.

The Takeaway

Each type of runner has its own use. Before you decide on using Github-hosted runners, you have to weigh your options first. Want flexibility? Use self-hosted runners. Prefer something straightforward and easy to use? Choose Github-hosted runners. Both have their pros and cons, but ultimately, it will depend on your available resources.

Discover the best software development topics, click here!

Related Articles

WP Radio
WP Radio