build: Make the Windows Guest Test always pass on PR builds

When running with the merge queue the tests will be fully executed.

Signed-off-by: Rob Bradford <rbradford@rivosinc.com>
This commit is contained in:
Rob Bradford 2024-02-28 11:54:27 +00:00
parent cb8a728dfb
commit f15ca1aec3

View File

@ -1,16 +1,18 @@
name: Cloud Hypervisor Tests (Windows Guest) name: Cloud Hypervisor Tests (Windows Guest)
on: [merge_group] on: [merge_group, pull_request]
jobs: jobs:
build: build:
name: Tests (Windows Guest) name: Tests (Windows Guest)
runs-on: garm-jammy runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-latest' || 'garm-jammy' }}
steps: steps:
- name: Code checkout - name: Code checkout
if: ${{ github.event_name != 'pull_request' }}
uses: actions/checkout@v4 uses: actions/checkout@v4
with: with:
fetch-depth: 0 fetch-depth: 0
- name: Install Docker - name: Install Docker
if: ${{ github.event_name != 'pull_request' }}
run: | run: |
sudo apt-get update sudo apt-get update
sudo apt-get -y install ca-certificates curl gnupg sudo apt-get -y install ca-certificates curl gnupg
@ -20,6 +22,7 @@ jobs:
sudo apt-get update sudo apt-get update
sudo apt install -y docker-ce docker-ce-cli sudo apt install -y docker-ce docker-ce-cli
- name: Install Azure CLI - name: Install Azure CLI
if: ${{ github.event_name != 'pull_request' }}
run: | run: |
sudo apt install -y ca-certificates curl apt-transport-https lsb-release gnupg sudo apt install -y ca-certificates curl apt-transport-https lsb-release gnupg
curl -sL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/microsoft.gpg > /dev/null curl -sL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/microsoft.gpg > /dev/null
@ -27,12 +30,18 @@ jobs:
sudo apt update sudo apt update
sudo apt install -y azure-cli sudo apt install -y azure-cli
- name: Download Windows image - name: Download Windows image
if: ${{ github.event_name != 'pull_request' }}
run: | run: |
mkdir $HOME/workloads mkdir $HOME/workloads
az storage blob download --container-name private-images --file "$HOME/workloads/windows-server-2022-amd64-2.raw" --name windows-server-2022-amd64-2.raw --connection-string "${{ secrets.CH_PRIVATE_IMAGES }}" az storage blob download --container-name private-images --file "$HOME/workloads/windows-server-2022-amd64-2.raw" --name windows-server-2022-amd64-2.raw --connection-string "${{ secrets.CH_PRIVATE_IMAGES }}"
- name: Run Windows guest integration tests - name: Run Windows guest integration tests
if: ${{ github.event_name != 'pull_request' }}
timeout-minutes: 15 timeout-minutes: 15
run: scripts/dev_cli.sh tests --integration-windows run: scripts/dev_cli.sh tests --integration-windows
- name: Run Windows guest integration tests for musl - name: Run Windows guest integration tests for musl
if: ${{ github.event_name != 'pull_request' }}
timeout-minutes: 15 timeout-minutes: 15
run: scripts/dev_cli.sh tests --integration-windows --libc musl run: scripts/dev_cli.sh tests --integration-windows --libc musl
- name: Skipping build for PR
if: ${{ github.event_name == 'pull_request' }}
run: echo "Skipping build for PR"