name: Publish Docker Image
on:
push:
branches: ["master"]
paths-ignore:
- .gitignore
- README.md
- LICENSE
jobs:
docker:
strategy:
matrix:
arch: [ "ubuntu-latest" ]
git-version: [ "2.44.0" ]
java-version: [ "17" ]
maven-version: [ "3.8.5" ]
runs-on: ${{ matrix.arch }}
# Steps to run
steps:
# Checkout the repo
- name: Checkout
uses: actions/checkout@v4
# Setup Java and Maven
- name: Set up JDK and Maven
uses: s4u/setup-maven-action@v1.12.0
with:
java-version: ${{ matrix.java-version }}
distribution: "zulu"
maven-version: ${{ matrix.maven-version }}
# Run JUnit Tests
- name: Run Tests
run: mvn --batch-mode test -q
# Login to Docker Hub
- name: Login to Repo
uses: docker/login-action@v3
username: ${{ secrets.REPO_USERNAME }}
password: ${{ secrets.REPO_TOKEN }}
# Build the Docker image
- name: Build Docker Image
uses: docker/build-push-action@v5
push: true
context: .
tags: fascinated/paste-backend:latest