test_windows #127
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: test_windows | |
on: | |
pull_request: | |
branches: | |
- main | |
workflow_dispatch: | |
jobs: | |
build: | |
# Execution strategy | |
strategy: | |
fail-fast: false | |
matrix: | |
python: ['3.9', '3.10'] | |
forest-sdk-version: [2.23.0] | |
# Run on a Windows machine | |
runs-on: windows-latest | |
steps: | |
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it | |
- uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
# Python setup | |
- name: Set up Python | |
uses: actions/setup-python@v3 | |
with: | |
python-version: ${{ matrix.python }} | |
# Install MSBUILD ( Required to compile matplotlib ) | |
- name: Add msbuild to PATH | |
uses: microsoft/[email protected] | |
# Install OpenQAOA | |
- name: Install OpenQAOA | |
shell: pwsh | |
run: | | |
python -m venv env | |
.\env\Scripts\Activate.ps1 | |
python -m pip install --upgrade pip | |
pip install --upgrade setuptools | |
pip install wheel | |
make dev-install-tests | |
pip install ipykernel | |
# Install Rigetti Forest SDK and launch QUILC + QVM services | |
- name: Install Rigetti Forest SDK | |
shell: pwsh | |
run: | | |
echo "Downloading Rigetti Forest SDK" | |
Invoke-WebRequest -Uri https://downloads.rigetti.com/qcs-sdk/forest-sdk-${{matrix.forest-sdk-version}}.msi -OutFile forest-sdk-${{matrix.forest-sdk-version}}.msi | |
echo "Installing Rigetti Forest SDK" | |
Start-Process -Wait -FilePath "./forest-sdk-${{matrix.forest-sdk-version}}.msi" -ArgumentList "/passive","/log log.txt","/qn","License=YES" -PassThru | |
echo "Starting QUILC and QVM" | |
Start-Process -FilePath "C:\Program Files\Rigetti Computing\Forest SDK for Windows\quilc.exe" -ArgumentList "-S" -PassThru | |
Start-Process -FilePath "C:\Program Files\Rigetti Computing\Forest SDK for Windows\qvm.exe" -ArgumentList "-S" -PassThru | |
# Run all tests | |
- name: Run tests | |
shell: pwsh | |
run: | | |
.\env\Scripts\Activate.ps1 | |
ipython kernel install --name "env" --user | |
pytest tests/ src/*/tests -m 'not (qpu or api or docker_aws or braket_api or sim or cplex)' | |
Get-ChildItem -Directory | ForEach-Object { pytest $_.FullName -m 'not (qpu or api or docker_aws or braket_api or sim or cplex)'} |