Motivation: I have a project that uses Jenkins to deploy code to development environments. I want to auto-trigger the build/deploy when merging pull requests to a dev branch.
Migrating from Jenkins to GitHub Actions
Jenkins and GitHub Actions both allow you to create workflows that automatically build, test, publish, release, and deploy code.
Although there syntaxes are different, Their basic capabilities are the same, as I browsed the document.
The documentation above shows the syntax differences, and it seems due to the similarities, it's easy to migrate from Jenkins to GitHub Actions.
I searched for a Jenkins integration in GitHub workflow templates, but nothing hit.
Remote Access API - jenkins.io
There is an API to which I can send a request to trigger a specific job, but because I cannot notice any errors in the pipeline if I send a request from GitHub Actions, i.e., there is no complete integration, there is little advantage of doing that.
For a small project, using GitHub Actions is better (when using GitHub as a Git repository server) because running and managing Jenkins servers correctly require engineering resources, whereas with GitHub, I don't have to worry about the infrastructure much. Also, GitHub Actions have free minutes to run workflows, which usually does not exceed the limit for a small project/organization. Thinking about hosting a Jenkins server and engineering hours to manage its infrastructures, leveraging GitHub Actions is much more cost-efficient.
About billing for GitHub Actions
Let's say we use GitHub Team, because GitHub Enterprise Cloud is overkill for a small-mid size startup, we have 3000 free minutes per month, which is ~= 100 minutes per day.
From my experience,
Roughly, one pull request consumes 10 minutes of resources. 10 pull requests can be run freely. If we exceed the limit, Linux-based OS runners cost $0.008, so each addtiional pull request only costs $0.08.
I'm not familiar with the best practice of Jenkins infrastructure, but if we go for a very simple infrastructure such as VPS, it costs around $30 per month including domains.
Also, managing Jenkins pipeline costs some engineering-hour, which is not free.
Mexican rice 500 Rice 400 Protein bar 200 Yogurt 300 Protein shake 200 Nori 200 Salad 300
Total 2100 kcal
I feel I increased my calories deficit too much for several days. Therefore, I took a bit of extra calories.
1 hour walking, push-ups
MUST:
TODO: