From d7ca3d3e48cd1d40cab2c3c5120d7254ca287b2a Mon Sep 17 00:00:00 2001 From: Moritz Eck Date: Mon, 18 Nov 2024 08:17:02 +0100 Subject: [PATCH] E: update .github pipelines dependencies --- .github/workflows/protect-stable.yml | 47 +++++------ .github/workflows/pull-request.yml | 41 ++++------ .github/workflows/release-and-publish.yml | 96 +++++++++++------------ 3 files changed, 81 insertions(+), 103 deletions(-) diff --git a/.github/workflows/protect-stable.yml b/.github/workflows/protect-stable.yml index e2761ef..b133a1f 100644 --- a/.github/workflows/protect-stable.yml +++ b/.github/workflows/protect-stable.yml @@ -7,45 +7,38 @@ on: push: # List all branches that shall be tested and are not protected by requiring pull requests to commit to. branches: - - "develop" - - "main" + - 'develop' + - 'main' jobs: protect: - name: Protect stable + name: Protect stable runs-on: ubuntu-latest steps: - name: checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Node - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: - node-version: "16" - cache: "yarn" - cache-dependency-path: "**/yarn.lock" - - - name: Cache node modules - id: cache-npm - uses: actions/cache@v3 - env: - cache-name: cache-node-modules + node-version: '16' + cache: 'yarn' + cache-dependency-path: '**/yarn.lock' + + - name: Get yarn cache directory path + id: yarn-cache-dir-path + run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT + + - uses: actions/cache@v4 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: - path: | - node_modules - packages/addons/node_modules - packages/cli/node_modules - packages/client/node_modules - packages/server/node_modules - packages/shared/node_modules - packages/test/node_modules - key: ${{ runner.os }}-build-${{ hashFiles('**/yarn.lock') }} - restore-keys: | - ${{ runner.os }}-build- - ${{ runner.os }}- + path: ${{ steps.yarn-cache-dir-path.outputs.dir }} + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- - name: Install YARN dependencies - if: steps.cache-npm.outputs.cache-hit != 'true' + if: steps.yarn-cache.outputs.cache-hit != 'true' run: yarn install --frozen-lockfile - name: lint diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 57133a6..6009aee 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -14,36 +14,29 @@ jobs: runs-on: ubuntu-latest steps: - name: checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Node - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: - node-version: "16" - cache: "yarn" - cache-dependency-path: yarn.lock - - - name: Cache node modules - id: cache-npm - uses: actions/cache@v3 - env: - cache-name: cache-node-modules + node-version: '16' + cache: 'yarn' + cache-dependency-path: '**/yarn.lock' + + - name: Get yarn cache directory path + id: yarn-cache-dir-path + run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT + + - uses: actions/cache@v4 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: - path: | - node_modules - packages/addons/node_modules - packages/cli/node_modules - packages/client/node_modules - packages/server/node_modules - packages/shared/node_modules - packages/test/node_modules - key: ${{ runner.os }}-build-${{ hashFiles('**/yarn.lock') }} - restore-keys: | - ${{ runner.os }}-build- - ${{ runner.os }}- + path: ${{ steps.yarn-cache-dir-path.outputs.dir }} + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- - name: Install YARN dependencies - if: steps.cache-npm.outputs.cache-hit != 'true' + if: steps.yarn-cache.outputs.cache-hit != 'true' run: yarn install --frozen-lockfile - name: lint diff --git a/.github/workflows/release-and-publish.yml b/.github/workflows/release-and-publish.yml index 5a56516..d8a61cb 100644 --- a/.github/workflows/release-and-publish.yml +++ b/.github/workflows/release-and-publish.yml @@ -1,59 +1,51 @@ # This workflow will run tests using node and then publish a package to GitHub Packages when a release is created # For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages -name: Create release and publish it +name: Create release and publish it on: - push: - tags: - - 'v*' + push: + tags: + - 'v*' jobs: - release: - runs-on: ubuntu-latest - steps: - - name: checkout - uses: actions/checkout@v3 - - - name: Set up Node for NPMJS Deployment - uses: actions/setup-node@v3 - with: - node-version: "16" - cache: "yarn" - cache-dependency-path: yarn.lock - registry-url: https://registry.npmjs.org/ - - - name: Cache node modules - id: cache-npm - uses: actions/cache@v3 - env: - cache-name: cache-node-modules - with: - path: | - node_modules - packages/addons/node_modules - packages/cli/node_modules - packages/client/node_modules - packages/server/node_modules - packages/shared/node_modules - packages/test/node_modules - key: ${{ runner.os }}-build-${{ hashFiles('**/yarn.lock') }} - restore-keys: | - ${{ runner.os }}-build- - ${{ runner.os }}- - - - name: Install YARN dependencies - if: steps.cache-npm.outputs.cache-hit != 'true' - run: yarn install --frozen-lockfile - - - name: lint - run: yarn lint - - - name: test - run: yarn test:ci - - - name: build - run: yarn build - - - name: E2E tests - run: yarn test:e2e + release: + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v4 + + - name: Set up Node + uses: actions/setup-node@v4 + with: + node-version: '16' + cache: 'yarn' + cache-dependency-path: '**/yarn.lock' + + - name: Get yarn cache directory path + id: yarn-cache-dir-path + run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT + + - uses: actions/cache@v4 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: ${{ steps.yarn-cache-dir-path.outputs.dir }} + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: Install YARN dependencies + if: steps.yarn-cache.outputs.cache-hit != 'true' + run: yarn install --frozen-lockfile + + - name: lint + run: yarn lint + + - name: test + run: yarn test:ci + + - name: build + run: yarn build + + - name: E2E tests + run: yarn test:e2e