diff --git a/.github/workflows/create-release.yaml b/.github/workflows/create-release.yaml index fae7323c..d5c242e9 100644 --- a/.github/workflows/create-release.yaml +++ b/.github/workflows/create-release.yaml @@ -8,7 +8,36 @@ on: ["docs/**", "Dockerfile", "LICENSE", "CHANGELOG.md", "README.md"] jobs: + + pogues-model: + name: Check Pogues-Model lib version exists + runs-on: ubuntu-latest + outputs: + version: ${{ steps.get-version.outputs.version }} + steps: + - uses: actions/checkout@v4 + + - name: Get Pogues-Model Version + id: get-version + run: echo "version=$(mvn help:evaluate -Dexpression='pogues-model.version' -q -DforceStdout)" >> $GITHUB_OUTPUT + + - name: Check Pogues-Model lib tag ${{ steps.get-version.outputs.version }} existence + id: check-tag-exists + uses: mukunku/tag-exists-action@v1.6.0 + with: + repo: InseeFr/Pogues-Model + tag: ${{ steps.get-version.outputs.version }} + + - name: Pogues-Model lib tag verification + id: check-tag + run: | + if [[ "${{ steps.check-tag-exists.outputs.exists }}" == "false" ]]; then + echo "The tag v${{ steps.get-version.outputs.version }} doesn't exist in Eno lib repo." + exit 1 + fi + check-version: + needs: pogues-model runs-on: ubuntu-latest outputs: release-version: ${{ steps.version-step.outputs.version }} @@ -49,7 +78,7 @@ jobs: fi build-sources: - needs: check-version + needs: [pogues-model, check-version] runs-on: ubuntu-latest steps: - name: Set up JDK @@ -58,9 +87,21 @@ jobs: distribution: "temurin" java-version: "21" + - name: Checkout Pogues-Model lib repo + uses: actions/checkout@v4 + with: + fetch-depth: 1 + ref: ${{ needs.pogues-model.outputs.version }} + repository: InseeFr/Pogues-Model + path: Pogues-Model + + - name: Build Pogues-Model lib + working-directory: ./Pogues-Model + run: mvn install --no-transfer-progress -DskipTests=true -Dmaven.javadoc.skip=true + - uses: actions/checkout@v4 - name: Build Pogues-Back-Office with Maven - run: mvn clean package -B -V --file pom.xml --no-transfer-progress + run: mvn package -B -V --file pom.xml --no-transfer-progress - name: Upload jar uses: actions/upload-artifact@v4 diff --git a/.github/workflows/create-snapshot.yaml b/.github/workflows/create-snapshot.yaml index e6c96d0d..49140eab 100644 --- a/.github/workflows/create-snapshot.yaml +++ b/.github/workflows/create-snapshot.yaml @@ -16,6 +16,33 @@ jobs: with: labels: 'deploy-snapshot' + pogues-model: + name: Check Pogues-Model lib version exists + runs-on: ubuntu-latest + outputs: + version: ${{ steps.get-version.outputs.version }} + steps: + - uses: actions/checkout@v4 + + - name: Get Pogues-Model Version + id: get-version + run: echo "version=$(mvn help:evaluate -Dexpression='pogues-model.version' -q -DforceStdout)" >> $GITHUB_OUTPUT + + - name: Check Pogues-Model lib tag ${{ steps.get-version.outputs.version }} existence + id: check-tag-exists + uses: mukunku/tag-exists-action@v1.6.0 + with: + repo: InseeFr/Pogues-Model + tag: ${{ steps.get-version.outputs.version }} + + - name: Pogues-Model lib tag verification + id: check-tag + run: | + if [[ "${{ steps.check-tag-exists.outputs.exists }}" == "false" ]]; then + echo "The tag v${{ steps.get-version.outputs.version }} doesn't exist in Eno lib repo." + exit 1 + fi + check-version: needs: remove-deploy-label runs-on: ubuntu-latest @@ -58,7 +85,7 @@ jobs: fi build-sources: - needs: check-version + needs: [check-version, pogues-model] runs-on: ubuntu-latest steps: - name: Set up JDK @@ -67,9 +94,21 @@ jobs: distribution: 'temurin' java-version: '21' + - name: Checkout Pogues-Model lib repo + uses: actions/checkout@v4 + with: + fetch-depth: 1 + ref: ${{ needs.pogues-model.outputs.version }} + repository: InseeFr/Pogues-Model + path: Pogues-Model + + - name: Build Pogues-Model lib + working-directory: ./Pogues-Model + run: mvn install --no-transfer-progress -DskipTests=true -Dmaven.javadoc.skip=true + - uses: actions/checkout@v4 - name: Build Pogues-Back-Office with Maven - run: mvn clean package -B -V --file pom.xml --no-transfer-progress + run: mvn package -B -V --file pom.xml --no-transfer-progress - name: Upload jar uses: actions/upload-artifact@v4 diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 67761c6d..169f5000 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -6,7 +6,36 @@ on: paths-ignore: ['docs/**', 'Dockerfile', 'LICENSE', 'CHANGELOG.md', 'README.md'] jobs: + + pogues-model: + name: Check Pogues-Model lib version exists + runs-on: ubuntu-latest + outputs: + version: ${{ steps.get-version.outputs.version }} + steps: + - uses: actions/checkout@v4 + + - name: Get Pogues-Model Version + id: get-version + run: echo "version=$(mvn help:evaluate -Dexpression='pogues-model.version' -q -DforceStdout)" >> $GITHUB_OUTPUT + + - name: Check Pogues-Model lib tag ${{ steps.get-version.outputs.version }} existence + id: check-tag-exists + uses: mukunku/tag-exists-action@v1.6.0 + with: + repo: InseeFr/Pogues-Model + tag: ${{ steps.get-version.outputs.version }} + + - name: Pogues-Model lib tag verification + id: check-tag + run: | + if [[ "${{ steps.check-tag-exists.outputs.exists }}" == "false" ]]; then + echo "The tag v${{ steps.get-version.outputs.version }} doesn't exist in Eno lib repo." + exit 1 + fi + test: + needs: pogues-model if: ${{ (github.event.pull_request.draft == false) && !contains(github.event.pull_request.labels.*.name, 'deploy-snapshot') }} runs-on: ubuntu-latest steps: @@ -15,11 +44,23 @@ jobs: - name: Set up JDK uses: actions/setup-java@v4 with: - distribution: 'temurin' - java-version: '21' + distribution: "temurin" + java-version: "21" + + - name: Checkout Pogues-Model lib repo + uses: actions/checkout@v4 + with: + fetch-depth: 1 + ref: ${{ needs.pogues-model.outputs.version }} + repository: InseeFr/Pogues-Model + path: Pogues-Model + + - name: Build Pogues-Model lib + working-directory: ./Pogues-Model + run: mvn install --no-transfer-progress -DskipTests=true -Dmaven.javadoc.skip=true - name: Run tests with Maven - run: mvn clean test --no-transfer-progress + run: mvn test --no-transfer-progress # - name: Test, package and analyze with maven & SonarCloud # run: mvn --no-transfer-progress verify sonar:sonar -Dsonar.projectKey=InseeFr_Pogues-Back-Office -Dsonar.organization=inseefr -Dsonar.host.url=https://sonarcloud.io diff --git a/pom.xml b/pom.xml index b24fab77..01e86100 100644 --- a/pom.xml +++ b/pom.xml @@ -13,14 +13,14 @@ fr.insee Pogues-BO jar - 4.9.5 + 4.10.0 Pogues-Back-Office UTF-8 21 pogues-bo - 1.4.2 + 1.5.0 2.10 2.7.0 0.8.12