diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index edab09930266129f55964dcde960d49347ea39ff..e24bbdba780f88a4d06940315c5ab5b88651c46d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -143,24 +143,6 @@ jobs: node-version: ${{ env.NODE_VERSION }} os: ${{ runner.os }} - lint-types: - needs: [setup] - runs-on: ubuntu-latest - timeout-minutes: 7 - - steps: - - name: Checkout code - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 - - - name: Setup Node.js - uses: ./.github/actions/setup-node - with: - node-version: ${{ env.NODE_VERSION }} - os: ${{ runner.os }} - - - name: Type check - run: yarn type-check - lint-eslint: needs: [setup] runs-on: ubuntu-latest @@ -279,10 +261,6 @@ jobs: echo "Node $(node --version)" echo "Yarn $(yarn --version)" - # build before tests to for static file check - - name: Build - run: yarn build - - name: Cache jest uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1 with: @@ -296,11 +274,59 @@ jobs: uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # v3.1.4 if: always() && env.coverage == 'true' + build: + needs: setup + runs-on: ubuntu-latest + timeout-minutes: 5 + steps: + - name: Checkout code + uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 + + - name: Setup Node.js + uses: ./.github/actions/setup-node + with: + node-version: ${{ env.NODE_VERSION }} + os: ${{ runner.os }} + + - name: Build + run: yarn -s build + + - name: Pack + run: yarn -s test-e2e:pack + + - name: Upload + uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 + with: + name: renovate-package + path: renovate-v0.0.0-semantic-release.tgz + + test-e2e: + needs: [setup, build] + runs-on: 'ubuntu-latest' + timeout-minutes: 7 + + steps: + - name: Checkout code + uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 + + - name: Setup Node.js + uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 + with: + node-version: ${{ env.NODE_VERSION }} + + - name: Download package + uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2 + with: + name: renovate-package + + - name: Install dependencies + run: yarn -s test-e2e:install + - name: E2E Test - run: yarn test-e2e + run: yarn -s test-e2e:run release: - needs: [lint-types, lint-eslint, lint-prettier, lint-other, test] + needs: [lint-eslint, lint-prettier, lint-other, test, test-e2e] if: github.repository == 'renovatebot/renovate' && github.event_name != 'pull_request' runs-on: ubuntu-latest timeout-minutes: 15