[REF-2425] Reduce unnecessary CI runs (#2966)

This commit is contained in:
Martin Xu 2024-03-29 16:25:03 -07:00 committed by GitHub
parent 0af4770180
commit 7e4668f5ca
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 112 additions and 77 deletions

View File

@ -5,10 +5,6 @@ on:
branches: [main] branches: [main]
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
pull_request:
branches: [main]
paths-ignore:
- '**/*.md'
permissions: permissions:
contents: read contents: read
@ -24,7 +20,6 @@ env:
DATABASE_URL: ${{ secrets.DATABASE_URL }} DATABASE_URL: ${{ secrets.DATABASE_URL }}
PR_TITLE: ${{ github.event.pull_request.title }} PR_TITLE: ${{ github.event.pull_request.title }}
jobs: jobs:
reflex-web: reflex-web:
strategy: strategy:
@ -93,6 +88,15 @@ jobs:
python-version: '3.9.18' python-version: '3.9.18'
- os: windows-latest - os: windows-latest
python-version: '3.8.18' python-version: '3.8.18'
# keep only one python version for MacOS
- os: macos-latest
python-version: '3.8.18'
- os: macos-latest
python-version: '3.9.18'
- os: macos-latest
python-version: '3.10.13'
- os: macos-latest
python-version: '3.12.0'
include: include:
- os: windows-latest - os: windows-latest
python-version: '3.10.11' python-version: '3.10.11'
@ -148,7 +152,8 @@ jobs:
- name: Upload benchmark results - name: Upload benchmark results
# Only run if the database creds are available in this context. # Only run if the database creds are available in this context.
if: ${{ env.DATABASE_URL }} if: ${{ env.DATABASE_URL }}
run: poetry run python scripts/benchmarks/benchmark_reflex_size.py --os ubuntu-latest run:
poetry run python scripts/benchmarks/benchmark_reflex_size.py --os ubuntu-latest
--python-version 3.11.5 --commit-sha "${{ github.sha }}" --pr-id "${{ github.event.pull_request.id }}" --python-version 3.11.5 --commit-sha "${{ github.sha }}" --pr-id "${{ github.event.pull_request.id }}"
--db-url "${{ env.DATABASE_URL }}" --branch-name "${{ github.head_ref || github.ref_name }}" --db-url "${{ env.DATABASE_URL }}" --branch-name "${{ github.head_ref || github.ref_name }}"
--measurement-type "reflex-build" --path ./dist --measurement-type "reflex-build" --path ./dist
@ -187,7 +192,8 @@ jobs:
- if: ${{ env.DATABASE_URL }} - if: ${{ env.DATABASE_URL }}
name: calculate and upload size name: calculate and upload size
run: poetry run python scripts/benchmarks/benchmark_reflex_size.py --os "${{ matrix.os }}" run:
poetry run python scripts/benchmarks/benchmark_reflex_size.py --os "${{ matrix.os }}"
--python-version "${{ matrix.python-version }}" --commit-sha "${{ github.sha }}" --python-version "${{ matrix.python-version }}" --commit-sha "${{ github.sha }}"
--pr-id "${{ github.event.pull_request.id }}" --db-url "${{ env.DATABASE_URL }}" --pr-id "${{ github.event.pull_request.id }}" --db-url "${{ env.DATABASE_URL }}"
--branch-name "${{ github.head_ref || github.ref_name }}" --branch-name "${{ github.head_ref || github.ref_name }}"

View File

@ -1,15 +1,19 @@
name: check-generated-pyi name: check-generated-pyi
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.id }}
cancel-in-progress: true
on: on:
push: push:
branches: [ "main" ] branches: ['main']
# We don't just trigger on make_pyi.py and the components dir, because # We don't just trigger on make_pyi.py and the components dir, because
# there are other things that can change the generator output # there are other things that can change the generator output
# e.g. black version, reflex.Component, reflex.Var. # e.g. black version, reflex.Component, reflex.Var.
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
pull_request: pull_request:
branches: [ "main" ] branches: ['main']
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
@ -21,7 +25,7 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: ./.github/actions/setup_build_env - uses: ./.github/actions/setup_build_env
with: with:
python-version: "3.11.5" python-version: '3.11.5'
run-poetry-install: true run-poetry-install: true
create-venv-at-path: .venv create-venv-at-path: .venv
- run: | - run: |

View File

@ -1,12 +1,16 @@
name: integration-app-harness name: integration-app-harness
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.id }}
cancel-in-progress: true
on: on:
push: push:
branches: [ "main" ] branches: ['main']
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
pull_request: pull_request:
branches: [ "main" ] branches: ['main']
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
@ -18,8 +22,8 @@ jobs:
timeout-minutes: 30 timeout-minutes: 30
strategy: strategy:
matrix: matrix:
state_manager: [ "redis", "memory" ] state_manager: ['redis', 'memory']
python-version: ["3.8.18", "3.11.5", "3.12.0"] python-version: ['3.8.18', '3.11.5', '3.12.0']
runs-on: ubuntu-latest runs-on: ubuntu-latest
services: services:
# Label used to access the service container # Label used to access the service container

