Skip to content

Commit

Permalink
ci: add github actions workflow to test self hosted runner
Browse files Browse the repository at this point in the history
  • Loading branch information
anjannath committed Oct 21, 2024
1 parent 8d5f496 commit 36fb8c4
Show file tree
Hide file tree
Showing 2 changed files with 106 additions and 24 deletions.
47 changes: 23 additions & 24 deletions .github/workflows/build-oci.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
name: oci-builds

on:
workflow_call:
push:
branches: [ main ]
tags:
Expand All @@ -17,34 +18,32 @@ jobs:
uses: actions/checkout@v4

- name: Build image for PR
if: ${{ github.event_name == 'pull_request' }}
shell: bash
run: |
IMG=ghcr.io/redhat-developer/mapt:pr-${{ github.event.number }} make oci-build
podman save -o mapt.tar ghcr.io/redhat-developer/mapt:pr-${{ github.event.number }}
echo "ghcr.io/redhat-developer/mapt:pr-${{ github.event.number }}" > mapt-image
IMG=ghcr.io/redhat-developer/mapt:pr make oci-build
podman save -o mapt.tar ghcr.io/redhat-developer/mapt:pr
- name: Save image for PR
uses: actions/upload-artifact@v4
with:
name: mapt
path: mapt*
name: mapt-pr
path: mapt.tar

- name: Build image
if: ${{ github.event_name != 'pull_request' }}
shell: bash
run: make oci-build

- name: Log in to quay.io Registry
if: ${{ github.event_name != 'pull_request' }}
uses: redhat-actions/podman-login@v1
with:
registry: quay.io
username: ${{ secrets.QUAY_IO_USERNAME }}
password: ${{ secrets.QUAY_IO_PASSWORD }}

- name: Push image
if: ${{ github.event_name != 'pull_request' }}
shell: bash
run: make oci-push
# - name: Build image
# if: ${{ github.event_name != 'pull_request' }}
# shell: bash
# run: make oci-build
#
# - name: Log in to quay.io Registry
# if: ${{ github.event_name != 'pull_request' }}
# uses: redhat-actions/podman-login@v1
# with:
# registry: quay.io
# username: ${{ secrets.QUAY_IO_USERNAME }}
# password: ${{ secrets.QUAY_IO_PASSWORD }}
#
# - name: Push image
# if: ${{ github.event_name != 'pull_request' }}
# shell: bash
# run: make oci-push
#
83 changes: 83 additions & 0 deletions .github/workflows/hosted-runner.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
name: hosted-runner

on:
pull_request: {}
push:
branches:
- main
- '*'

jobs:
call-oci-build:
uses: ./.github/workflows/build-oci.yaml
provision_runner:
needs: call-oci-build
name: provision-runner
runs-on: ubuntu-24.04
steps:
- name: Download oci-builds artifact
uses: actions/download-artifact@v4
with:
name: mapt-pr
run-id: ${{ github.event.workflow_run.id }}
github-token: ${{ github.token }}
- name: Import downloaded mapt image
run: podman load -i mapt.tar
- name: Podman images
run: podman images
# - name: Code checkout
# uses: actions/checkout@v4
# - name: Set up Go
# uses: actions/setup-go@v5
# with:
# go-version: '1.21'
# - name: Build
# run: make build
# - name: Test
# run: go test -v ./...
# - name: Run mapt
# run: |
# export ARM_CLIENT_ID=${{ secrets.arm_client_id }}
# export ARM_CLIENT_SECRET=${{ secrets.arm_client_secret }}
# export ARM_TENANT_ID=${{ secrets.arm_tenant_id }}
# export ARM_SUBSCRIPTION_ID=${{ secrets.arm_subscription_id }}
# mkdir $HOME/workspace
# ./out/mapt create azure ${{ inputs.operating_system }} create --spot --project-name "az-ghrunner" \
# --backed-url "file://$HOME/workspace" --install-ghactions-runner --ghactions-runner-name "az-runner-${{ inputs.operating_system }}" \
# --ghactions-runner-repo ${{ inputs.repository }} --ghactions-runner-token ${{ secrets.runner_registration_token }}

# test_run_selfhosted_runner:
# runs-on: az-runner-${{ inputs.operating_system }}
# needs: provision_runner
# steps:
# - name: Code checkout
# uses: actions/checkout@v4
# - name: Set up Go
# uses: actions/setup-go@v5
# with:
# go-version: '1.21'
# - name: Build
# run: make build
# - name: Test
# run: go test -v ./...
#
# remove_cloud_instance:
# runs-on: ubuntu-24.04
# steps:
# - name: Code checkout
# uses: actions/checkout@v4
# - name: Set up Go
# uses: actions/setup-go@v5
# with:
# go-version: '1.21'
# - name: Build
# run: make build
# - name: Destroy instance
# run: |
# export ARM_CLIENT_ID=${{ secrets.arm_client_id }}
# export ARM_CLIENT_SECRET=${{ secrets.arm_client_secret }}
# export ARM_TENANT_ID=${{ secrets.arm_tenant_id }}
# export ARM_SUBSCRIPTION_ID=${{ secrets.arm_subscription_id }}
# ./out/mapt create azure ${{ inputs.operating_system }} destroy --project-name "az-ghrunner" \
# --backed-url "file://$HOME/workspace"
#

0 comments on commit 36fb8c4

Please sign in to comment.