63 lines
1.9 KiB
YAML
63 lines
1.9 KiB
YAML
name: 'Setup ARC E2E Test Action'
|
|
description: 'Build controller image, create kind cluster, load the image, and exchange ARC configure token.'
|
|
|
|
inputs:
|
|
app-id:
|
|
description: 'GitHub App Id for exchange access token'
|
|
required: true
|
|
app-pk:
|
|
description: "GitHub App private key for exchange access token"
|
|
required: true
|
|
image-name:
|
|
description: "Local docker image name for building"
|
|
required: true
|
|
image-tag:
|
|
description: "Tag of ARC Docker image for building"
|
|
required: true
|
|
target-org:
|
|
description: "The test organization for ARC e2e test"
|
|
required: true
|
|
|
|
outputs:
|
|
token:
|
|
description: 'Token to use for configure ARC'
|
|
value: ${{steps.config-token.outputs.token}}
|
|
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
with:
|
|
# Pinning v0.9.1 for Buildx and BuildKit v0.10.6
|
|
# BuildKit v0.11 which has a bug causing intermittent
|
|
# failures pushing images to GHCR
|
|
version: v0.9.1
|
|
driver-opts: image=moby/buildkit:v0.10.6
|
|
|
|
- name: Build controller image
|
|
uses: docker/build-push-action@v5
|
|
with:
|
|
file: Dockerfile
|
|
platforms: linux/amd64
|
|
load: true
|
|
build-args: |
|
|
DOCKER_IMAGE_NAME=${{inputs.image-name}}
|
|
VERSION=${{inputs.image-tag}}
|
|
tags: |
|
|
${{inputs.image-name}}:${{inputs.image-tag}}
|
|
no-cache: true
|
|
|
|
- name: Create minikube cluster and load image
|
|
shell: bash
|
|
run: |
|
|
minikube start
|
|
minikube image load ${{inputs.image-name}}:${{inputs.image-tag}}
|
|
|
|
- name: Get configure token
|
|
id: config-token
|
|
uses: peter-murray/workflow-application-token-action@dc0413987a085fa17d19df9e47d4677cf81ffef3
|
|
with:
|
|
application_id: ${{ inputs.app-id }}
|
|
application_private_key: ${{ inputs.app-pk }}
|
|
organization: ${{ inputs.target-org}} |