CI/CD (Continuous Integration/Continuous Delivery/Development) is now an essential part of all kind of software projects. Today I am going to work you through setting up CI/CD with GitHub Actions.
Setting up CI
To use a GitHub action for building your repository at each push (on all branches), all you have to do is to place a YAML file under .github/workflows and commit it with your repo.
mkdir .github
cd .github
mkdir workflows
cd workflows
Inside the created .yml
file, Add the following.
# This workflow will do a clean install of node dependencies, build the source code and run tests
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: CI Pipeline
# trigger build when pushing, or when creating a pull request
on: [push, pull_request]
jobs:
build:
# run build on latest ubuntu
runs-on: ubuntu-latest
steps:
# this will check out the current branch (https://github.com/actions/checkout#Push-a-commit-using-the-built-in-token)
- uses: actions/checkout@v3
# installing Node
- name: Use Node.js 16.16.0
uses: actions/setup-node@v3
with:
# this will use the latest Node 16 version
node-version: 16.16.0
# install dependencies using clean install to avoid package lock updates
- run: npm ci
# build the project if necessary
- run: npm run build --if-present
# finally run the test
- run: npm test
What this workflow basically does is,
- checkout the branch
- install node (on ubuntu)
- install the dependencies of your project and build it if necessary
- finally, run the tests
Comments are added on every line explaining the setup.
After! Commit & push your work and head over to the Actions section of your repo where you can see all executed workflows…
Top comments (0)