Skip to content

Commit

Permalink
Merge pull request #5 from lalogiquefloue/GithubActionsCarl
Browse files Browse the repository at this point in the history
added 3 test build flags to github action
  • Loading branch information
CarlThibaultUdeM authored Nov 13, 2024
2 parents 9321ad8 + 757cb1a commit 753740b
Showing 1 changed file with 95 additions and 7 deletions.
102 changes: 95 additions & 7 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,23 +16,111 @@ jobs:
java-version: '17'
cache: 'maven'

- name: Build and Test with Maven
- name: Build and Test with Maven - Default Configuration
timeout-minutes: 15
run: ./mvnw -B verify
run: |
./mvnw -B verify
- name: Get JaCoCo Coverage - Default configuration
id: coverage_default
run: |
coverage=$(python3 config/coverage.py target/site/jacoco/jacoco.csv)
echo "COVERAGE=$coverage" >> $GITHUB_ENV
- name: Fail if coverage has not improved for default configuration.
run: |
coverage=$COVERAGE
threshold=24.46
if (( $(echo "$coverage - $threshold <= 0.1" | bc -l) )); then
echo "Coverage is not improved for default configuration."
exit 1
else
echo "New coverage: $coverage%. Coverage is improved for default configuration!"
fi
###################################################################################
# - name: Build and Test with Maven - Print default flags
# timeout-minutes: 15
# run: |
# echo "Printing default flags."
# export MAVEN_OPTS="-XX:+PrintFlagsFinal"
# ./mvnw -B verify
# unset MAVEN_OPTS

###################################################################################
- name: Build and Test with Maven - Configuration 1
timeout-minutes: 15
run: |
echo "Configuration 1 - Test build with change of garbage collection type."
export MAVEN_OPTS="-XX:+UseSerialGC"
./mvnw -B verify
unset MAVEN_OPTS
- name: Get JaCoCo Coverage - Configuration 1
id: coverage_config1
run: |
coverage=$(python3 config/coverage.py target/site/jacoco/jacoco.csv)
echo "COVERAGE=$coverage" >> $GITHUB_ENV
- name: Fail if coverage has not improved for configuration 1.
run: |
coverage=$COVERAGE
threshold=24.46
if (( $(echo "$coverage - $threshold <= 0.1" | bc -l) )); then
echo "Coverage is not improved for configuration 1."
exit 1
else
echo "New coverage: $coverage%. Coverage is improved for configuration 1!"
fi
###################################################################################
- name: Build and Test with Maven - Configuration 2
timeout-minutes: 15
run: |
echo "Configuration 2 - Test build with reduced heap size."
export MAVEN_OPTS="-XX:MaxHeapSize=2G -XX:MinHeapSize=4M"
./mvnw -B verify
unset MAVEN_OPTS
- name: Get JaCoCo Coverage - Configuration 2
id: coverage_config2
run: |
coverage=$(python3 config/coverage.py target/site/jacoco/jacoco.csv)
echo "COVERAGE=$coverage" >> $GITHUB_ENV
- name: Fail if coverage has not improved for configuration 2.
run: |
coverage=$COVERAGE
threshold=24.46
if (( $(echo "$coverage - $threshold <= 0.1" | bc -l) )); then
echo "Coverage is not improved for configuration 2."
exit 1
else
echo "New coverage: $coverage%. Coverage is improved for configuration 2!"
fi
###################################################################################
- name: Build and Test with Maven - Configuration 3
timeout-minutes: 15
run: |
echo "Configuration 3 - Test build with 1 cpu core available for multithreading."
export MAVEN_OPTS="-XX:ActiveProcessorCount=1"
./mvnw -B verify
unset MAVEN_OPTS
- name: Get JaCoCo Coverage
id: coverage
- name: Get JaCoCo Coverage - Configuration 3
id: coverage_config3
run: |
coverage=$(python3 config/coverage.py target/site/jacoco/jacoco.csv)
echo "COVERAGE=$coverage" >> $GITHUB_ENV
- name: Fail if coverage has not improved.
- name: Fail if coverage has not improved for configuration 3.
run: |
coverage=$COVERAGE
threshold=24.46
if (( $(echo "$coverage - $threshold <= 0.1" | bc -l) )); then
echo "Coverage is not improved."
echo "Coverage is not improved for configuration 3."
exit 1
else
echo "New coverage: $coverage%. Coverage is improved!"
echo "New coverage: $coverage%. Coverage is improved for configuration 3!"
fi

0 comments on commit 753740b

Please sign in to comment.