45 lines
1.4 KiB
YAML
45 lines
1.4 KiB
YAML
name: Codeflash
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
# So that this workflow only runs when code within the target module is modified
|
|
- "skyvern/**"
|
|
workflow_dispatch:
|
|
concurrency:
|
|
# Any new push to the PR will cancel the previous run, so that only the latest code is optimized
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
jobs:
|
|
optimize:
|
|
name: Optimize new Python code in this PR
|
|
# Don't run codeflash on codeflash-ai[bot] commits, prevent duplicate optimizations
|
|
if: ${{ github.actor != 'codeflash-ai[bot]' }}
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
|
|
CODEFLASH_PR_NUMBER: ${{ github.event.number }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.11"
|
|
- name: Install Project Dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
pip install poetry
|
|
poetry install --all-extras
|
|
poetry add codeflash
|
|
- name: create test dir
|
|
run: |
|
|
mkdir -p codeflash-tests
|
|
- name: Run Codeflash to optimize code
|
|
run: |
|
|
poetry env use python
|
|
poetry run codeflash
|
|
- name: remove test dir
|
|
run: |-
|
|
rm -rf codeflash-tests
|