Merge pull request #246 from entur/github-action #5
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI Build | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
tests: | |
runs-on: ubuntu-latest | |
env: | |
TZ: Europe/Oslo | |
steps: | |
- uses: actions/checkout@v3 | |
# nodejs is needed because the dynamic download of it via the prettier maven plugin often | |
# times out | |
# Example: https://github.com/opentripplanner/OpenTripPlanner/actions/runs/4490450225/jobs/7897533439 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 18 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: temurin | |
cache: maven | |
- name: Run tests | |
run: | | |
sudo timedatectl set-timezone "Europe/Oslo" | |
mvn --batch-mode jacoco:prepare-agent test jacoco:report -Dprettier.nodePath=node -Dprettier.npmPath=npm | |
image: | |
# only build and push the image when it's a commit to master in Entur's repository | |
if: github.repository_owner == 'entur' && github.event_name == 'push' | |
runs-on: ubuntu-latest | |
needs: [ tests ] | |
env: | |
CONTAINER_REPO: docker.io/entur/lamassu | |
CONTAINER_REGISTRY_USER: ${{ secrets.DOCKERHUB_LOGIN }} | |
CONTAINER_REGISTRY_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: temurin | |
cache: maven | |
- name: Build container image with Jib, push to Github Container Repo | |
run: | | |
image_date=`date +%Y-%m-%dT%H-%M` | |
mvn --batch-mode compile com.google.cloud.tools:jib-maven-plugin:build -Djib.to.tags=latest,$image_date -Dmaven.test.skip -P prettierSkip |