Adding CI to my SSG

neilan99

Neil An

Posted on November 17, 2022

Adding CI to my SSG

Hi everyone,

This week I added CI to my SSG. I used GitHub's CI service GitHub Actions to accomplish this. It was very easy to set up as I just had to find the Node.js workflow and add it.

This is what the YAML file looks like:

# This workflow will do a clean installation of node dependencies, cache/restore them, build the source code and run tests across different versions of node
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-nodejs

name: Node.js CI

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

jobs:
  build:

    runs-on: ubuntu-latest

    strategy:
      matrix:
        node-version: [14.x, 16.x, 18.x]
        # See supported Node.js release schedule at https://nodejs.org/en/about/releases/

    steps:
    - uses: actions/checkout@v3
    - name: Use Node.js ${{ matrix.node-version }}
      uses: actions/setup-node@v3
      with:
        node-version: ${{ matrix.node-version }}
        cache: 'npm'
    - run: npm ci
    - run: npm run build --if-present
    - run: npm test
Enter fullscreen mode Exit fullscreen mode

Here's the link to my successful workflow run.

I also added a test to a partner's SSG. Writing a test for their SSG was not difficult as their code was easy to understand. They were using the same testing framework/workflow as me.

I think CI is extremely easy to set up and very useful to have. It's important for the main branch of a project to be running and working at all times.

๐Ÿ’– ๐Ÿ’ช ๐Ÿ™… ๐Ÿšฉ
neilan99
Neil An

Posted on November 17, 2022

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related

ยฉ TheLazy.dev

About