Merge branch 'bugfix/HHE_fixed_spring_security' into 'develop' #203
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Develop CI | |
on: | |
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 1.11) | |
runs-on: ubuntu-latest | |
steps: | |
- name: Clone ledgers develop repository | |
uses: actions/checkout@v2 | |
- name: Set up JDK 11 for x64 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 1.11 | |
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 11 for x64 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 1.11 | |
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 11 for x64 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 1.11 | |
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 11 for x64 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 1.11 | |
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 | |
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 11 for x64 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 1.11 | |
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 11 for x64 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 1.11 | |
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 |