Spaces:
Sleeping
Sleeping
name: Run Integration Tests | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
on: | |
push: | |
branches: | |
- main | |
paths-ignore: | |
- '**/*.md' | |
- 'frontend/**' | |
- 'docs/**' | |
- 'evaluation/**' | |
pull_request: | |
env: | |
PERSIST_SANDBOX : "false" | |
jobs: | |
integration-tests-on-linux: | |
name: Integration Tests on Linux | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ["3.11"] | |
sandbox: ["ssh", "exec", "local"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install poetry via pipx | |
run: pipx install poetry | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: 'poetry' | |
- name: Install Python dependencies using Poetry | |
run: poetry install | |
- name: Build Environment | |
run: make build | |
- name: Run Integration Tests | |
env: | |
SANDBOX_TYPE: ${{ matrix.sandbox }} | |
run: | | |
TEST_IN_CI=true TEST_ONLY=true ./tests/integration/regenerate.sh | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v4 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
integration-tests-on-mac: | |
name: Integration Tests on MacOS | |
runs-on: macos-13 | |
if: contains(github.event.pull_request.title, 'mac') || contains(github.event.pull_request.title, 'Mac') | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: ["3.11"] | |
sandbox: ["ssh"] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install poetry via pipx | |
run: pipx install poetry | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: 'poetry' | |
- name: Install Python dependencies using Poetry | |
run: poetry install | |
- name: Install & Start Docker | |
run: | | |
brew install colima docker | |
colima start | |
# For testcontainers to find the Colima socket | |
# https://github.com/abiosoft/colima/blob/main/docs/FAQ.md#cannot-connect-to-the-docker-daemon-at-unixvarrundockersock-is-the-docker-daemon-running | |
sudo ln -sf $HOME/.colima/default/docker.sock /var/run/docker.sock | |
- name: Build Environment | |
run: make build | |
- name: Run Integration Tests | |
env: | |
SANDBOX_TYPE: ${{ matrix.sandbox }} | |
run: | | |
TEST_IN_CI=true TEST_ONLY=true ./tests/integration/regenerate.sh | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v4 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |