chore(deps): bump micromatch and lint-staged #214
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: 'CI' | |
on: | |
pull_request: | |
push: | |
branches: | |
- canary | |
- main | |
jobs: | |
linux-audit-build-test: | |
name: Audit, build, test all packages on ${{ matrix.os }}, Node ${{ matrix.node }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
# https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources | |
# Test all packages with: | |
# 1. Maintenance LTS | |
# 2. Active LTS | |
# 3. Current (i.e. the latest Node.js version available) | |
# https://nodejs.org/en/about/previous-releases | |
node: [lts/Iron] | |
# node: [lts/Hydrogen, lts/Iron, current] | |
# https://www.npmjs.com/package/@11ty/eleventy?activeTab=versions | |
eleventy: ['3.0.0-alpha.6'] | |
steps: | |
- name: ποΈ Checkout repo | |
uses: actions/checkout@v4 | |
- name: βοΈ Set up Node.js ${{ matrix.node }} | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node }} | |
- name: β¬οΈ Install dependencies | |
run: npm ci | |
- name: β¬οΈ Install Eleventy ${{ matrix.eleventy }} | |
run: npm install @11ty/eleventy@${{ matrix.eleventy }} | |
- name: π‘οΈ Audit dependencies (audit-level high) | |
# https://docs.npmjs.com/cli/v8/commands/npm-audit#audit-level | |
run: npm audit --audit-level high | |
- name: π‘οΈ Audit dependencies (audit-level moderate) | |
continue-on-error: true | |
run: npm audit --audit-level moderate | |
- name: π¦ Build all libraries | |
run: npm run build:libs | |
- run: npm run publint --workspaces --if-present | |
- name: π Test 11ty-plugin Content-Security-Policy | |
run: npm run test:ci -w packages/eleventy-plugin-content-security-policy | |
- name: β¬οΈ Upload test coverage to Codecov (eleventy-plugin-content-security-policy) | |
if: runner.os == 'Linux' | |
# if: matrix.os == 'ubuntu-latest' | |
# https://github.com/marketplace/actions/codecov | |
uses: codecov/codecov-action@v4 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
with: | |
fail_ci_if_error: false | |
files: ./packages/eleventy-plugin-content-security-policy/lcov.info | |
flags: eleventy-plugin-content-security-policy | |
# verbose: true | |
- name: π Test 11ty-plugin Ensure-Env-Vars | |
env: | |
DEBUG: Eleventy:EleventyErrorHandler,11ty-plugin* | |
NODE_ENV: test | |
run: npm run test:ci -w packages/eleventy-plugin-ensure-env-vars | |
- name: π Test 11ty-plugin Plausible | |
env: | |
PLAUSIBLE: ${{ secrets.PLAUSIBLE }} | |
run: npm run test:ci -w packages/eleventy-plugin-plausible | |
- name: π Test 11ty-plugin Telegram | |
env: | |
TELEGRAM: ${{ secrets.TELEGRAM }} | |
run: npm run test:ci -w packages/eleventy-plugin-telegram | |
- name: β¬οΈ Upload test coverage to Codecov (eleventy-plugin-telegram) | |
uses: codecov/codecov-action@v4 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
with: | |
fail_ci_if_error: false | |
files: ./packages/eleventy-plugin-telegram/lcov.info | |
flags: eleventy-plugin-telegram | |
- name: π Test 11ty-plugin Text-to-Speech | |
env: | |
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} | |
CLOUDFLARE_R2: ${{ secrets.CLOUDFLARE_R2 }} | |
SA_JSON_KEY_STORAGE_UPLOADER: ${{ secrets.SA_JSON_KEY_STORAGE_UPLOADER }} | |
SA_JSON_KEY_TEXT_TO_SPEECH: ${{ secrets.SA_JSON_KEY_TEXT_TO_SPEECH }} | |
run: npm run test:ci -w packages/eleventy-plugin-text-to-speech | |
- name: β¬οΈ Upload test coverage to Codecov (eleventy-plugin-text-to-speech) | |
uses: codecov/codecov-action@v4 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
with: | |
fail_ci_if_error: false | |
files: ./packages/eleventy-plugin-text-to-speech/lcov.info | |
flags: eleventy-plugin-text-to-speech | |
macos-build-test: | |
name: Build & test on ${{ matrix.os }}, Node ${{ matrix.node }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: true | |
max-parallel: 1 | |
matrix: | |
os: [macos-latest] | |
node: [lts/Iron] | |
eleventy: ['3.0.0-alpha.6'] | |
steps: | |
- name: ποΈ Checkout repo | |
uses: actions/checkout@v4 | |
- name: βοΈ Set up Node.js ${{ matrix.node }} | |
# https://github.com/marketplace/actions/setup-node-js-environment | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node }} | |
- name: β¬οΈ Install dependencies | |
run: npm ci | |
- name: β¬οΈ Install Eleventy ${{ matrix.eleventy }} | |
run: npm install @11ty/eleventy@${{ matrix.eleventy }} | |
- name: π¦ Build npm packages | |
run: npm run build:libs | |
- name: π Test | |
env: | |
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} | |
CLOUDFLARE_R2: ${{ secrets.CLOUDFLARE_R2 }} | |
DEBUG: Eleventy:EleventyErrorHandler,11ty-plugin* | |
NODE_ENV: test | |
PLAUSIBLE: ${{ secrets.PLAUSIBLE }} | |
SA_JSON_KEY_STORAGE_UPLOADER: ${{ secrets.SA_JSON_KEY_STORAGE_UPLOADER }} | |
SA_JSON_KEY_TEXT_TO_SPEECH: ${{ secrets.SA_JSON_KEY_TEXT_TO_SPEECH }} | |
TELEGRAM: ${{ secrets.TELEGRAM }} | |
run: npm run test | |
windows-build-test: | |
name: Build & test on ${{ matrix.os }}, Node ${{ matrix.node }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: true | |
max-parallel: 1 | |
matrix: | |
os: [windows-latest] | |
node: [lts/Iron] | |
eleventy: ['3.0.0-alpha.6'] | |
steps: | |
- name: ποΈ Checkout repo | |
uses: actions/checkout@v4 | |
- name: βοΈ Set up Node.js ${{ matrix.node }} | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node }} | |
- name: β¬οΈ Install dependencies | |
run: npm ci | |
- name: β¬οΈ Install Eleventy ${{ matrix.eleventy }} | |
run: npm install @11ty/eleventy@${{ matrix.eleventy }} | |
- name: π¦ Build npm packages | |
run: npm run build:libs | |
- name: π Test | |
env: | |
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} | |
CLOUDFLARE_R2: ${{ secrets.CLOUDFLARE_R2 }} | |
DEBUG: Eleventy:EleventyErrorHandler,11ty-plugin* | |
NODE_ENV: test | |
PLAUSIBLE: ${{ secrets.PLAUSIBLE }} | |
SA_JSON_KEY_STORAGE_UPLOADER: ${{ secrets.SA_JSON_KEY_STORAGE_UPLOADER }} | |
SA_JSON_KEY_TEXT_TO_SPEECH: ${{ secrets.SA_JSON_KEY_TEXT_TO_SPEECH }} | |
TELEGRAM: ${{ secrets.TELEGRAM }} | |
run: npm run test | |