Feature/127 integrate docs into main repo & changed to docusaurus #423
Workflow file for this run
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: Build and Test | |
on: | |
pull_request: | |
branches: | |
- dev | |
- beta | |
- "epic/**" | |
types: [opened, synchronize, reopened, ready_for_review] | |
jobs: | |
check: | |
name: "Check" | |
if: github.event.pull_request.draft == false | |
runs-on: ubuntu-latest | |
outputs: | |
worth_testing: ${{ steps.check.outputs.worth_testing }} | |
steps: | |
- name: "Checkout Branch" | |
uses: actions/checkout@v3 | |
- name: "Check for changes worth testing" | |
id: check | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
changed_files=$(gh pr diff --name-only ${{ github.event.pull_request.number }}) | |
test=false | |
for file in $changed_files; do | |
if [[ $file == ".github/"* || $file == "doc/"* ]]; then | |
echo "$test file: $file" | |
else | |
test=true | |
echo "$test file: $file" | |
break | |
fi | |
done | |
if [[ $test == true ]]; then | |
echo "worth_testing=true" >> "$GITHUB_OUTPUT" | |
else | |
echo "worth_testing=false" >> "$GITHUB_OUTPUT" | |
fi | |
build: | |
name: "Build" | |
timeout-minutes: 10 | |
needs: check | |
if: | | |
(github.event.pull_request.draft == false) | |
&& (needs.check.outputs.worth_testing == true) | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Checkout Branch" | |
uses: actions/checkout@v3 | |
- name: "Setup Java" | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: 17 | |
cache: 'gradle' | |
- name: Setup Gradle cache | |
uses: actions/cache@v3 | |
with: | |
path: ~/.gradle | |
key: ${{ runner.os }}-gradle-${{ hashFiles('versions.properties') }}-${{ github.sha }} | |
- name: "prepare libs for build" | |
run: ./prepare.sh | |
- name: "build backend" | |
run: ./gradlew --build-cache build -x test | |
- name: Upload build reports | |
uses: actions/upload-artifact@v3 | |
if: ${{ failure() || contains(github.event.pull_request.labels.*.name, 'force reports') }} | |
with: | |
name: Build Reports | |
path: "**/build/reports" | |
test: | |
name: "Test" | |
timeout-minutes: 120 | |
needs: build | |
if: | | |
(github.event.pull_request.draft == false) | |
&& (needs.check.outputs.worth_testing == true) | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Checkout Branch" | |
uses: actions/checkout@v3 | |
- name: "Setup Java" | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: 17 | |
cache: 'gradle' | |
- name: Setup Gradle cache | |
uses: actions/cache@v3 | |
with: | |
path: ~/.gradle | |
key: ${{ runner.os }}-gradle-${{ hashFiles('versions.properties') }}-${{ github.sha }} | |
- name: "prepare libs for tests" | |
run: ./prepare.sh | |
- name: "test backend" | |
run: ./gradlew --build-cache check | |
- name: Upload test reports | |
uses: actions/upload-artifact@v3 | |
if: ${{ failure() || contains(github.event.pull_request.labels.*.name, 'force reports') }} | |
with: | |
name: Test Reports | |
path: "**/build/reports" | |