Skip to content

Commit

Permalink
Test workflow to avoid having to build a new image everytime.
Browse files Browse the repository at this point in the history
  • Loading branch information
cjcolvar authored Aug 14, 2023
1 parent 7e018a4 commit a9d0eb1
Showing 1 changed file with 44 additions and 0 deletions.
44 changes: 44 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Builds image and stores in ghcr.io then sends webhook to deploy new image
name: Podman Image CI

on:
push:
branches: [ "cjcolvar-patch-4" ]

env:
GHCR_USER: ${{ github.actor }}
GHCR_PASSWORD: ${{ github.token }}
GHCR_IMAGE_REGISTRY: ghcr.io/avalonmediasystem
DOCKERHUB_IMAGE_REGISTRY: docker.io/avalonmediasystem
DOCKERHUB_USER: ${{ secrets.dockerhub_user }}
DOCKERHUB_PASSWORD: ${{ secrets.dockerhub_password }}
IMAGE_TAG: ${{ fromJSON('{"refs/heads/main":"production","refs/heads/develop":"develop","refs/heads/staging":"staging","refs/heads/sandbox":"sandbox","refs/heads/cjcolvar-patch-4":"develop"}')[github.ref] }}
BRANCH: ${{ fromJSON('{"refs/heads/main":"main","refs/heads/develop":"develop","refs/heads/staging":"staging","refs/heads/sandbox":"sandbox","refs/heads/cjcolvar-patch-4":"develop"}')[github.ref] }}
BUILD_TARGET: ${{ fromJSON('{"refs/heads/main":"prod","refs/heads/develop":"dev","refs/heads/staging":"prod","refs/heads/sandbox":"prod","refs/heads/cjcolvar-patch-4":"dev"}')[github.ref] }}

jobs:

build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Determine develop image tags
if: ${{ env.IMAGE_TAG == 'develop' }}
id: determine_dockerhub_tags
run: |
AVALON_VERSION=`script/avalon_image_tags.rb -t`
echo "AVALON_VERSION=${AVALON_VERSION}" >> "$GITHUB_OUTPUT"
AVALON_TAGS=`script/avalon_image_tags.rb --branch ${BRANCH} -a ${AVALON_VERSION}-dev`
echo "tags=${AVALON_TAGS}" >> "$GITHUB_OUTPUT"
- name: Develop Push To Dockerhub
if: ${{ env.IMAGE_TAG == 'develop' }}
uses: redhat-actions/push-to-registry@v2
with:
image: ${{ steps.build_image.outputs.image }}
tags: ${{ steps.determine_dockerhub_tags.outputs.tags }}
registry: ${{ env.DOCKERHUB_IMAGE_REGISTRY }}
username: ${{ env.DOCKERHUB_USER }}
password: ${{ env.DOCKERHUB_PASSWORD }}
extra-args: |
--disable-content-trust

0 comments on commit a9d0eb1

Please sign in to comment.