chore: bump version to 1.7.14 and update CHANGELOG #4
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: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| lint: | |
| name: Lint | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - run: npm ci | |
| - run: npm run lint | |
| security: | |
| name: Security Audit | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - run: npm ci | |
| - name: Dependency audit | |
| run: npm audit --audit-level=high --omit=dev | |
| - name: Check for known vulnerabilities | |
| run: npx is-my-node-vulnerable | |
| continue-on-error: true | |
| build: | |
| name: Build | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| node-version: [20, 22] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: npm | |
| - run: npm ci | |
| - run: npm run build | |
| test-unit: | |
| name: Unit Tests | |
| runs-on: ubuntu-latest | |
| needs: build | |
| strategy: | |
| matrix: | |
| node-version: [20, 22] | |
| env: | |
| JWT_SECRET: ci-test-secret-with-sufficient-length-for-validation | |
| API_KEY_SECRET: ci-test-api-key-secret-long | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: npm | |
| - run: npm ci | |
| - run: npm run test:unit | |
| test-coverage: | |
| name: Coverage | |
| runs-on: ubuntu-latest | |
| needs: build | |
| env: | |
| JWT_SECRET: ci-test-secret-with-sufficient-length-for-validation | |
| API_KEY_SECRET: ci-test-api-key-secret-long | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - run: npm ci | |
| - run: npm run test:coverage | |
| - name: Check coverage threshold | |
| run: | | |
| echo "Coverage report generated. Check output for threshold compliance." | |
| test-e2e: | |
| name: E2E Tests | |
| runs-on: ubuntu-latest | |
| needs: build | |
| env: | |
| JWT_SECRET: ci-test-secret-with-sufficient-length-for-validation | |
| API_KEY_SECRET: ci-test-api-key-secret-long | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - run: npm ci | |
| - run: npx playwright install --with-deps chromium | |
| - run: npm run build | |
| - run: npm run test:e2e | |
| test-integration: | |
| name: Integration Tests | |
| runs-on: ubuntu-latest | |
| needs: build | |
| env: | |
| JWT_SECRET: ci-test-secret-with-sufficient-length-for-validation | |
| API_KEY_SECRET: ci-test-api-key-secret-long | |
| INITIAL_PASSWORD: ci-test-password-for-integration | |
| DATA_DIR: /tmp/omniroute-ci | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - run: npm ci | |
| - run: npm run test:integration | |
| continue-on-error: true | |
| test-security: | |
| name: Security Tests | |
| runs-on: ubuntu-latest | |
| needs: build | |
| env: | |
| JWT_SECRET: ci-test-secret-with-sufficient-length-for-validation | |
| API_KEY_SECRET: ci-test-api-key-secret-long | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: actions/setup-node@v6 | |
| with: | |
| node-version: 22 | |
| cache: npm | |
| - run: npm ci | |
| - run: npm run test:security | |
| continue-on-error: true |