Integration - Scala #672
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: Integration - Scala | |
on: | |
schedule: | |
# Run the ci on the latest commit of master every day at 4:00 am | |
- cron: '00 04 * * *' | |
jobs: | |
tests: | |
name: Tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
distribution: "temurin" | |
java-version: "17" | |
- name: Setup repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Compile server | |
working-directory: ./be2-scala | |
run: sbt compile | |
- name: Assemble server jar file | |
working-directory: ./be2-scala | |
run: | | |
sbt assembly | |
cd ./src/security/ && ./generateKeys.sh # Generate keys | |
- name: Run Karate tests | |
id: tests | |
continue-on-error: true | |
working-directory: ./tests/karate | |
run: mvn test -DargLine=-Dkarate.env=scala -Dtest=BackEndTest#fullTest | |
- name: Publish Cucumber Report | |
uses: actions/upload-artifact@v3 | |
with: | |
name: Cucumber Report | |
path: ./tests/karate/target/scala/cucumber-html-reports | |
- name: Publish HTML Report | |
uses: actions/upload-artifact@v3 | |
with: | |
name: HTML Report | |
path: ./tests/karate/target/karate-reports | |
- name: Publish Server logs | |
uses: actions/upload-artifact@v3 | |
with: | |
name: Scala Server Logs | |
path: ./tests/karate/scala.log | |
# The next actions are pushing the new report to the defined branch | |
- name: Checkout report branch | |
uses: actions/checkout@v3 | |
with: | |
ref: report-karate-be2-scala | |
path: report-repo | |
- name: Update report | |
run: | | |
rm -rf report-repo/* | |
mkdir -p report-repo/scala | |
cp -a ./tests/karate/target/scala/cucumber-html-reports/. ./report-repo/scala/ | |
- name: Commit files | |
working-directory: ./report-repo | |
run: | | |
git config --local user.email "github-actions[bot]@users.noreply.github.com" | |
git config --local user.name "github-actions[bot]" | |
git add -A | |
git commit -m "Report from ${{ steps.date.outputs.date }}" | |
- name: Push changes | |
uses: ad-m/github-push-action@master | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
branch: report-karate-be2-scala | |
directory: report-repo | |
- name: Fail job if tests were not successful | |
if: steps.tests.outcome == 'failure' | |
run: exit 1 |