Skip to content

Commit

Permalink
setting up CI to work with monorepo
Browse files Browse the repository at this point in the history
  • Loading branch information
JeromeBu committed Mar 8, 2024
1 parent 2c1092e commit 33d93eb
Showing 1 changed file with 53 additions and 0 deletions.
53 changes: 53 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: CI - CD
on:
push:
branches:
- main
pull_request:
branches:
- main

jobs:
validations:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: '20'
- uses: bahmutov/npm-install@v1
- name: List workspace directories
run: ls -R
- name: Fullcheck
run: yarn fullcheck

check_if_version_upgraded:
name: Check if version upgrade
# When someone forks the repo and opens a PR we want to enables the tests to be run (the previous jobs)
# but obviously only us should be allowed to release.
# In the following check we make sure that we own the branch this CI workflow is running on before continuing.
# Without this check, trying to release would fail anyway because only us have the correct secret.NPM_TOKEN but
# it's cleaner to stop the execution instead of letting the CI crash.
if: |
github.event_name == 'push' ||
github.event.pull_request.head.repo.owner.login == github.event.pull_request.base.repo.owner.login
runs-on: ubuntu-latest
needs: validations
outputs:
from_version: ${{ steps.step1.outputs.from_version }}
to_version: ${{ steps.step1.outputs.to_version }}
is_upgraded_version: ${{ steps.step1.outputs.is_upgraded_version }}
is_pre_release: ${{steps.step1.outputs.is_pre_release }}
steps:
- uses: garronej/[email protected]
id: step1
with:
action_name: is_package_json_version_upgraded

docker:
needs:
- check_if_version_upgraded
runs-on: ubuntu-latest
steps:
- name: Docker build and push
run: echo "Docker build and push"

0 comments on commit 33d93eb

Please sign in to comment.