This repository was archived by the owner on Jun 13, 2025. It is now read-only.
testing ow #5460
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: API CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| - staging | |
| pull_request: | |
| merge_group: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: "read" | |
| id-token: "write" | |
| issues: "write" | |
| pull-requests: "write" | |
| jobs: | |
| lint: | |
| name: Run Lint | |
| uses: codecov/gha-workflows/.github/workflows/[email protected] | |
| build: | |
| name: Build API | |
| uses: codecov/gha-workflows/.github/workflows/[email protected] | |
| secrets: inherit | |
| with: | |
| repo: ${{ vars.CODECOV_IMAGE_V2 || 'codecov/self-hosted-api' }} | |
| cache_file: "uv.lock" | |
| codecovstartup: | |
| name: Codecov Startup | |
| needs: build | |
| uses: codecov/gha-workflows/.github/workflows/[email protected] | |
| secrets: inherit | |
| test: | |
| name: Test | |
| needs: [build] | |
| uses: codecov/gha-workflows/.github/workflows/[email protected] | |
| secrets: inherit | |
| with: | |
| run_integration: false | |
| repo: ${{ vars.CODECOV_IMAGE_V2 || 'codecov/self-hosted-api' }} | |
| build-self-hosted: | |
| name: Build Self Hosted API | |
| needs: [build, test] | |
| uses: codecov/gha-workflows/.github/workflows/[email protected] | |
| secrets: inherit | |
| with: | |
| repo: ${{ vars.CODECOV_IMAGE_V2 || 'codecov/self-hosted-api' }} | |
| cache_file: "uv.lock" | |
| staging: | |
| name: Push Staging Image | |
| needs: [build, test] | |
| if: ${{ github.event_name == 'push' && github.event.ref == 'refs/heads/staging' && github.repository_owner == 'codecov' }} | |
| uses: codecov/gha-workflows/.github/workflows/[email protected] | |
| secrets: inherit | |
| with: | |
| environment: staging | |
| repo: ${{ vars.CODECOV_IMAGE_V2 || 'codecov/self-hosted-api' }} | |
| production: | |
| name: Push Production Image | |
| needs: [build, test] | |
| if: ${{ github.event_name == 'push' && github.event.ref == 'refs/heads/main' && github.repository_owner == 'codecov' }} | |
| uses: codecov/gha-workflows/.github/workflows/[email protected] | |
| secrets: inherit | |
| with: | |
| environment: production | |
| repo: ${{ vars.CODECOV_IMAGE_V2 || 'codecov/self-hosted-api' }} | |
| self-hosted: | |
| name: Push Self Hosted Image | |
| needs: [build-self-hosted, test] | |
| secrets: inherit | |
| if: ${{ github.event_name == 'push' && github.event.ref == 'refs/heads/main' && github.repository_owner == 'codecov' }} | |
| uses: codecov/gha-workflows/.github/workflows/[email protected] | |
| with: | |
| push_rolling: true | |
| repo: ${{ vars.CODECOV_IMAGE_V2 || 'codecov/self-hosted-api' }} | |
| cache_file: "uv.lock" | |
| upload-overwatch: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Install Static Analysis Tools | |
| run: | | |
| pip install mypy==1.15.0 | |
| pip install ruff==0.3.3 | |
| - name: Install Build Dependencies | |
| run: | | |
| sudo apt-get update | |
| # Install libssl1.1 from Ubuntu 20.04 repositories | |
| wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb | |
| sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb | |
| - name: Install Overwatch CLI | |
| run: | | |
| curl -o overwatch-cli https://overwatch.codecov.dev/linux/cli | |
| chmod +x overwatch-cli | |
| - name: Print Current Working Directory | |
| run: pwd | |
| - name: List Contents of Current Working Directory | |
| run: ls -la | |
| - name: Run Overwatch CLI | |
| run: | | |
| ./overwatch-cli \ | |
| --auth-token ${{ secrets.CODECOV_SENTRY_RELEASE_TOKEN }} \ | |
| --organization-slug codecov \ | |
| python \ | |
| --python-path $(which python3) | |
| mypy: | |
| name: Run Mypy | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v2 | |
| - name: Set up Python | |
| uses: actions/setup-python@v2 | |
| with: | |
| python-version: '3.13' | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install mypy==1.15.0 | |
| # Add any other dependencies your project requires | |
| - name: Run Mypy | |
| run: mypy /app/apps/codecov-api |