Actions workflow (#601)

Signed-off-by: Dan Schaper <dan@glacialmagma.com>
This commit is contained in:
Dan Schaper 2022-01-12 14:49:34 -08:00 committed by GitHub
parent 0a927fd320
commit f9977d5ce6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

54
.github/workflows/build-deploy.yml vendored Normal file
View File

@ -0,0 +1,54 @@
name: Maven CI/CD
on:
push:
branches: [master]
workflow_dispatch:
jobs:
build_and_publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v2
with:
java-version: "11"
distribution: "temurin"
cache: maven
- name: Build with Maven
run: mvn -Pprod -DskipTests clean install
- name: Upload war artifact
uses: actions/upload-artifact@v2
with:
name: docs-web-ci.war
path: docs-web/target/docs*.war
build_docker_image:
name: Publish to Docker Hub
runs-on: ubuntu-latest
needs: [build_and_publish]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Download war artifact
uses: actions/download-artifact@v2
with:
name: docs-web-ci.war
path: docs-web/target
- name: Setup up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
id: docker_build
uses: docker/build-push-action@v2
with:
context: .
push: true
tags: ${{ secrets.DOCKERHUB_USERNAME }}/docs:latest