name: CI - Build & Test on: pull_request: branches: - '*' paths-ignore: - '**.md' workflow_dispatch: jobs: format-and-lint: name: Format & Lint Checks runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - run: npm install name: Install dependencies - run: npm run bootstrap name: Bootstrap the packages - run: npm run build-all name: Build packages - run: npm run format-check name: Check formatting - name: Check linter run: | npm run lint git diff --exit-code -- . ':!packages/k8s/tests/test-kind.yaml' docker-tests: name: Docker Hook Tests runs-on: ubuntu-latest needs: format-and-lint steps: - uses: actions/checkout@v5 - run: npm install name: Install dependencies - run: npm run bootstrap name: Bootstrap the packages - run: npm run build-all name: Build packages - name: Run Docker tests run: npm run test --prefix packages/docker k8s-tests: name: Kubernetes Hook Tests runs-on: ubuntu-latest needs: format-and-lint steps: - uses: actions/checkout@v5 - run: sed -i "s|{{PATHTOREPO}}|$(pwd)|" packages/k8s/tests/test-kind.yaml name: Setup kind cluster yaml config - uses: helm/kind-action@v1.12.0 with: config: packages/k8s/tests/test-kind.yaml - run: npm install name: Install dependencies - run: npm run bootstrap name: Bootstrap the packages - run: npm run build-all name: Build packages - name: Run Kubernetes tests run: npm run test --prefix packages/k8s