Files
everforest-resources/.github/workflows/ci.yml
renovate[bot] 8b3bde3442 chore(deps): update github/codeql-action action (v4.31.5 → v4.31.6) (#30)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[github/codeql-action](https://redirect.github.com/github/codeql-action)
| action | patch | `v4.31.5` -> `v4.31.6` |

---

### Release Notes

<details>
<summary>github/codeql-action (github/codeql-action)</summary>

###
[`v4.31.6`](https://redirect.github.com/github/codeql-action/releases/tag/v4.31.6)

[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v4.31.5...v4.31.6)

### CodeQL Action Changelog

See the [releases
page](https://redirect.github.com/github/codeql-action/releases) for the
relevant changes to the CodeQL CLI and language packs.

#### 4.31.6 - 01 Dec 2025

No user facing changes.

See the full
[CHANGELOG.md](https://redirect.github.com/github/codeql-action/blob/v4.31.6/CHANGELOG.md)
for more information.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At 12:00 AM through 04:59 AM and 10:00
PM through 11:59 PM, Monday through Friday ( * 0-4,22-23 * * 1-5 ), Only
on Sunday and Saturday ( * * * * 0,6 ) in timezone Europe/Helsinki,
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/ivuorinen/everforest-resources).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xOS45IiwidXBkYXRlZEluVmVyIjoiNDIuMTkuOSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUvZ2l0aHViLWFjdGlvbiIsInJlbm92YXRlL2dpdGh1Yi1yZWxlYXNlIiwidHlwZS9wYXRjaCJdfQ==-->

Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-03 06:00:41 +00:00

196 lines
5.5 KiB
YAML

name: CI
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
lint:
name: Lint Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Setup Node.js
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Run Biome linting
run: npm run lint
generate:
name: Generate Themes
runs-on: ubuntu-latest
needs: lint
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Setup Node.js
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Generate themes
run: npm run generate
- name: Validate generated themes
run: npm run validate
- name: Check for uncommitted changes
run: |
if [[ -n $(git status --porcelain) ]]; then
echo "❌ Generated files are not up to date!"
echo "Please run 'npm run generate' and commit the changes."
git status --porcelain
exit 1
fi
echo "✅ All generated files are up to date"
test:
name: Test Web Components & Snapshots
runs-on: ubuntu-latest
needs: generate
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Setup Node.js
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Install Playwright browsers
run: npx playwright install --with-deps
- name: Generate themes
run: npm run generate
- name: Run Playwright e2e tests
run: npm run test:e2e
- name: Generate snapshots
run: make snapshots
- name: Upload Playwright report
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
if: always()
with:
name: playwright-report
path: playwright-report/
retention-days: 30
verify-installation:
name: Verify Installation Scripts
runs-on: ${{ matrix.os }}
needs: generate
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Setup Node.js
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Generate themes
run: npm run generate
- name: Test installation script (dry run)
run: ./install.sh --dry-run
- name: Test variant switching
run: |
./install.sh --dry-run --variant dark-hard
./install.sh --dry-run --variant light-medium
- name: Test category installation
run: |
./install.sh --dry-run terminals
./install.sh --dry-run cli
./install.sh --dry-run editors
security:
name: Security Scan
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@master
with:
scan-type: "fs"
scan-ref: "."
format: "sarif"
output: "trivy-results.sarif"
- name: Upload Trivy scan results to GitHub Security tab
uses: github/codeql-action/upload-sarif@fe4161a26a8629af62121b670040955b330f9af2 # v4.31.6
with:
sarif_file: "trivy-results.sarif"
build-stats:
name: Build Statistics
runs-on: ubuntu-latest
needs: generate
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Setup Node.js
uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install dependencies
run: npm ci
- name: Generate themes
run: npm run generate
- name: Calculate statistics
run: |
echo "## 📊 Build Statistics" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
# Count generated files
TOTAL_FILES=$(find . -name "*-dark-*" -o -name "*-light-*" | wc -l)
echo "- **Generated files**: $TOTAL_FILES" >> $GITHUB_STEP_SUMMARY
# Count templates
TEMPLATES=$(find . -name "template.*" | wc -l)
echo "- **Templates**: $TEMPLATES" >> $GITHUB_STEP_SUMMARY
# Count tools
CLI_TOOLS=$(ls -1 cli/ | grep -v install.sh | wc -l)
TERMINALS=$(ls -1 terminals/ | wc -l)
EDITORS=$(ls -1 editors/ | wc -l)
echo "- **CLI tools**: $CLI_TOOLS" >> $GITHUB_STEP_SUMMARY
echo "- **Terminals**: $TERMINALS" >> $GITHUB_STEP_SUMMARY
echo "- **Editors**: $EDITORS" >> $GITHUB_STEP_SUMMARY
# File sizes
TOTAL_SIZE=$(du -sh . | cut -f1)
echo "- **Total size**: $TOTAL_SIZE" >> $GITHUB_STEP_SUMMARY