Skip to content

Commit

Permalink
🌱 Refactor CI github actions
Browse files Browse the repository at this point in the history
Refactoring:
  - Split repo and global CI to two different yaml files

  - Only enable global CI on main (with a note)

  - Repo CI should use node and npm versions from the
    root `package.json` when setting up node.  This will
    help ensure CI runs with the intended node/npm versions.

  - Repo CI bump the version of action `codecov/codecov-action`
    based on runtime warnings

Signed-off-by: Scott J Dickerson <[email protected]>
  • Loading branch information
sjd78 committed Mar 15, 2024
1 parent 6a0d10c commit bdbddac
Show file tree
Hide file tree
Showing 3 changed files with 105 additions and 78 deletions.
78 changes: 0 additions & 78 deletions .github/workflows/ci-actions.yml

This file was deleted.

50 changes: 50 additions & 0 deletions .github/workflows/ci-global.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: CI (global konveyor CI)

on:
push:
branches:
- "main"
pull_request:
branches:
- "main"

###
# The global CI settings need to be adjusted for the `release-*`` branches such that:
# 1. The operator uses the correct `:release-*` images
# 2. The `*-tests_ref` use the correct branches
#
# on:
# push:
# branches:
# - 'main'
# - 'release-*'
# pull_request:
# branches:
# - 'main'
# - 'release-*'
##

jobs:
build-and-upload-for-global-ci:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: save tackle2-ui image
run: |
docker build . -t quay.io/konveyor/tackle2-ui:latest
docker save -o /tmp/tackle2-ui.tar quay.io/konveyor/tackle2-ui:latest
- name: Upload tackle2-ui image as artifact
uses: actions/upload-artifact@v3
with:
name: tackle2-ui
path: /tmp/tackle2-ui.tar
retention-days: 1

run-global-ci:
needs: build-and-upload-for-global-ci
uses: konveyor/ci/.github/workflows/global-ci.yml@main
with:
component_name: tackle2-ui
run_api_tests: false
55 changes: 55 additions & 0 deletions .github/workflows/ci-repo.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: CI (repo level)

on:
push:
branches:
- "main"
- "release-*"
pull_request:
branches:
- "main"
- "release-*"

# env:
# # Note: This should match the node version(s) used in the base Dockerfile
# node-version: 18.x

jobs:
unit-test:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Use Node.js (use the version from package.json)
uses: actions/setup-node@v4
with:
node-version-file: "package.json"
cache: "npm"

- name: Verify package-lock.json
run: ./scripts/verify_lock.mjs

- name: Install
run: npm clean-install --ignore-scripts

- name: Lint sources
run: npm run lint

- name: Build
run: npm run build

- name: Test
run: npm run test -- --coverage --watchAll=false

- name: Upload to codecov (client)
uses: codecov/codecov-action@v4
with:
flags: client
directory: ./*/coverage

- name: Upload to codecov (server)
uses: codecov/codecov-action@v4
with:
flags: server
directory: ./*/coverage

0 comments on commit bdbddac

Please sign in to comment.