Skip to content

add pdf presentation #78

add pdf presentation

add pdf presentation #78

Workflow file for this run

name: Build
on:
push:
branches:
- master
- release/*
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v3
with:
distribution: "corretto"
java-version: "17"
cache: "gradle"
- name: Validate
uses: pre-commit/action@v3.0.0
- name: Build project
uses: eskatos/gradle-command-action@v2
with:
arguments: clean build
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: jar
path: build/libs/*.jar
retention-days: 1
- name: Test Report
uses: mikepenz/action-junit-report@v4
if: success() || failure()
with:
report_paths: "**/build/test-results/test/TEST-*.xml"
test:
name: Test migration script
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
- uses: actions/download-artifact@v3
with:
name: jar
path: build/libs/
- name: Build images
timeout-minutes: 5
run: |
docker compose build
docker build \
--file liquibase-container/Dockerfile . \
--tag romanowalex/liquibase-container:latest
- name: Test migration container
id: test-migration
run: |
VERSION=$(grep -oE 'version=\S+' gradle.properties | cut -d '=' -f2)
echo "=== Run migration from to last version $VERSION ==="
docker compose up -d --wait
echo "=== Rollback all migrations ==="
docker run --rm \
--network database-migration \
romanowalex/liquibase-container:latest \
rollback --tag=v1.0 \
--url=jdbc:postgresql://postgres:5432/migration \
--username=program \
--password=test
- name: Stop containers
if: always()
continue-on-error: true
run: docker compose down -v
publish:
name: Publish to Docker Hub
runs-on: ubuntu-latest
needs: test
steps:
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_TOKEN }}
- uses: actions/download-artifact@v3
with:
name: jar
path: build/libs/
- name: Build images
timeout-minutes: 5
run: |
docker compose build
docker build \
--file liquibase-container/Dockerfile . \
--tag romanowalex/liquibase-container:latest
- name: Push images
run: |
docker compose push
docker push romanowalex/liquibase-container:latest