Skip to content

config: ci-cd 4

config: ci-cd 4 #10

Workflow file for this run

name: Budgeting service
on:
push:
branches:
- main
- ci-cd
pull_request:
branches:
- main
- ci-cd
paths:
- ".github/workflows/pipeline-sun.yaml"
jobs:
style:
runs-on: ubuntu-latest
name: Check style
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Run maven checkstyle
run: mvn checkstyle:checkstyle
# - name: Upload Checkstyle result
# uses: jwgmeligmeyling/checkstyle-github-action@master
# with:
# path: '**/checkstyle-result.xml'
compile:
runs-on: ubuntu-latest
name: Compile project
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
cache: maven
- name: Compile project
run: mvn clean compile
unit-tests:
runs-on: ubuntu-latest
name: Unit tests
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
cache: maven
- name: Running unit tests
run: mvn clean test
build:
runs-on: ubuntu-latest
name: Build project
needs: [compile, unit-tests]
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
cache: maven
- name: Building project
run: mvn clean package