Feat/transfer/refactor finisher page new UI #3593
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Rush CI (changelog, build, test) | |
# All pull requests, and | |
# Workflow dispatch allows you to run this workflow manually from the Actions tab | |
on: | |
pull_request: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
env: | |
AFFECTED_OR_ALL: | | |
${{ github.ref_name == 'main' && ' ' || format('--to git:origin/{0} --from git:origin/{0}', github.base_ref) }} | |
jobs: | |
build: | |
name: ${{ matrix.os }} - Node.js v${{ matrix.NodeVersion }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest] | |
NodeVersion: [16, 18] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 2 | |
- name: Fetch base branch | |
if: github.ref_name != 'main' | |
run: git fetch origin ${{ github.base_ref }} | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.NodeVersion }} | |
- name: Cache Rush | |
uses: actions/cache@v3 | |
with: | |
path: | | |
common/temp/install-run | |
~/.rush | |
key: cache-rush-${{ runner.os }}-${{ hashFiles('rush.json') }} | |
- name: Cache pnpm | |
uses: actions/cache@v3 | |
with: | |
path: | | |
common/temp/pnpm-store | |
key: | |
cache-pnpm-${{ runner.os }}-${{ | |
hashFiles('common/config/rush/pnpm-lock.yaml')}} | |
restore-keys: | | |
cache-pnpm-${{runner.os}}- | |
cache-pnpm- | |
- name: Rush install (install-run-rush) | |
run: | | |
node common/scripts/install-run-rush.js install ${{ env.AFFECTED_OR_ALL }} | |
- name: Cache builds | |
if: github.ref_name != 'main' | |
uses: actions/cache@v3 | |
with: | |
path: | | |
common/temp/build-cache | |
key: cache-build-${{ runner.os }}-${{ github.ref }} | |
restore-keys: | | |
cache-build-${{runner.os}}- | |
cache-build- | |
# Separate build cache when running on main | |
# This cache will be used when the first build is run on a PR | |
# Hence ${{ github.ref }} is not included in the key | |
- name: Cache builds | |
if: github.ref_name == 'main' | |
uses: actions/cache@v3 | |
with: | |
path: | | |
common/temp/build-cache | |
key: cache-build-${{ runner.os }} | |
restore-keys: | | |
cache-build- | |
- name: Cache previous test-lint-format runs | |
if: github.ref_name != 'main' | |
uses: actions/cache@v3 | |
with: | |
path: | | |
packages/*/*/.rush/temp/package-deps_format.json | |
packages/*/*/.rush/temp/package-deps_format_ci.json | |
packages/*/*/.rush/temp/package-deps_lint.json | |
packages/*/*/.rush/temp/package-deps_test.json | |
key: cache-build-${{ runner.os }}-${{ github.ref }} | |
- name: Rush build + test (install-run-rush) | |
run: | | |
node common/scripts/install-run-rush.js build --verbose # ${{ env.AFFECTED_OR_ALL }} | |
node common/scripts/install-run-rush.js test --verbose # ${{ env.AFFECTED_OR_ALL }} | |
env: | |
# Prevent time-based browserslist update warning | |
# See https://github.com/microsoft/rushstack/issues/2981 | |
BROWSERSLIST_IGNORE_OLD_DATA: 1 | |
- name: Rush format (install-run-rush) | |
if: github.ref_name != 'main' | |
run: | | |
node common/scripts/install-run-rush.js format:ci --verbose ${{ env.AFFECTED_OR_ALL }} | |
- name: Rush verify Change Logs (install-run-rush) | |
if: github.ref_name != 'main' | |
run: | | |
node common/scripts/install-run-rush.js change --verify --target-branch origin/${{ github.base_ref }} |