blob: 06e68ac702f7a261b929f824778bee3e4344360f [file]
name: Fineract Liquibase Only mode - PostgreSQL
on:
workflow_call:
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-22.04
timeout-minutes: 60
services:
postgresql:
image: postgres:18.3
ports:
- 5432:5432
env:
POSTGRES_USER: root
POSTGRES_PASSWORD: postgres
options: --health-cmd="pg_isready -q -d postgres -U root" --health-interval=5s --health-timeout=2s --health-retries=3
env:
TZ: Asia/Kolkata
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
steps:
- name: Set up JDK 21
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5
with:
java-version: '21'
distribution: 'zulu'
- name: Download workspace
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
with:
name: fineract-workspace-${{ github.run_id }}
path: .
- name: Extract workspace
run: tar -xf fineract-workspace.tar
- name: Setup Gradle and Validate Wrapper
uses: gradle/actions/setup-gradle@0723195856401067f7a2779048b490ace7a47d7c # v5.0.2
with:
validate-wrappers: true
- name: Verify PostgreSQL connection
run: |
while ! pg_isready -d postgres -U root -h 127.0.0.1 -p 5432 ; do
sleep 1
done
- name: Initialise databases
run: |
./gradlew --no-daemon -q createPGDB -PdbName=fineract_tenants -x buildJavaSdk
./gradlew --no-daemon -q createPGDB -PdbName=fineract_default -x buildJavaSdk
- name: Run Fineract in Liquibase only mode
env:
FINERACT_DEFAULT_TENANTDB_CONN_PARAMS: ""
FINERACT_DEFAULT_TENANTDB_DESCRIPTION: "Default Demo Tenant"
FINERACT_DEFAULT_TENANTDB_HOSTNAME: "localhost"
FINERACT_DEFAULT_TENANTDB_IDENTIFIER: "default"
FINERACT_DEFAULT_TENANTDB_NAME: "fineract_default"
FINERACT_DEFAULT_TENANTDB_PORT: "5432"
FINERACT_DEFAULT_TENANTDB_PWD: "postgres"
FINERACT_DEFAULT_TENANTDB_TIMEZONE: "Asia/Kolkata"
FINERACT_DEFAULT_TENANTDB_UID: "root"
FINERACT_HIKARI_DRIVER_SOURCE_CLASS_NAME: "org.postgresql.Driver"
FINERACT_HIKARI_JDBC_URL: "jdbc:postgresql://localhost:5432/fineract_tenants"
FINERACT_HIKARI_PASSWORD: "postgres"
FINERACT_HIKARI_USERNAME: "root"
SPRING_PROFILES_ACTIVE: "liquibase-only"
run:
./gradlew --no-daemon fineract-provider:bootRun -x buildJavaSdk