docker-ci.yml
Home
/
.github /
workflows /
docker-ci.yml
name: Docker CI
on:
pull_request:
paths:
- ".github/workflows/docker-ci.yml"
- "Dockerfile"
- "pom.xml"
- "src/**"
push:
branches: [master, main]
paths:
- ".github/workflows/docker-ci.yml"
- "Dockerfile"
- "pom.xml"
- "src/**"
concurrency:
group: docker-ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v6.0.3
- uses: docker/setup-buildx-action@v4.1.0
- name: Build image
uses: docker/build-push-action@v7.2.0
with:
context: .
file: Dockerfile
tags: owl2vowl:ci
load: true
cache-from: type=gha
cache-to: type=gha,mode=max
- name: Smoke test
run: |
docker run -d --name owl2vowl-ci -p 8080:8080 owl2vowl:ci
for i in $(seq 1 40); do
if curl -sf http://127.0.0.1:8080/serverTimeStamp; then
echo "OK"
docker rm -f owl2vowl-ci
exit 0
fi
sleep 3
done
docker logs owl2vowl-ci
docker rm -f owl2vowl-ci
exit 1