Test #1930
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: 'Test' | |
on: | |
push: | |
branches: | |
- main | |
paths-ignore: | |
- '*.md' | |
pull_request: | |
paths-ignore: | |
- '*.md' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
jobs: | |
test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- 'ubuntu-22.04' | |
- 'ubuntu-20.04' | |
- 'ubuntu-latest' | |
- 'macos-latest' | |
- 'windows-latest' | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: peaceiris/workflows/setup-node@v0.19.1 | |
with: | |
node-version-file: ".nvmrc" | |
- name: Dump version | |
run: | | |
node -v | |
npm --version | |
git --version | |
- run: npm ci --ignore-scripts | |
- name: npm audit | |
if: startsWith(matrix.os, 'ubuntu-22.04') | |
run: | | |
npm audit > ./audit.log || true | |
if ! [ "$(cat ./audit.log | wc -l)" = 1 ]; then | |
echo "::warning::$(cat ./audit.log)" | |
fi | |
rm ./audit.log | |
- name: Run prettier | |
if: startsWith(matrix.os, 'ubuntu-22.04') | |
run: npm run format:check | |
- name: Run eslint | |
if: startsWith(matrix.os, 'ubuntu-22.04') | |
run: npm run lint | |
- run: npm test | |
- name: Upload test coverage as artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-${{ matrix.os }} | |
path: coverage | |
- uses: codecov/codecov-action@v4 | |
- name: Run ncc | |
run: npm run build | |
- name: Remove lint-staged husky | |
if: ${{ github.ref == 'refs/heads/main' }} | |
run: | | |
npm uninstall lint-staged husky | |
git checkout package-lock.json package.json | |
- name: Setup mdBook | |
if: ${{ github.ref == 'refs/heads/main' }} | |
uses: peaceiris/actions-mdbook@v1.2.0 | |
with: | |
mdbook-version: '0.4.5' | |
- name: Build site | |
if: ${{ github.ref == 'refs/heads/main' }} | |
working-directory: ./test_projects/mdbook | |
run: mdbook build | |
- name: Deploy | |
if: | | |
startsWith(matrix.os, 'ubuntu-latest') && | |
github.ref == 'refs/heads/main' && github.event.repository.fork == false | |
uses: ./ | |
with: | |
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
# publish_branch: gh-pages | |
publish_dir: ./test_projects/mdbook/book | |
# external_repository: '' | |
allow_empty_commit: true | |
# keep_files: true | |
# force_orphan: true | |
user_name: 'github-actions[bot]' | |
user_email: 'github-actions[bot]@users.noreply.github.com' | |
# commit_message: ${{ github.event.head_commit.message }} | |
cname: 'actions-gh-pages.peaceiris.com' | |
- name: Deploy | |
if: | | |
startsWith(matrix.os, 'macos') && | |
github.ref == 'refs/heads/main' && github.event.repository.fork == false | |
uses: ./ | |
with: | |
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} | |
# github_token: ${{ secrets.GITHUB_TOKEN }} | |
# personal_token: ${{ secrets.PERSONAL_TOKEN }} | |
publish_branch: gh-pages-macos | |
publish_dir: ./test_projects/mdbook/book | |
# external_repository: '' | |
allow_empty_commit: true | |
# keep_files: true | |
# force_orphan: true | |
user_name: 'github-actions[bot]' | |
user_email: 'github-actions[bot]@users.noreply.github.com' | |
# commit_message: ${{ github.event.head_commit.message }} | |
- name: Deploy | |
if: | | |
startsWith(matrix.os, 'windows') && | |
github.ref == 'refs/heads/main' && github.event.repository.fork == false | |
uses: ./ | |
with: | |
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
# personal_token: ${{ secrets.PERSONAL_TOKEN }} | |
publish_branch: gh-pages-windows | |
publish_dir: ./test_projects/mdbook/book | |
# external_repository: '' | |
allow_empty_commit: true | |
# keep_files: true | |
# force_orphan: true | |
user_name: 'github-actions[bot]' | |
user_email: 'github-actions[bot]@users.noreply.github.com' | |
# commit_message: ${{ github.event.head_commit.message }} | |
- name: Deploy | |
if: | | |
startsWith(matrix.os, 'ubuntu-20.04') && | |
github.ref == 'refs/heads/main' && github.event.repository.fork == false | |
uses: ./ | |
with: | |
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_branch: gh-pages-ubuntu-20.04 | |
publish_dir: ./test_projects/mdbook/book | |
# external_repository: '' | |
allow_empty_commit: true | |
# keep_files: true | |
# force_orphan: true | |
user_name: 'github-actions[bot]' | |
user_email: 'github-actions[bot]@users.noreply.github.com' | |
# commit_message: ${{ github.event.head_commit.message }} | |
- name: Deploy | |
if: | | |
startsWith(matrix.os, 'ubuntu-22.04') && | |
github.ref == 'refs/heads/main' && github.event.repository.fork == false | |
uses: ./ | |
with: | |
# deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_branch: gh-pages-ubuntu-22.04 | |
publish_dir: ./test_projects/mdbook/book | |
# external_repository: '' | |
allow_empty_commit: true | |
# keep_files: true | |
# force_orphan: true | |
user_name: 'github-actions[bot]' | |
user_email: 'github-actions[bot]@users.noreply.github.com' | |
# commit_message: ${{ github.event.head_commit.message }} |