PoC commit for E2E tests #172
This file contains hidden or 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: Validate | |
on: | |
push: | |
branches: | |
- main | |
- dev | |
pull_request: | |
branches: | |
- main | |
- dev | |
jobs: | |
validate: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.9 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
- name: Run Linter | |
run: | | |
cd azure | |
flake8 . --count --show-source --statistics | |
- name: Run tests | |
run: | | |
pytest --ignore=samples-v2 | |
test-samples: | |
strategy: | |
matrix: | |
app_name: [blueprint, fan_in_fan_out, function_chaining] | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./samples-v2/${{ matrix.app_name }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.9 | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r requirements.txt | |
pip install -r ../../requirements.txt | |
pip install ../.. --no-cache-dir --upgrade --no-deps --force-reinstall | |
- name: Run tests | |
run: | | |
python -m pytest | |
e2e-azurestorage-linux: | |
runs-on: ubuntu-latest | |
env: | |
E2E_TEST_DURABLE_BACKEND: 'AzureStorage' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.11 | |
- name: Setup .NET Core | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: 8.0.x | |
- name: Set up Node.js (needed for Azurite) | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '18.x' # Azurite requires at least Node 18 | |
- name: Setup E2E tests | |
shell: pwsh | |
run: | | |
.\test\e2e\Tests\build-e2e-test.ps1 | |
- name: Build | |
working-directory: test/e2e/Tests | |
run: dotnet build | |
- name: Run E2E tests | |
working-directory: test/e2e/Tests | |
run: dotnet test --filter AzureStorage!=Skip | |
e2e-azurestorage-windows: | |
runs-on: windows-latest | |
env: | |
E2E_TEST_DURABLE_BACKEND: 'AzureStorage' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.11 | |
- name: Setup .NET Core | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: 8.0.x | |
- name: Set up Node.js (needed for Azurite) | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '18.x' # Azurite requires at least Node 18 | |
- name: Setup E2E tests | |
shell: pwsh | |
run: | | |
.\test\e2e\Tests\build-e2e-test.ps1 | |
- name: Build | |
working-directory: test/e2e/Tests | |
run: dotnet build | |
- name: Run E2E tests | |
working-directory: test/e2e/Tests | |
run: dotnet test --filter AzureStorage!=Skip | |
e2e-mssql: | |
runs-on: ubuntu-latest | |
env: | |
E2E_TEST_DURABLE_BACKEND: "MSSQL" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.11 | |
- name: Setup .NET Core | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: 8.0.x | |
- name: Initialize Environment Variables | |
run: | | |
echo "MSSQL_SA_PASSWORD=TEST12_$(echo $RANDOM)!" >> $GITHUB_ENV | |
- name: Setup E2E tests | |
shell: pwsh | |
run: | | |
.\test\e2e\Tests\build-e2e-test.ps1 -StartMSSqlContainer | |
- name: Build | |
working-directory: test/e2e/Tests | |
run: dotnet build | |
- name: Run E2E tests | |
working-directory: test/e2e/Tests | |
run: dotnet test --filter MSSQL!=Skip | |
e2e-dts: | |
runs-on: ubuntu-latest | |
env: | |
E2E_TEST_DURABLE_BACKEND: "azureManaged" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.11 | |
- name: Setup .NET Core | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: 8.0.x | |
- name: Setup E2E tests | |
shell: pwsh | |
run: | | |
.\test\e2e\Tests\build-e2e-test.ps1 -StartDTSContainer | |
- name: Build | |
working-directory: test/e2e/Tests | |
run: dotnet build | |
- name: Run E2E tests | |
working-directory: test/e2e/Tests | |
run: dotnet test --logger "console;verbosity=detailed" --filter DTS!=Skip |