Skip to content

chore(deps): bump the github-actions group with 3 updates #3022

chore(deps): bump the github-actions group with 3 updates

chore(deps): bump the github-actions group with 3 updates #3022

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main
merge_group:
branches:
- main
env:
CI: true
PNPM_CACHE_FOLDER: .pnpm-store
# Ensure scripts are run with pipefail. See:
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#exit-codes-and-error-action-preference
defaults:
run:
shell: bash
jobs:
build_and_test:
name: build and test
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
# - macos-latest # OOMs
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: 'lts/*'
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- run: pnpm config set store-dir $PNPM_CACHE_FOLDER
- name: install
run: pnpm install
- name: lint
run: pnpm lint
- name: build
run: pnpm build
- name: test
run: pnpm test
- name: Bundle mergebot
working-directory: packages/mergebot
run: pnpm run bundle
- name: Check mergebot bundle
run: BOT_AUTH_TOKEN=secret node packages/mergebot/dist/functions/index.js
- name: knip
run: pnpm knip
check-parse-results:
if: ${{ github.event_name != 'merge_group' }}
needs: build_and_test
uses: ./.github/workflows/check-parse-results.yml
changesets:
name: changesets
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
fetch-depth: 0
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: 'lts/*'
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- run: pnpm install
- name: Check for missing changesets
run: |
PR_CHANGESETS=$(ls .changeset | (grep -v -E 'README\.md|config\.json' || true) | wc -l)
MAIN_CHANGESETS=$(git ls-tree -r HEAD^1 .changeset | (grep -v -E 'README\.md|config\.json' || true) | wc -l)
# If the PR has no changesets, but main has changesets, assume this is PR is a versioning PR and exit
if [[ $PR_CHANGESETS -eq 0 && $MAIN_CHANGESETS -gt 0 ]]; then
echo "This PR is a versioning PR, exiting"
exit 0
fi
git switch -c changesets-temp
git checkout HEAD^1 -- packages/definitions-parser/allowedPackageJsonDependencies.txt packages/dtslint/expectedNpmVersionFailures.txt
pnpm changeset status --since=HEAD^1
format:
name: format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: 'lts/*'
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- run: pnpm config set store-dir $PNPM_CACHE_FOLDER
- name: install
run: pnpm install
- name: format
run: pnpm format:check
required:
runs-on: ubuntu-latest
if: ${{ always() }}
needs:
- build_and_test
- check-parse-results
- changesets
- format
steps:
- name: Check required jobs
env:
NEEDS: ${{ toJson(needs) }}
run: |
! echo $NEEDS | jq -e 'to_entries[] | { job: .key, result: .value.result } | select((.result == "success" or .result == "skipped") | not)'