Skip to content

Release

Release #15

Workflow file for this run

name: "Release"
on:
push:
tags:
- '**'
branches-ignore:
- "**"
jobs:
build:
runs-on: ubuntu-latest
env:
MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version"
services:
mysql:
image: mariadb:10.1
ports:
- 3306:3306
env:
MYSQL_ROOT_PASSWORD: 123456
options: >-
--health-cmd="mysqladmin ping"
--health-interval=5s
--health-timeout=2s
--health-retries=3
postgres:
image: postgres:9.6
ports:
- 5432:5432
env:
POSTGRES_PASSWORD: 123456
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up JDK 8
uses: actions/setup-java@v3
with:
java-version: 8
distribution: 'adopt'
- name: Cache
uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-
- name: Run Tests
run: mvn $MAVEN_CLI_OPTS -Dtestng.groups="travis-ci" test
env:
DPT_MYSQL_USER: "root"
DPT_MYSQL_PASS: "123456"
DPT_MYSQL_PORT: ${{ job.services.mysql.ports[3306] }}
DPT_POSTGRESQL_USER: "postgres"
DPT_POSTGRESQL_PASS: "123456"
DPT_POSTGRESQL_PORT: ${{ job.services.postgres.ports[5432] }}
PGPASSWORD: '123456'
deploy:
needs: build
runs-on: ubuntu-latest
env:
MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version"
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Set up JDK 8
uses: actions/setup-java@v3
with:
java-version: 8
distribution: 'adopt'
- name: Cache
uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-
- name: Deploy to GitHub packages
run: mvn $MAVEN_CLI_OPTS clean package deploy -Dmaven.test.skip=true -Pdefault
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Get the version
id: get_version
run: echo ::set-output name=VERSION::$(echo $GITHUB_REF | cut -d / -f 3 | cut -c2-)
- name: Upload DBPTK Developer to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: dbptk-core/target/dbptk-app-${{ steps.get_version.outputs.VERSION }}.jar
asset_name: dbptk-app-${{ steps.get_version.outputs.VERSION }}.jar
tag: ${{ github.ref }}
release_name: Version ${{ steps.get_version.outputs.VERSION }}