diff --git a/.github/workflows/merge-conflict-autolabel.yml b/.github/workflows/merge-conflict-autolabel.yml deleted file mode 100644 index 813314c..0000000 --- a/.github/workflows/merge-conflict-autolabel.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: "💥 Auto-Label Merge Conflicts on PRs" -on: - push: - branches: - - main - -concurrency: - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true - -jobs: - triage: - runs-on: ubuntu-latest - steps: - - uses: mschilde/auto-label-merge-conflicts@master - with: - CONFLICT_LABEL_NAME: "💥 Merge Conflicts" - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - MAX_RETRIES: 5 - WAIT_MS: 5000 diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml deleted file mode 100644 index d67d91d..0000000 --- a/.github/workflows/node.js.yml +++ /dev/null @@ -1,58 +0,0 @@ -name: Node.js CI - -on: - push: - - pull_request: - branches: [develop] - -jobs: - build: - name: Build and Test - runs-on: ubuntu-latest - - strategy: - matrix: - node-version: [18.x, 20.x, 22.x, 23.x] - - steps: - - uses: actions/checkout@v4 - - - name: Setup Node ${{ matrix.node-version }} - uses: actions/setup-node@v4.1.0 - with: - cache: yarn - node-version: ${{ matrix.node-version }} - - - run: yarn install --immutable - - - run: yarn run build - - - run: yarn test - - - run: yarn run build:docs - - - name: Upload artifact - uses: actions/upload-pages-artifact@v3 - if: matrix.node-version == '22.x' - with: - path: "docs" - - docs: - name: Deploy Docs - runs-on: ubuntu-latest - needs: build - if: github.event_name == 'push' && github.ref == 'refs/heads/develop' - - permissions: - pages: write # to deploy to Pages - id-token: write # to verify the deployment originates from an appropriate source - - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml new file mode 100644 index 0000000..1068b04 --- /dev/null +++ b/.github/workflows/nodejs.yml @@ -0,0 +1,78 @@ +name: NodeJS Checks + +on: + push: + branches: [develop] + pull_request: + +jobs: + build: + name: Build, Lint, Format, Tests and Build Docs + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [18.x, 20.x, 22.x, 23.x] + + steps: + # Checkout the repository + - uses: actions/checkout@v4 + + # Setup Node.js environment + - name: Setup Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: "yarn" + + # Install dependencies + - name: Install dependencies + run: yarn install --immutable + + # Run eslint + - name: Run ESLint + run: yarn lint + + # Run prettier check + - name: Run Prettier + run: yarn format + + # Run build + - name: Build project + run: yarn build + + # Run tests + - name: Run tests + run: yarn test + + # Build documentation only for Node.js 22.x + - name: Build documentation + if: matrix.node-version == '22.x' + run: yarn build:docs + + # Upload documentation artifact (only for Node.js 22.x) + - name: Upload docs + if: matrix.node-version == '22.x' + uses: actions/upload-pages-artifact@v3 + with: + path: "docs" + + docs: + name: Deploy Docs + runs-on: ubuntu-latest + needs: build + if: github.event_name == 'push' && github.ref == 'refs/heads/develop' + + permissions: + pages: write # to deploy to Pages + id-token: write # to verify the deployment originates from an appropriate source + + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + steps: + # Deploy documentation to GitHub Pages + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4