From c83d057cd76ec4ff2a4b6ca9a36637b10ccf0a50 Mon Sep 17 00:00:00 2001 From: Lucy Ciara Herud-Thomassen <86323303+LucyCiara@users.noreply.github.com> Date: Thu, 22 Jan 2026 10:43:26 +0100 Subject: [PATCH] chore: add github workflow (potentially) BREAKING CHANGE: Github workflow hasn't been tested yet, and might be breaking --- .github/workflows/main.yaml | 76 +++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 .github/workflows/main.yaml diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml new file mode 100644 index 0000000..1f479dc --- /dev/null +++ b/.github/workflows/main.yaml @@ -0,0 +1,76 @@ +name: CI/CD Workflow + +on: + push: + branches: + - main + workflow_dispatch: # Allows manual triggering of the workflow + + +jobs: + build: + name: Build + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Set up JDK + uses: actions/setup-java@v3 + with: + distribution: 'temurin' + java-version: '25' + - name: Build with Maven + run: mvn compile + + test: + name: Test + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Set up JDK + uses: actions/setup-java@v3 + with: + distribution: 'temurin' + java-version: '25' + - name: Run Tests + run: mvn clean test + - name: Upload Test Results + uses: actions/upload-artifact@v4 + with: + name: surefire-reports + path: target/surefire-reports/ + - name: Upload Coverage Report + uses: actions/upload-artifact@v4 + with: + name: jacoco-report + path: target/jacoco/coverage-reports/jacoco.xml + + package: + name: Package + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Set up JDK + uses: actions/setup-java@v3 + with: + distribution: 'temurin' + java-version: '25' + - name: Build Package + run: mvn clean package + - name: Upload Package + uses: actions/upload-artifact@v4 + with: + name: packaged-app + path: target/Help-Me-Help-1.0-SNAPSHOT-jar-with-dependencies.jar + + deployPages: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Set up JDK + uses: actions/setup-java@v3 + with: + distribution: 'temurin' + java-version: '25'