Skip to content

feat: added dynamic variable support #63

feat: added dynamic variable support

feat: added dynamic variable support #63

Workflow file for this run

name: Lint
permissions:
contents: read
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
lint-python:
runs-on: ubuntu-latest
defaults:
run:
working-directory: workflows
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Install uv
uses: astral-sh/setup-uv@v5
- name: Run Ruff linter
run: uv run ruff check --output-format=github
- name: Run Ruff formatter check
run: uv run ruff format --check
lint-ui:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ui
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
cache-dependency-path: ui/package-lock.json
- name: Install dependencies
run: npm ci
env:
NOYARNPOSTINSTALL: 1
- name: Generate TypeScript types from OpenAPI
run: npm run type-gen
- name: Run ESLint
run: npm run lint
- name: Run TypeScript compiler check
run: |
# Allow exactly 1 error (the known false positive in node-config-menu.tsx)
OUTPUT=$(npx tsc --noEmit 2>&1) || true
ERROR_COUNT=$(echo "$OUTPUT" | grep -c "error TS" || true)
if [ "$ERROR_COUNT" -eq 0 ]; then
echo "✓ No TypeScript errors found"
exit 0
elif [ "$ERROR_COUNT" -eq 1 ] && echo "$OUTPUT" | grep -q "node-config-menu.tsx.*Type 'unknown' is not assignable to type 'ReactNode'"; then
echo "⚠ Ignoring known false positive in node-config-menu.tsx"
echo "$OUTPUT"
exit 0
else
echo "✗ Found $ERROR_COUNT TypeScript error(s)"
echo "$OUTPUT"
exit 1
fi
lint-extension:
runs-on: ubuntu-latest
defaults:
run:
working-directory: extension
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'
cache-dependency-path: extension/package-lock.json
- name: Install dependencies
run: npm ci
- name: Run ESLint
run: npm run lint
- name: Run TypeScript compiler check
run: npm run compile
# Tests implementation (disabled for now)
# Uncomment the sections below when you're ready to enable tests
# test-python:
# runs-on: ubuntu-latest
# defaults:
# run:
# working-directory: workflows
# steps:
# - uses: actions/checkout@v4
#
# - name: Set up Python
# uses: actions/setup-python@v5
# with:
# python-version: "3.x"
#
# - name: Install uv
# uses: astral-sh/setup-uv@v5
#
# - name: Install dependencies
# run: uv sync --all-extras
#
# - name: Run pytest
# run: uv run pytest
# test-ui:
# runs-on: ubuntu-latest
# defaults:
# run:
# working-directory: ui
# steps:
# - uses: actions/checkout@v4
#
# - name: Setup Node.js
# uses: actions/setup-node@v4
# with:
# node-version: '20'
# cache: 'npm'
# cache-dependency-path: ui/package-lock.json
#
# - name: Install dependencies
# run: npm ci
#
# - name: Run tests
# run: npm test
# test-extension:
# runs-on: ubuntu-latest
# defaults:
# run:
# working-directory: extension
# steps:
# - uses: actions/checkout@v4
#
# - name: Setup Node.js
# uses: actions/setup-node@v4
# with:
# node-version: '20'
# cache: 'npm'
# cache-dependency-path: extension/package-lock.json
#
# - name: Install dependencies
# run: npm ci
#
# - name: Run tests
# run: npm test