Skip to content

Add IT test

Add IT test #42

Workflow file for this run

name: Build
on:
push:
pull_request:
branches: [ master ]
jobs:
build-maven:
runs-on: ${{ matrix.os }}
strategy:
matrix:
java: [ '8', '11', '17', '21' ]
os: [ 'ubuntu-latest', 'macos-latest', 'windows-latest' ]
fail-fast: false
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
- name: Java ${{ matrix.Java }} (${{ matrix.os }})
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
distribution: 'temurin'
- name: Cache Maven packages
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-m2-repository-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2-repository
- name: Build with Maven
env:
MAVEN_OPTS: -Dhttps.protocols=TLSv1.2 -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.requestSentEnabled=true -Dmaven.wagon.http.retryHandler.count=10
run: mvn --batch-mode --errors --update-snapshots verify --file pom.xml
- name: Test on Unix
if: runner.os != 'Windows'
run: |
if [ "$RUNNER_OS" == "Linux" ]; then
sudo apt-get install jsvc
else
brew install jsvc
fi
unzip OpenICF-java-framework/openicf-zip/target/openicf-*.zip
openicf/bin/ConnectorServer.sh
openicf/bin/openicf.sh start
openicf/bin/openicf.sh stop
openicf/bin/ConnectorServer.sh /run &
- name: Test on Windows
if: runner.os == 'Windows'
run: |
unzip OpenICF-java-framework/openicf-zip/target/openicf-*.zip
openicf\bin\ConnectorServer.bat
openicf\bin\ConnectorServer.bat /install openicf
START /B CMD /C CALL "openicf\bin\ConnectorServer.bat" /run
- name: Upload failure artifacts
uses: actions/upload-artifact@v4
if: ${{ failure() }}
with:
name: failure-${{ matrix.os }}-${{ matrix.java }}
retention-days: 1
path: |
**
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}-${{ matrix.java }}
retention-days: 5
path: |
OpenICF-java-framework/openicf-zip/target/*.zip
OpenICF-csvfile-connector/target/*.jar
OpenICF-databasetable-connector/target/*.jar
OpenICF-groovy-connector/target/*.jar
OpenICF-kerberos-connector/target/*.jar
OpenICF-ldap-connector/target/*.jar
OpenICF-ssh-connector/target/*.jar
OpenICF-xml-connector/target/*.jar
!**/*-sources.jar