50 lines
1.7 KiB
YAML
50 lines
1.7 KiB
YAML
name: Maven Compile (reusable)
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
maven-profiles:
|
|
description: "Profili Maven da attivare (es. bitwork,ci)"
|
|
required: false
|
|
type: string
|
|
default: ""
|
|
|
|
jobs:
|
|
compile:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: artifacts.biters.it:8443/biters/gitea-ci-maven:21
|
|
credentials:
|
|
username: ${{ secrets.MAVEN_USERNAME }}
|
|
password: ${{ secrets.MAVEN_PASSWORD }}
|
|
volumes:
|
|
- /opt/ci-cache/m2-repository:/root/.m2/repository
|
|
env:
|
|
RUNNER_TOOL_CACHE: /toolcache
|
|
MAVEN_REPO_URL: ${{ vars.MAVEN_REPO_URL }}
|
|
MAVEN_REPO_RELEASES_URL: ${{ vars.MAVEN_REPO_RELEASES_URL }}
|
|
MAVEN_REPO_SNAPSHOTS_URL: ${{ vars.MAVEN_REPO_SNAPSHOTS_URL }}
|
|
MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }}
|
|
MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }}
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- name: Checkout CI config
|
|
run: |
|
|
git clone --depth=1 "https://biters.gitea:${{ secrets.REPO_ACCESS_TOKEN }}@git.biters.it/Biters/ci-workflows.git" .ci-config
|
|
|
|
- name: Verifica configurazione
|
|
run: |
|
|
missing=0
|
|
for v in MAVEN_REPO_URL MAVEN_REPO_RELEASES_URL MAVEN_REPO_SNAPSHOTS_URL MAVEN_USERNAME MAVEN_PASSWORD; do
|
|
eval "val=\${$v}"
|
|
if [ -z "$val" ]; then echo "MANCANTE: $v"; missing=1; else echo "OK: $v"; fi
|
|
done
|
|
[ "$missing" -eq 0 ] || { echo "Imposta le Variables/Secrets mancanti a livello org."; exit 1; }
|
|
|
|
- name: Compile
|
|
run: |
|
|
MVN_PROFILES=""
|
|
[ -n "${{ inputs.maven-profiles }}" ] && MVN_PROFILES="-P${{ inputs.maven-profiles }}"
|
|
mvn -B -U $MVN_PROFILES -s .ci-config/settings.xml -DskipTests clean compile
|