Skip to content

e2e tests

e2e tests #13

Workflow file for this run

name: e2e tests azure
on:
workflow_dispatch:
pull_request:
jobs:
build:
name: build binary
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- uses: cachix/cachix-action@ad2ddac53f961de1989924296a1f236fcfbaa4fc # v15
with:
name: edgelesssys
authToken: ${{ secrets.CACHIX_AUTH_TOKEN }}
- name: Build
run: nix build .
test:
name: azure
needs:
- build
runs-on: ubuntu-latest
strategy:
matrix:
include:
- variant: "azure_private"
steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: cachix/install-nix-action@08dcb3a5e62fa31e2da3d490afc4176ef55ecd72 # v30
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- uses: cachix/cachix-action@ad2ddac53f961de1989924296a1f236fcfbaa4fc # v15
with:
name: edgelesssys
- name: Login to Azure
uses: ./.github/actions/login_azure
with:
azure_credentials: ${{ secrets.UPLOSI_AZURE_E2E_CREDENTIALS }}
- name: Create resource group override
id: rg
env:
variant: ${{ matrix.variant }}
run: |
uuid=$(cat /proc/sys/kernel/random/uuid)
uuid=${uuid:0:8}
resource_group="uplosi_e2e_${variant}_${uuid}"
echo "resource_group=${resource_group}" | tee -a "$GITHUB_OUTPUT"
mkdir -p ./testdata/uplosi.conf.d
cat <<EOF > ./testdata/uplosi.conf.d/0100-azure.conf
[variant.${variant}]
provider = "azure"
[variant.${variant}.azure]
resourceGroup = "${resource_group}"
sharedImageGallery = "{{.Name}}"
sharingProfile = "private"
EOF
cat ./testdata/uplosi.conf.d/0100-azure.conf
- name: Build minimal image
id: build
run: |
echo "img=$(./hack/build_image.sh)" | tee -a "$GITHUB_OUTPUT"
- name: Run e2e tests
working-directory: ./testdata
env:
variant: ${{ matrix.variant }}
img: ${{ steps.build.outputs.img }}
run: |
nix shell .# --command uplosi upload --enable-variant-glob "${variant}" "${img}"
- name: Delete resource group
if: always()
env:
rg: ${{ steps.rg.outputs.resource_group }}
run: |
az group delete --name "${rg}" --yes