Repository navigation
feat: added dynamic variable support #63
This file contains hidden or 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: 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 |