Skip to content

Build & Push Mediator #33

Build & Push Mediator

Build & Push Mediator #33

name: Build & Push Mediator
on:
workflow_dispatch:
push:
branches:
- 'master'
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 17
uses: actions/setup-java@v2
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- name: Install yq
run: |
wget -qO ./yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64
chmod u+x ./yq
- name: Get runner version
run: echo "IMAGE_TAG=$(./yq '.images[1].newTag' k8s/overlays/dev/kustomization.yaml)" >> $GITHUB_ENV
- name: Build with Gradle
run: ./gradlew :mediator:jar
- name: Build Docker image
working-directory: ./mediator
run: docker build -t musiek/mediator:${{ env.IMAGE_TAG }} -t musiek/mediator:latest .
- name: Log in to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_LOGIN }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Push Docker image
run: |
docker push musiek/mediator:${{ env.IMAGE_TAG }}
docker push musiek/mediator:latest