Skip to content

Change to quay login #19

Change to quay login

Change to quay login #19

Workflow file for this run

# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-maven
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
name: Build gateway artifact
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
uses: actions/setup-java@v3
with:
java-version: '8'
distribution: 'temurin'
cache: maven
- name: Run Tests
working-directory: ./gateway
run: mvn test --file pom.xml
build-artifact:
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 8
uses: actions/setup-java@v3
with:
java-version: '8'
distribution: 'temurin'
cache: maven
- name: Build with Maven
working-directory: ./gateway
run: mvn -B package -DskipTests --file pom.xml
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: artifact
path: ./gateway/target/gateway-2.0.0-SNAPSHOT-exec.jar
retention-days: 1
build-and-push-image:
needs: build-artifact
environment: prod
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: artifact
path: ./gateway/target
- name: Build and publish image to Quay
uses: docker/build-push-action@v1
with:
path: 'gateway'
registry: 'quay.io'
repository: 'openshiftlabs/app-mod-gateway'
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
tags: 'latest'