Skip to content

chore(extension): release 0.2.0 #311

chore(extension): release 0.2.0

chore(extension): release 0.2.0 #311

Workflow file for this run

name: CodeQL
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
security-events: write
contents: read
jobs:
changes:
name: Detect Changes
runs-on: ubuntu-latest
outputs:
rust: ${{ steps.filter.outputs.rust }}
typescript: ${{ steps.filter.outputs.typescript }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
rust:
- 'crates/**'
- 'Cargo.toml'
- 'Cargo.lock'
typescript:
- 'vscode-extension/**/*.ts'
- 'vscode-extension/**/*.js'
- 'vscode-extension/package.json'
analyze-rust:
name: CodeQL Analyze Rust
needs: changes
if: needs.changes.outputs.rust == 'true'
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: rust
build-mode: none
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
with:
category: "/language:rust"
analyze-typescript:
name: CodeQL Analyze TypeScript
needs: changes
if: needs.changes.outputs.typescript == 'true'
runs-on: ubuntu-latest
defaults:
run:
working-directory: vscode-extension
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: javascript-typescript
build-mode: none
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
with:
category: "/language:javascript-typescript"
# Required status check that always passes
# This allows PRs with only non-code changes (e.g., README) to merge
codeql-status:
name: CodeQL
runs-on: ubuntu-latest
needs: [changes, analyze-rust, analyze-typescript]
if: always()
steps:
- name: Check status
run: |
if [[ "${{ needs.analyze-rust.result }}" == "failure" ]] || \
[[ "${{ needs.analyze-typescript.result }}" == "failure" ]]; then
echo "CodeQL analysis failed"
exit 1
fi
echo "CodeQL analysis passed or skipped"