View File

@ -10,6 +10,10 @@ on:
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.id }}
cancel-in-progress: true
permissions: permissions:
contents: read contents: read
@ -29,7 +33,6 @@ env:
DATABASE_URL: ${{ secrets.DATABASE_URL }} DATABASE_URL: ${{ secrets.DATABASE_URL }}
PR_TITLE: ${{ github.event.pull_request.title }} PR_TITLE: ${{ github.event.pull_request.title }}
jobs: jobs:
example-counter: example-counter:
timeout-minutes: 30 timeout-minutes: 30
@ -96,7 +99,8 @@ jobs:
poetry run bash scripts/integration.sh ./reflex-examples/counter dev poetry run bash scripts/integration.sh ./reflex-examples/counter dev
- name: Measure and upload .web size - name: Measure and upload .web size
if: ${{ env.DATABASE_URL }} if: ${{ env.DATABASE_URL }}
run: poetry run python scripts/benchmarks/benchmark_reflex_size.py --os "${{ matrix.os }}" run:
poetry run python scripts/benchmarks/benchmark_reflex_size.py --os "${{ matrix.os }}"
--python-version "${{ matrix.python-version }}" --commit-sha "${{ github.sha }}" --python-version "${{ matrix.python-version }}" --commit-sha "${{ github.sha }}"
--pr-id "${{ github.event.pull_request.id }}" --db-url "${{ env.DATABASE_URL }}" --pr-id "${{ github.event.pull_request.id }}" --db-url "${{ env.DATABASE_URL }}"
--branch-name "${{ github.head_ref || github.ref_name }}" --branch-name "${{ github.head_ref || github.ref_name }}"
@ -143,7 +147,8 @@ jobs:
poetry run bash scripts/integration.sh ./reflex-web prod poetry run bash scripts/integration.sh ./reflex-web prod
- name: Measure and upload .web size - name: Measure and upload .web size
if: ${{ env.DATABASE_URL }} if: ${{ env.DATABASE_URL }}
run: poetry run python scripts/benchmarks/benchmark_reflex_size.py --os "${{ matrix.os }}" run:
poetry run python scripts/benchmarks/benchmark_reflex_size.py --os "${{ matrix.os }}"
--python-version "${{ matrix.python-version }}" --commit-sha "${{ github.sha }}" --python-version "${{ matrix.python-version }}" --commit-sha "${{ github.sha }}"
--pr-id "${{ github.event.pull_request.id }}" --pr-id "${{ github.event.pull_request.id }}"
--db-url "${{ env.DATABASE_URL }}" --branch-name "${{ github.head_ref || github.ref_name }}" --db-url "${{ env.DATABASE_URL }}" --branch-name "${{ github.head_ref || github.ref_name }}"

View File

@ -1,5 +1,9 @@
name: integration-tests-wsl name: integration-tests-wsl
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.id }}
cancel-in-progress: true
on: on:
push: push:
branches: ['main'] branches: ['main']

View File

@ -1,5 +1,9 @@
name: pre-commit name: pre-commit
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.id }}
cancel-in-progress: true
on: on:
pull_request: pull_request:
branches: ['main'] branches: ['main']

View File

@ -1,12 +1,16 @@
name: reflex-init-in-docker-test name: reflex-init-in-docker-test
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.id }}
cancel-in-progress: true
on: on:
push: push:
branches: [ "main" ] branches: ['main']
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
pull_request: pull_request:
branches: [ "main" ] branches: ['main']
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'

View File

@ -1,12 +1,16 @@
name: unit-tests name: unit-tests
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.id }}
cancel-in-progress: true
on: on:
push: push:
branches: [ "main" ] branches: ['main']
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
pull_request: pull_request:
branches: [ "main" ] branches: ['main']
paths-ignore: paths-ignore:
- '**/*.md' - '**/*.md'
@ -24,22 +28,22 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
os: [ubuntu-latest, windows-latest, macos-latest] os: [ubuntu-latest, windows-latest, macos-latest]
python-version: ["3.8.18", "3.9.18", "3.10.13", "3.11.5", "3.12.0"] python-version: ['3.8.18', '3.9.18', '3.10.13', '3.11.5', '3.12.0']
# Windows is a bit behind on Python version availability in Github # Windows is a bit behind on Python version availability in Github
exclude: exclude:
- os: windows-latest - os: windows-latest
python-version: "3.10.13" python-version: '3.10.13'
- os: windows-latest - os: windows-latest
python-version: "3.9.18" python-version: '3.9.18'
- os: windows-latest - os: windows-latest
python-version: "3.8.18" python-version: '3.8.18'
include: include:
- os: windows-latest - os: windows-latest
python-version: "3.10.11" python-version: '3.10.11'
- os: windows-latest - os: windows-latest
python-version: "3.9.13" python-version: '3.9.13'
- os: windows-latest - os: windows-latest
python-version: "3.8.10" python-version: '3.8.10'
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
# Service containers to run with `runner-job` # Service containers to run with `runner-job`
services: services: