From df1945bb6fe12aa1675201bebd6036d22ba72385 Mon Sep 17 00:00:00 2001 From: Mobsuccess Bot Date: Tue, 1 Oct 2024 09:54:45 +0000 Subject: [PATCH] chore(gha): update npm.yml GitHub workflow --- .github/workflows/npm.yml | 67 ++++++++++++++++++++++++++++----------- 1 file changed, 48 insertions(+), 19 deletions(-) diff --git a/.github/workflows/npm.yml b/.github/workflows/npm.yml index e3c59291..26c02ec7 100644 --- a/.github/workflows/npm.yml +++ b/.github/workflows/npm.yml @@ -3,6 +3,9 @@ # If changes are needed, update the action npm in # https://github.com/mobsuccess-devops/github-mobsuccess-policy on: + merge_group: + types: + - checks_requested push: branches: [master, preprod, prod] pull_request: @@ -14,28 +17,54 @@ jobs: runs-on: ubuntu-20.04 timeout-minutes: 1 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - uses: mobsuccess-devops/github-actions-packagejsonlint@master + sortpackagejson: + name: Sort Package Json + runs-on: ubuntu-20.04 + timeout-minutes: 7 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 20.12.0 + - name: Cache Node Modules + id: cache + uses: actions/cache@v4 + env: + cache-name: cache-node-modules + with: + path: ./node_modules + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package.json') }}-${{ hashFiles('**/package-lock.json') }}-node-20.12.0 + - run: echo "//npm.pkg.github.com/:_authToken=${{ secrets.MS_READ_PACKAGES_GITHUB_PAT }}" >> ~/.npmrc + name: Configure Credentials For GitHub Packages + - run: npm ci + if: steps.cache.outputs.cache-hit != 'true' + working-directory: . + - run: | + echo "💡 👉 Check not passing? see the doc at https://www.notion.so/mobsuccess/sort-package-json-de5cf4648e8545dbb5a2a5a910380535" + npx --yes sort-package-json@2.4.1 --check + working-directory: . prettier: name: Prettier runs-on: ubuntu-20.04 timeout-minutes: 7 steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v1 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: - node-version: ^16.13 + node-version: 20.12.0 - name: Cache Node Modules id: cache - uses: actions/cache@v2 + uses: actions/cache@v4 env: cache-name: cache-node-modules with: path: ./node_modules - key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package.json') }}-${{ hashFiles('**/package-lock.json') }}-node-20.12.0 - run: echo "//npm.pkg.github.com/:_authToken=${{ secrets.MS_READ_PACKAGES_GITHUB_PAT }}" >> ~/.npmrc name: Configure Credentials For GitHub Packages - - run: npm install + - run: npm ci if: steps.cache.outputs.cache-hit != 'true' working-directory: . - run: npm run prettier @@ -45,21 +74,21 @@ jobs: runs-on: ubuntu-20.04 timeout-minutes: 7 steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v1 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: - node-version: ^16.13 + node-version: 20.12.0 - name: Cache Node Modules id: cache - uses: actions/cache@v2 + uses: actions/cache@v4 env: cache-name: cache-node-modules with: path: ./node_modules - key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package.json') }}-${{ hashFiles('**/package-lock.json') }}-node-20.12.0 - run: echo "//npm.pkg.github.com/:_authToken=${{ secrets.MS_READ_PACKAGES_GITHUB_PAT }}" >> ~/.npmrc name: Configure Credentials For GitHub Packages - - run: npm install + - run: npm ci if: steps.cache.outputs.cache-hit != 'true' working-directory: . - run: npm run eslint @@ -69,21 +98,21 @@ jobs: runs-on: ubuntu-20.04 timeout-minutes: 7 steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v1 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: - node-version: ^16.13 + node-version: 20.12.0 - name: Cache Node Modules id: cache - uses: actions/cache@v2 + uses: actions/cache@v4 env: cache-name: cache-node-modules with: path: ./node_modules - key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package.json') }}-${{ hashFiles('**/package-lock.json') }}-node-20.12.0 - run: echo "//npm.pkg.github.com/:_authToken=${{ secrets.MS_READ_PACKAGES_GITHUB_PAT }}" >> ~/.npmrc name: Configure Credentials For GitHub Packages - - run: npm install + - run: npm ci if: steps.cache.outputs.cache-hit != 'true' working-directory: . - run: npm run test