Add lock file #1666
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: Continuous Integration | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
schedule: | |
- cron: "0 0 * * *" | |
jobs: | |
test: | |
runs-on: ${{ matrix.platform }} | |
strategy: | |
matrix: | |
platform: [ubuntu-latest, macos-latest, windows-latest] | |
python-version: ["3.9", "3.10", "3.11"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -e ".[dev]" | |
python -m pip install tox-gh-actions==2.12.0 | |
- name: Run tests | |
run: tox | |
test_requirements_lock: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -e ".[dev]" | |
python -m pip install tox-gh-actions==2.12.0 | |
- name: Regenerate requirements.txt | |
run: tox -e pip-compile | |
- name: Check if requirements.txt is up-to-date | |
run: git diff --exit-code HEAD requirements.txt | |
test_docs: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.9" | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -e ".[dev, docs]" | |
sudo apt-get install graphviz | |
- name: Test if docs can be built | |
run: tox -e docs | |
run_resonance_integration_test: | |
needs: [test] | |
if: | | |
success() && ( | |
github.event_name == 'schedule' || | |
(github.event_name == 'push' && github.ref == 'refs/heads/main') | |
) | |
runs-on: ${{ matrix.platform }} | |
environment: resonance-test # Keep the environment for secure secret management | |
strategy: | |
matrix: | |
platform: [ubuntu-latest, macos-latest, windows-latest] | |
python-version: ["3.9", "3.10", "3.11"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install -e ".[dev]" | |
python -m pip install tox-gh-actions==2.12.0 | |
- name: Run Resonance example integration test | |
run: tox -e test_resonance_example | |
env: | |
RESONANCE_API_KEY: ${{ secrets.RESONANCE_API_KEY }} |