| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- name: Regenerate Integration Tests
- on:
- workflow_dispatch:
- inputs:
- debug:
- description: 'Enable debug mode'
- type: boolean
- default: true
- log_to_file:
- description: 'Enable logging to file'
- type: boolean
- default: true
- force_regenerate_tests:
- description: 'Force regeneration of tests'
- type: boolean
- default: false
- force_use_llm:
- description: 'Force use of LLM'
- type: boolean
- default: false
- jobs:
- regenerate_integration_tests:
- if: github.ref != 'refs/heads/main'
- runs-on: ubuntu-latest
- steps:
- - name: Checkout repository
- uses: actions/checkout@v4
- - name: Set up Docker Buildx
- id: buildx
- uses: docker/setup-buildx-action@v3
- - name: Set up Python
- uses: actions/setup-python@v5
- with:
- python-version: "3.12"
- - name: Cache Poetry dependencies
- uses: actions/cache@v4
- with:
- path: |
- ~/.cache/pypoetry
- ~/.virtualenvs
- key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}
- restore-keys: |
- ${{ runner.os }}-poetry-
- - name: Install poetry via pipx
- run: pipx install poetry
- - name: Install Python dependencies using Poetry
- run: make install-python-dependencies
- - name: Build Environment
- run: make build
- - name: Regenerate integration tests
- run: |
- DEBUG=${{ inputs.debug }} \
- LOG_TO_FILE=${{ inputs.log_to_file }} \
- FORCE_REGENERATE_TESTS=${{ inputs.force_regenerate_tests }} \
- FORCE_USE_LLM=${{ inputs.force_use_llm }} \
- ./tests/integration/regenerate.sh
- - name: Commit changes
- run: |
- if git diff --quiet --exit-code; then
- echo "No changes to commit"
- exit 0
- fi
- git config --global user.name 'github-actions[bot]'
- git config --global user.email 'github-actions[bot]@users.noreply.github.com'
- git add .
- # run it twice in case pre-commit makes changes
- git commit -am "Regenerate integration tests" || git commit -am "Regenerate integration tests"
- git push
|