Skip to content

47 create a ledgers deposit account rest client #77

47 create a ledgers deposit account rest client

47 create a ledgers deposit account rest client #77

Workflow file for this run

name: Develop CI
on:
# Trigger the workflow when a pull request is opened
pull_request:
branches:
- develop
push:
branches:
- develop
env:
SONAR_PRJ_KEY: adorsys_ledgers
SONAR_ORG: adorsys
SONAR_HOST: https://sonarcloud.io
GPG_EXECUTABLE: ${{ secrets.GPG_EXECUTABLE }}
GPG_SECRET_KEY: ${{ secrets.GPG_SECRET_KEY}}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
jobs:
build:
name: Build Ledgers (openjdk 17)
runs-on: ubuntu-latest
steps:
- name: Clone ledgers develop repository
uses: actions/checkout@v2
- name: Set up JDK 17 for x64
uses: actions/setup-java@v1
with:
java-version: 17
architecture: x64
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Build Ledgers
run: mvn -ntp -DskipTests -DskipITs -Dmaven.javadoc.skip=true clean install
javaDoc:
needs: build
name: Generate Javadocs
runs-on: ubuntu-latest
steps:
- name: Clone ledgers develop repository
uses: actions/checkout@v2
- name: Set up JDK 17 for x64
uses: actions/setup-java@v1
with:
java-version: 17
architecture: x64
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Compile before generate Javadocs
run: mvn -ntp -DskipTests -DskipITs -Dmaven.javadoc.skip=true clean install
- name: Generate javadocs
run: mvn -ntp javadoc:javadoc
pmdCheck:
needs: build
name: Run code analyser PMD
runs-on: ubuntu-latest
steps:
- name: Clone ledgers develop repository
uses: actions/checkout@v2
- name: Set up JDK 17 for x64
uses: actions/setup-java@v1
with:
java-version: 17
architecture: x64
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: build project before check
run: mvn -ntp -DskipTests -DskipITs -Dmaven.javadoc.skip=true clean install
- name: Check pmd
run: mvn -ntp pmd:check
UItests:
needs: build
name: Run UI tests
runs-on: ubuntu-latest
steps:
- name: Clone ledgers develop repository
uses: actions/checkout@v2
- name: Set up JDK 17 for x64
uses: actions/setup-java@v1
with:
java-version: 17
architecture: x64
- name: Cache Maven packages
uses: actions/cache@v2
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Run UI tests
run: mvn -ntp -DskipITs --fail-at-end clean install
# integrationTests:
# name: Integration Tests
# runs-on: ubuntu-latest
# env:
# TESTCONTAINERS_RYUK_DISABLED: 'true'
# steps:
# - name: Set up JDK 17 with Maven
# uses: actions/setup-java@v1
# with:
# java-version: 17
# architecture: x64
# distribution: 'sapmachine'
#
# - name: Cache Maven dependencies
# uses: actions/cache@v2
# with:
# path: ~/.m2
# key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
# restore-keys: ${{ runner.os }}-m2
#
# - name: Checkout repository
# uses: actions/checkout@v2
#
# - name: Print Java Heap and RAM Info
# run: java -XX:+PrintFlagsFinal -version | grep -Ei "maxheapsize|maxram"
#
# - name: Run Maven Integration Tests
# run: mvn -ntp clean test-compile failsafe:integration-test failsafe:verify --fail-at-end --errors
#
# - name: Check Maven Exit Code
# run: echo $?
#
# - name: Upload Failsafe Reports
# uses: actions/upload-artifact@v3
# with:
# name: ${{ github.event.repository.name }}-${{ github.ref_name }}-failsafe-reports
# path: "**/target/failsafe-reports/*"
# retention-days: 10
# sonar:
# name: Publish code coverage to Sonar Cloud
# needs: build
# runs-on: ubuntu-latest
# steps:
# - name: Clone ledgers develop repository
# uses: actions/checkout@v2
#
# - name: Set up JDK 17 for x64
# uses: actions/setup-java@v1
# with:
# java-version: 17
# architecture: x64
#
# - name: Cache Maven packages
# uses: actions/cache@v2
# with:
# path: ~/.m2
# key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
# restore-keys: ${{ runner.os }}-m2
#
# - name: Publish to sonarcloud
# run: >
# mvn
# -ntp
# clean
# org.jacoco:jacoco-maven-plugin:prepare-agent
# install
# sonar:sonar
# -Pcoverage
# -Dsonar.host.url=${{ env.SONAR_HOST }}
# -Dsonar.projectKey=${{ env.SONAR_PRJ_KEY }}
# -Dsonar.organization=${{ env.SONAR_ORG }}
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
#
# deployMavenCentral:
# name: Publish ledgers artifacts to Maven Central
# needs: [build, UItests]
# runs-on: ubuntu-latest
# steps:
# - name: Clone ledgers develop repository
# uses: actions/checkout@v2
#
# - name: Set up JDK 17 for x64
# uses: actions/setup-java@v1
# with:
# java-version: 17
# architecture: x64
#
# - name: Cache Maven packages
# uses: actions/cache@v2
# with:
# path: ~/.m2
# key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
# restore-keys: ${{ runner.os }}-m2
#
# - name: Publish to Maven Central
# run: |
# gpg --version
# export GPG_TTY="$( tty )" #need to run to sign artifacts with maven
# echo ${{ secrets.GPG_SECRET_KEY }} | base64 --decode | gpg --import --batch
# echo ${{ secrets.GPG_OWNERTRUST }} | base64 --decode | gpg --batch --import-ownertrust
# mvn -ntp --settings scripts/mvn-release-settings.xml \
# -Dhttp.keepAlive=false \
# -Dmaven.wagon.http.pool=false \
# -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 \
# -Prelease -DskipTests -U deploy
# shell: bash