Speaker: Svetlin Nakov
BurgasConf 2021, lightling talk
How to build CI/CD pipelines with GitHub Actions, how to write workflow scripts, how to execute workflows + live demo.
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
GitHub Actions for 5 minutes
1. CI/CD Pipelines with GitHub Actions
GitHub Actions for 5 Minutes
Software University
https://softuni.bg
SoftUni Team
Technical Trainers
2. CI/CD pipeline
Continuously integrate
and release new features
Continuous integration (CI)
Write code, test and integrate it in the product
Continuous delivery (CD)
Continuously release new features
CI/CD Pipeline
2
3. GitHub Actions
Cloud-based software workflow automation
environment (CI/CD on the GitHub cloud)
Allows creating CI/CD pipelines to build, test and
deploy software projects, directly from a GitHub repo
https://github.com/features/actions
Free for public repos + 2000 mins / month
for private repos with the free plan
GitHub Actions
3
4. Events execute workflows
(one or several jobs, running in parallel)
Workflows hold jobs
(e. g. build, check security, deploy)
Jobs hold steps (e. g. "checkout the
code", "install .NET", "run tests", …)
Steps hold actions
(commands like `dotnet test`)
GitHub Actions: Concepts
event
workflow
job
job
step 1
action 1
action 2
step 2
action
4
5. We have a JS App (with integration tests):
Code: https://github.com/nakov/MVC-app-integration-tests-example-mocha
Live: https://nakov-mvc-node-app.herokuapp.com
Sample JS App: Students Registry
5
6. Clone the app repo
Restore the Node packages:
Run the Mocha integration tests
Build and Run Locally (by Hand)
git clone https://github.com/nakov/MVC-app-integration-
tests-example-mocha
npm install
npm test
6
7. Let's implement a CI/CD
pipeline in GitHub Actions
Build & test workflow
Runs on push
Deploy workflow
Runs manually
CI/CD Pipeline in GitHub Actions
7
8. CI Workflow in GitHub Actions
Building a CI System
for Existing JS App
8