Continuous Integration - Daily #114
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 - Daily | |
on: | |
schedule: | |
# Checks out main by default. | |
- cron: '0 0 * * *' | |
concurrency: | |
group: ${{ github.workflow }} | |
cancel-in-progress: true | |
jobs: | |
pytest: | |
name: Pytest Ubuntu | |
strategy: | |
matrix: | |
python-version: ['3.9', '3.10', '3.11'] | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
architecture: 'x64' | |
- uses: actions/cache@v2 | |
with: | |
path: ${{ env.pythonLocation }} | |
key: ${{ env.pythonLocation }}-${{ hashFiles('**/requirements.txt', 'dev_tools/requirements/**/*.txt') }} | |
- name: Install requirements | |
run: | | |
pip install --pre cirq && | |
pip install \ | |
-r dev_tools/requirements/deps/format.txt \ | |
-r dev_tools/requirements/deps/pylint.txt \ | |
-r dev_tools/requirements/deps/pytest.txt | |
- name: Run Quil dependencies | |
run: docker-compose -f cirq-rigetti/docker-compose.test.yaml up -d | |
- name: Pytest check | |
run: check/pytest -n auto --ignore=cirq-core/cirq/contrib --rigetti-integration --enable-slow-tests | |
- name: Stop Quil dependencies | |
run: docker-compose -f cirq-rigetti/docker-compose.test.yaml down | |
windows: | |
name: Pytest Windows | |
strategy: | |
matrix: | |
python-version: ['3.9', '3.10', '3.11'] | |
runs-on: windows-2019 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
architecture: 'x64' | |
- uses: actions/cache@v2 | |
with: | |
path: ${{ env.pythonLocation }} | |
key: ${{ env.pythonLocation }}-${{ hashFiles('**/requirements.txt', 'dev_tools/requirements/**/*.txt') }} | |
- name: Install requirements | |
run: | | |
pip install --pre cirq && | |
pip install -r dev_tools/requirements/deps/format.txt && | |
pip install -r dev_tools/requirements/deps/pylint.txt && | |
pip install -r dev_tools/requirements/deps/pytest.txt | |
- name: Pytest Windows | |
run: check/pytest -n auto --ignore=cirq-core/cirq/contrib --enable-slow-tests | |
shell: bash | |
macos: | |
name: Pytest MacOS | |
strategy: | |
matrix: | |
python-version: ['3.9', '3.10', '3.11'] | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
architecture: 'x64' | |
- uses: actions/cache@v2 | |
with: | |
path: ${{ env.pythonLocation }} | |
key: ${{ env.pythonLocation }}-${{ hashFiles('**/requirements.txt', 'dev_tools/requirements/**/*.txt') }} | |
- name: Install requirements | |
run: | | |
pip install --pre cirq && | |
pip install \ | |
-r dev_tools/requirements/deps/format.txt \ | |
-r dev_tools/requirements/deps/pylint.txt \ | |
-r dev_tools/requirements/deps/pytest.txt \ | |
-r dev_tools/requirements/deps/notebook.txt | |
- name: Pytest check | |
run: check/pytest -n auto --ignore=cirq-core/cirq/contrib --enable-slow-tests |