Allow custom overrites for package resolving and optional sys.path support #1907
Workflow file for this run
This file contains 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: Unit Tests | |
on: | |
push: | |
branches: | |
- "develop" | |
pull_request: | |
types: [ opened, synchronize, reopened, labeled ] | |
branches: | |
- "develop" | |
workflow_dispatch: | |
jobs: | |
unit-tests: | |
runs-on: ubuntu-latest-8 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Setup environment | |
uses: ./.github/actions/setup-environment | |
- name: Run ATS and Tests | |
uses: ./.github/actions/run-ats | |
timeout-minutes: 15 | |
with: | |
default_tests: "tests/unit" | |
codecov_static_token: ${{ secrets.CODECOV_STATIC_TOKEN }} | |
codecov_token: ${{ secrets.CODECOV_TOKEN }} | |
collect_args: "--timeout 15" | |
codecov_flags: unit-tests | |
codemod-tests: | |
# TODO: re-enable when this check is a develop required check | |
if: false | |
runs-on: ubuntu-latest-32 | |
strategy: | |
matrix: | |
sync_graph: [ true, false ] | |
size: [ small, large ] | |
exclude: | |
# Exclude large codemod tests when not needed | |
- size: ${{(contains(github.event.pull_request.labels.*.name, 'big-codemod-tests') || github.event_name == 'push' || github.event_name == 'workflow_dispatch') && 'kevin' || 'large'}} | |
- size: large | |
sync_graph: true | |
concurrency: | |
group: ${{ github.workflow }}-${{github.ref}}-${{matrix.sync_graph}}-${{matrix.size}}-${{github.event_name == 'push'&& github.sha}} | |
cancel-in-progress: true | |
name: "Codemod tests ${{matrix.size}}: Sync Graph=${{matrix.sync_graph}}" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup environment | |
uses: ./.github/actions/setup-environment | |
- name: Cache oss-repos | |
uses: ./.github/actions/setup-oss-repos | |
- name: Run ATS and Tests | |
uses: ./.github/actions/run-ats | |
timeout-minutes: 15 | |
with: | |
default_tests: "tests/integration/codemod/test_codemods.py" | |
codecov_static_token: ${{ secrets.CODECOV_STATIC_TOKEN }} | |
codecov_token: ${{ secrets.CODECOV_TOKEN }} | |
collect_args: "--size=${{matrix.size}} --sync-graph=${{matrix.sync_graph}}" | |
ats_collect_args: "--size=${{matrix.size}},--sync-graph=${{matrix.sync_graph}}," | |
codecov_flags: codemod-tests-${{matrix.size}}-${{matrix.sync_graph}} | |
env: | |
GITHUB_WORKSPACE: $GITHUB_WORKSPACE | |
parse-tests: | |
runs-on: ubuntu-latest-32 | |
if: contains(github.event.pull_request.labels.*.name, 'parse-tests') || github.event_name == 'push' || github.event_name == 'workflow_dispatch' | |
environment: parse-tests | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup environment | |
uses: ./.github/actions/setup-environment | |
- name: Cache oss-repos | |
uses: ./.github/actions/setup-oss-repos | |
- name: Install yarn and pnpm | |
run: | | |
npm install -g yarn & | |
npm install -g pnpm | |
- name: Test with pytest | |
timeout-minutes: 15 | |
env: | |
GITHUB_WORKSPACE: $GITHUB_WORKSPACE | |
run: | | |
uv run pytest \ | |
-n auto \ | |
-o junit_suite_name="${{github.job}}" \ | |
tests/integration/codemod/test_parse.py | |
- uses: ./.github/actions/report | |
with: | |
flag: no-flag | |
codecov_token: ${{ secrets.CODECOV_TOKEN }} | |
- name: Notify parse tests failure | |
uses: slackapi/[email protected] | |
if: failure() && github.event_name == 'push' && false | |
with: | |
webhook: ${{ secrets.SLACK_WEBHOOK_URL }} | |
webhook-type: incoming-webhook | |
payload: | | |
{ | |
"blocks": [ | |
{ | |
"type": "header", | |
"text": { | |
"type": "plain_text", | |
"text": "❌ Parse Tests Failed", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "*Branch:* ${{ github.ref_name }}\n*Triggered by:* <${{ github.server_url }}/${{ github.actor }}|@${{ github.actor }}>\n\n*Details:*\n• <${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|View workflow run>" | |
} | |
}, | |
{ | |
"type": "context", | |
"elements": [ | |
{ | |
"type": "mrkdwn", | |
"text": "Failed at <!date^${{ github.event.head_commit.timestamp }}^{date_num} {time}|just now>" | |
} | |
] | |
} | |
] | |
} | |
integration-tests: | |
runs-on: ubuntu-latest-16 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup environment | |
uses: ./.github/actions/setup-environment | |
- name: Test with pytest | |
timeout-minutes: 5 | |
env: | |
GITHUB_WORKSPACE: $GITHUB_WORKSPACE | |
GITHUB_TOKEN: ${{ secrets.GHA_PAT }} | |
run: | | |
uv run pytest \ | |
-n auto \ | |
-o junit_suite_name="${{github.job}}" \ | |
tests/integration/codegen | |
- uses: ./.github/actions/report | |
with: | |
flag: integration-tests | |
codecov_token: ${{ secrets.CODECOV_TOKEN }} |