name: Superset Extensions CLI Package Tests on: push: branches: - "master" - "[0-9].[0-9]*" pull_request: types: [synchronize, opened, reopened, ready_for_review] # cancel previous workflow jobs for PRs concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} cancel-in-progress: true jobs: test-superset-extensions-cli-package: runs-on: ubuntu-24.04 strategy: matrix: python-version: ["previous", "current", "next"] defaults: run: working-directory: superset-extensions-cli steps: - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )" uses: actions/checkout@v6 with: persist-credentials: false submodules: recursive - name: Check for file changes id: check uses: ./.github/actions/change-detector/ with: token: ${{ secrets.GITHUB_TOKEN }} - name: Setup Python if: steps.check.outputs.superset-extensions-cli uses: ./.github/actions/setup-backend/ with: python-version: ${{ matrix.python-version }} requirements-type: dev - name: Run pytest with coverage if: steps.check.outputs.superset-extensions-cli run: | pytest --cov=superset_extensions_cli --cov-report=xml --cov-report=term-missing --cov-report=html -v --tb=short - name: Upload coverage reports to Codecov if: steps.check.outputs.superset-extensions-cli uses: codecov/codecov-action@v5 with: file: ./coverage.xml flags: superset-extensions-cli name: superset-extensions-cli-coverage fail_ci_if_error: false - name: Upload HTML coverage report if: steps.check.outputs.superset-extensions-cli uses: actions/upload-artifact@v5 with: name: superset-extensions-cli-coverage-html path: htmlcov/