Skip to content

product-is-builder-jdk17 #29

product-is-builder-jdk17

product-is-builder-jdk17 #29

name: product-is-builder-jdk17
on:
workflow_dispatch:
schedule:
# At 00:00 on day-of-month 1
- cron: '0 0 1 * *'
env:
MAVEN_OPTS: -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.class=standard -Dmaven.wagon.http.retryHandler.count=3
jobs:
build:
runs-on: ubuntu-18.04
steps:
- name: Clone product IS
run: |
git clone https://github.com/wso2/product-is
- name: Set up Adopt JDK 11
uses: actions/setup-java@v2
with:
java-version: "11"
distribution: "adopt"
- name: Product-IS build with JDK 11 without Integration Tests
run: |
cd product-is/
mvn clean install --batch-mode -Dmaven.test.skip=true | tee mvn-build.log
- name: Set up Adopt JDK 17
uses: actions/setup-java@v2
with:
java-version: "17"
distribution: "adopt"
- name: Product-IS build with JDK 17 with Integration Tests
run: |
ls
cd product-is/modules/integration/
mvn clean install --batch-mode | tee mvn-build.log
PR_BUILD_STATUS=$(cat mvn-build.log | grep "\[INFO\] BUILD" | grep -oE '[^ ]+$')
PR_TEST_RESULT=$(sed -n -e '/\[INFO\] Results:/,/\[INFO\] Tests run:/ p' mvn-build.log)
PR_BUILD_FINAL_RESULT=$(
echo "==========================================================="
echo "product-is BUILD $PR_BUILD_STATUS"
echo "=========================================================="
echo ""
echo "$PR_TEST_RESULT"
)
PR_BUILD_RESULT_LOG_TEMP=$(echo "$PR_BUILD_FINAL_RESULT" | sed 's/$/%0A/')
PR_BUILD_RESULT_LOG=$(echo $PR_BUILD_RESULT_LOG_TEMP)
echo "::warning::$PR_BUILD_RESULT_LOG"
PR_BUILD_SUCCESS_COUNT=$(grep -o -i "\[INFO\] BUILD SUCCESS" mvn-build.log | wc -l)
if [ "$PR_BUILD_SUCCESS_COUNT" != "3" ]; then
echo "PR BUILD not successfull. Aborting."
echo "::error::PR BUILD not successfull. Check artifacts for logs."
exit 1
fi