Skip to content

Commit 404c48c

Browse files
authored
Merge pull request #170 from ansforge/develop
[ DEVELOP ]
2 parents 20152cf + 9d50448 commit 404c48c

786 files changed

Lines changed: 24863 additions & 13771 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/generate-bundle.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ on:
55

66
env:
77
# ToDo: read from yaml list of all schemas (how to handle RC-REF with no examples, cf '|| true' below)
8-
SCHEMAS: "RC-EDA RS-EDA EMSI GEO-POS GEO-REQ GEO-RES RC-REF RS-ERROR RS-RI RS-DR RS-RR RPIS RS-EDA-MAJ RS-SR RC-DE"
8+
SCHEMAS: "RC-DE RC-EDA RS-EDA EMSI GEO-POS GEO-REQ GEO-RES RC-REF RS-ERROR RS-RI RS-DR RS-RR RS-RPIS RS-EDA-MAJ RS-SR RC-DE RS-URL RS-ER RS-BPV"
99

1010
jobs:
1111
zip_and_upload:

.github/workflows/generate-model.yaml

Lines changed: 29 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77
workflow_dispatch:
88

99
env:
10-
SCHEMAS: "RC-EDA RS-EDA EMSI GEO-POS GEO-REQ GEO-RES RC-REF RS-ERROR RS-RI RS-DR RS-RR RPIS RS-EDA-MAJ RS-SR"
10+
SCHEMAS: "RC-EDA RS-EDA EMSI GEO-POS GEO-REQ GEO-RES RC-REF RS-ERROR RS-RI RS-DR RS-RR RS-RPIS RS-EDA-MAJ RS-SR RS-URL RS-ER RS-BPV TECHNICAL TECHNICAL_NOREQ"
1111

1212
jobs:
1313
generate:
@@ -56,14 +56,15 @@ jobs:
5656
if: steps.filter.outputs.parsing_required == 'true'
5757
run: python workflow.py --stage parser_and_mv
5858

59-
- name: Run test_case_generator and move the folder test-cases to src/main/resources/sample/test-cases
60-
working-directory: ./csv_parser
61-
if: steps.filter.outputs.test_case_parsing_required == 'true'
62-
run: |
63-
rm -r ./out/test-cases || true
64-
python workflow.py --stage test_case_parser
65-
rm -r ../src/main/resources/test-cases || true
66-
mv ./out/test-cases ../src/main/resources/
59+
# TODO: Reactivate test case autogeneration
60+
# - name: Run test_case_generator and move the folder test-cases to src/main/resources/sample/test-cases
61+
# working-directory: ./csv_parser
62+
# if: steps.filter.outputs.test_case_parsing_required == 'true'
63+
# run: |
64+
# rm -r ./out/test-cases || true
65+
# python workflow.py --stage test_case_parser
66+
# rm -r ../src/main/resources/test-cases || true
67+
# mv ./out/test-cases ../src/main/resources/
6768

6869
- name: Install JDK 11
6970
uses: actions/setup-java@v4
@@ -82,6 +83,8 @@ jobs:
8283
if: steps.filter.outputs.parsing_required == 'true'
8384
run: |
8485
rm out/RS-ERROR.xsd
86+
# Clean XSD repo but keep manual XSDs
87+
find ../../src/main/resources/xsd -type f -name '*.xsd' ! -name 'EDXL-DE-*.xsd' ! -name 'CustomContent.xsd' ! -name 'RC-XML-ContentType.xsd' ! -name 'RS-ERROR.xsd' ! -path '**/other-supporting-schema/*' -exec rm {} +
8588
mv out/*.xsd ../../src/main/resources/xsd/
8689
8790
- name: Remove input JSON Schemas
@@ -105,11 +108,11 @@ jobs:
105108
working-directory: ./generator
106109
run: |
107110
npx @openapitools/openapi-generator-cli generate -c ./config/RC-DE/RC-DE.generator-config.json --skip-validate-spec
108-
npx @openapitools/openapi-generator-cli generate -c ./config/RC-DE/RC-DE.distributionElement.generator-config.json --skip-validate-spec
109-
111+
npx @openapitools/openapi-generator-cli generate -c ./config/RC-DE/RC-DE.distribution-element.generator-config.json --skip-validate-spec
112+
110113
IFS=' ' read -ra SCHEMAS_ARRAY <<< "$SCHEMAS"
111114
for SCHEMA in "${SCHEMAS_ARRAY[@]}"; do
112-
if [ "$SCHEMA" != "RS-EDA-MAJ" ]; then
115+
if [ "$SCHEMA" != "RS-EDA-MAJ" ] && [ "$SCHEMA" != "RS-ER" ]; then
113116
npx @openapitools/openapi-generator-cli generate -c ./config/$SCHEMA/$SCHEMA.generator-config.json --skip-validate-spec
114117
fi
115118
npx @openapitools/openapi-generator-cli generate -c ./config/$SCHEMA/$SCHEMA.usecase.generator-config.json --skip-validate-spec
@@ -125,6 +128,7 @@ jobs:
125128
rm -r ./src/main/java/com/hubsante/model/geolocation || true
126129
rm -r ./src/main/java/com/hubsante/model/resources || true
127130
rm -r ./src/main/java/com/hubsante/model/rpis || true
131+
rm -r ./src/main/java/com/hubsante/model/technical || true
128132
rm -r ./generator/classes/src/main/java/com/hubsante/model/report/ErrorCode.java || true
129133
cp -r ./generator/classes/src/main/java/com/hubsante/model/* ./src/main/java/com/hubsante/model/
130134
@@ -134,12 +138,24 @@ jobs:
134138
- name: Apply license
135139
run: ./gradlew licenseFormat
136140

141+
- name: Delete old xml files
142+
run: |
143+
find ./src/main/resources/sample/examples -name "*.xml" -type f -delete
144+
145+
- name: Generate XML files
146+
run: |
147+
./gradlew generateXml
148+
continue-on-error: true
149+
137150
- name: Commit and push changes
138151
uses: stefanzweifel/git-auto-commit-action@v5
139152
with:
140153
commit_message: ⚙️ Auto-génération des classes et des specs
141154

142-
- name: Build and run tests
155+
- name: Build and run TECHNICAL tests
156+
run: ./gradlew test --info -Ptechnical=true
157+
158+
- name: Build and run REAL MESSAGES tests
143159
run: ./gradlew test --info
144160

145161
# Ref.: https://github.com/gradle/gradle-build-action/issues/619#issuecomment-1453244157
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Build Web Specs
2+
3+
on:
4+
release:
5+
types:
6+
- published
7+
workflow_dispatch:
8+
inputs:
9+
tag:
10+
type: string
11+
required: true
12+
description: Tag to be used for the generated image (should be a valid version)
13+
14+
jobs:
15+
build_web_specs:
16+
runs-on: ubuntu-latest
17+
env:
18+
RELEASE_NAME: "${{ github.ref_name || github.event.inputs.tag }}"
19+
20+
steps:
21+
- name: Check release name matches version pattern
22+
run: |
23+
PATTERN="^([0-9]+\.[0-9]+(\.[0-9]+)?)(-[A-Za-z0-9\.]+)*$"
24+
25+
if [[ $RELEASE_NAME =~ $PATTERN ]]; then
26+
echo "The RELEASE_NAME '$RELEASE_NAME' is valid."
27+
else
28+
echo "The RELEASE_NAME '$RELEASE_NAME' is invalid."
29+
exit 1
30+
fi
31+
32+
- name: Checkout
33+
uses: actions/checkout@v3
34+
35+
- name: Setup node env 🏗
36+
uses: actions/setup-node@v3
37+
with:
38+
node-version: 20
39+
40+
- name: Cache node_modules 📦
41+
uses: actions/cache@v3
42+
with:
43+
path: ~/.npm
44+
key: ${{ runner.os }}-node-generator
45+
46+
- name: Install AsyncAPI CLI and Generator 👨🏻‍💻
47+
run: npm i -g @asyncapi/cli @asyncapi/generator
48+
49+
# Use AsyncAPI generator to generate the HTML bundle
50+
- name: Generate docs for Hub Santé interface ⚙️
51+
run: asyncapi generate fromTemplate csv_parser/out/hubsante.asyncapi.yaml @asyncapi/html-template -o web_specs/generated/ --force-write
52+
53+
- name: Set up Docker Buildx
54+
uses: docker/setup-buildx-action@v3
55+
56+
- name: Login to Container Registry
57+
uses: docker/login-action@v3
58+
with:
59+
registry: ghcr.io
60+
username: ${{ github.actor }}
61+
password: ${{ secrets.GITHUB_TOKEN }}
62+
63+
- name: Build and push specs website
64+
uses: docker/build-push-action@v5
65+
with:
66+
push: true
67+
platforms: linux/amd64
68+
tags: ghcr.io/${{ github.repository_owner }}/hub-web-specs:${{ env.RELEASE_NAME }}
69+
context: ./web_specs

.github/workflows/release.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
1-
name: build image on release
1+
name: Build library package on release
22

33
on:
44
release:
55
types:
66
- published
77

88
jobs:
9-
build-image:
9+
build_library:
1010
runs-on: ubuntu-latest
1111
env:
1212
RELEASE_NAME: ${{ github.ref_name}}
1313

1414
steps:
1515
- name: Checkout
16-
uses: actions/checkout@v2
16+
uses: actions/checkout@v3
1717

1818
- name: Set up JDK
1919
uses: actions/setup-java@v2
@@ -27,7 +27,7 @@ jobs:
2727
- name: check release name matches version pattern
2828
run: |
2929
PATTERN="^([0-9]+\.[0-9]+(\.[0-9]+)?)(-[A-Za-z]+(-[0-9]+))?$"
30-
30+
3131
if [[ $RELEASE_NAME =~ $PATTERN ]]; then
3232
echo "The RELEASE_NAME '$RELEASE_NAME' is valid."
3333
else

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,5 @@ generator/classes/**
44
build/**
55
reportgeneratortool/**
66
coveragereport/**
7+
8+
web_specs/generated/**

.sonarcloud.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Path to sources
44
# sonar.sources=
55
# sonar.exclusions=src/main/java/com/hubsante/model/{cisu,custom,emsi,geolocation,health,rcde,reference,report}/**
6-
sonar.exclusions=src/main/java/com/hubsante/model/cisu/**,src/main/java/com/hubsante/model/health/**,src/main/java/com/hubsante/model/resources/**,src/main/java/com/hubsante/model/rpis/**,src/main/java/com/hubsante/model/technical/**
6+
sonar.exclusions=src/main/java/com/hubsante/model/cisu/**,src/main/java/com/hubsante/model/health/**,src/main/java/com/hubsante/model/resources/**,src/main/java/com/hubsante/model/rpis/**,src/main/java/com/hubsante/model/rcde/**,src/main/java/com/hubsante/model/technical/**
77
# sonar.inclusions=
88
# Path to tests
99
# sonar.tests=

README.md

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -29,24 +29,25 @@ Les spécifications du modèle de données sont disponibles sur le [site du proj
2929
|[0.6](https://github.com/ansforge/SAMU-Hub-Modeles/tree/0.6.0)|1.2|1.3|1.2|1.0-1.1|1.6|
3030
|[0.7](https://github.com/ansforge/SAMU-Hub-Modeles/tree/0.7.0)|1.3|1.4|1.3|1.0-1.1|1.7|
3131
|[1.0](https://github.com/ansforge/SAMU-Hub-Modeles/tree/1.0)|1.4|1.5 (**LTS**)|1.4-1.5|1.0-1.1|1.8|
32+
|[2.0](https://github.com/ansforge/SAMU-Hub-Modeles/tree/2.0)|1.4|2.0|1.6|1.2|1.9|
3233

3334
## Modèles
3435

35-
||[Schéma](src/main/resources/json-schema/)|Détails|UML|[Exemples](src/main/resources/sample/examples/)|
36-
|-|-|-|-|-|
37-
|**En-tête Distribution Element**<br>RC-DE|[RC-DE.schema.json](src/main/resources/json-schema/RC-DE.schema.json)|[RC-DE.schema.docx](csv_parser/out/RC-DE/RC-DE.schema.docx)|[RC-DE.uml_diagram.pdf](csv_parser/out/RC-DE/RC-DE.uml_diagram.pdf)|-|
38-
|**Partage de dossier**<br>RS-EDA|[RS-EDA.schema.json](src/main/resources/json-schema/RS-EDA.schema.json)|[RS-EDA.schema.docx](csv_parser/out/RS-EDA/RS-EDA.schema.docx)|[RS-EDA.uml_diagram.pdf](csv_parser/out/RS-EDA/RS-EDA.uml_diagram.pdf)|[Exemples RS-EDA](src/main/resources/sample/examples/RS-EDA/)|
39-
|**Mise à jour dossier**<br>RS-EDA-MAJ|[RS-EDA-MAJ.schema.json](src/main/resources/json-schema/RS-EDA-MAJ.schema.json)|[RS-EDA-MAJ.schema.docx](csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.schema.docx)|[RS-EDA-MAJ.uml_diagram.pdf](csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.uml_diagram.pdf)|[Exemples RS-EDA-MAJ](src/main/resources/sample/examples/RS-EDA-MAJ/)|
40-
|**Partage des ressources de l’intervention**<br>RS-RI|[RS-RI.schema.json](src/main/resources/json-schema/RS-RI.schema.json)|[RS-RI.schema.docx](csv_parser/out/RS-RI/RS-RI.schema.docx)|[RS-RI.uml_diagram.pdf](csv_parser/out/RS-RI/RS-RI.uml_diagram.pdf)|[Exemples RS-RI](src/main/resources/sample/examples/RS-RI/)|
41-
|**Demande de ressources**<br>RS-DR|[RS-DR.schema.json](src/main/resources/json-schema/RS-DR.schema.json)|[RS-DR.schema.docx](csv_parser/out/RS-DR/RS-DR.schema.docx)|[RS-DR.uml_diagram.pdf](csv_parser/out/RS-DR/RS-DR.uml_diagram.pdf)|[Exemples RS-DR](src/main/resources/sample/examples/RS-DR/)|
42-
|**Réponse à une demande de ressources**<br>RS-RR|[RS-RR.schema.json](src/main/resources/json-schema/RS-RR.schema.json)|[RS-RR.schema.docx](csv_parser/out/RS-RR/RS-RR.schema.docx)|[RS-RR.uml_diagram.pdf](csv_parser/out/RS-RR/RS-RR.uml_diagram.pdf)|[Exemples RS-RR](src/main/resources/sample/examples/RS-RR/)|
43-
|**Partage de statut de ressource**<br>RS-SR|[RS-SR.schema.json](src/main/resources/json-schema/RS-SR.schema.json)|[RS-SR.schema.docx](csv_parser/out/RS-SR/RS-SR.schema.docx)|[RS-SR.uml_diagram.pdf](csv_parser/out/RS-SR/RS-SR.uml_diagram.pdf)|[Exemples RS-SR](src/main/resources/sample/examples/RS-SR/)|
44-
|**Partage des données RPIS**<br>RS-RPIS|[RPIS.schema.json](src/main/resources/json-schema/RPIS.schema.json)|[RPIS.schema.docx](csv_parser/out/RPIS/RPIS.schema.docx)|[RPIS.uml_diagram.pdf](csv_parser/out/RPIS/RPIS.uml_diagram.pdf)|[Exemples RPIS](src/main/resources/sample/examples/RPIS/)|
45-
|**Partage des informations d’une ressource**<br>GEO-RES|[GEO-RES.schema.json](src/main/resources/json-schema/GEO-RES.schema.json)|[GEO-RES.schema.docx](csv_parser/out/GEO-RES/GEO-RES.schema.docx)|[GEO-RES.uml_diagram.pdf](csv_parser/out/GEO-RES/GEO-RES.uml_diagram.pdf)|[Exemples GEO-RES](src/main/resources/sample/examples/GEO-RES/)|
46-
|**Demande de détail sur une ressource**<br>GEO-REQ|[GEO-REQ.schema.json](src/main/resources/json-schema/GEO-REQ.schema.json)|[GEO-REQ.schema.docx](csv_parser/out/GEO-REQ/GEO-REQ.schema.docx)|[GEO-REQ.uml_diagram.pdf](csv_parser/out/GEO-REQ/GEO-REQ.uml_diagram.pdf)|[Exemples GEO-REQ](src/main/resources/sample/examples/GEO-REQ/)|
47-
|**Partage des positions d’une ressource**<br>GEO-POS|[GEO-POS.schema.json](src/main/resources/json-schema/GEO-POS.schema.json)|[GEO-POS.schema.docx](csv_parser/out/GEO-POS/GEO-POS.schema.docx)|[GEO-POS.uml_diagram.pdf](csv_parser/out/GEO-POS/GEO-POS.uml_diagram.pdf)|[Exemples GEO-POS](src/main/resources/sample/examples/GEO-POS/)|
48-
|**Partage d'affaire**<br>RC-EDA|[RC-EDA.schema.json](src/main/resources/json-schema/RC-EDA.schema.json)|[RC-EDA.schema.docx](csv_parser/out/RC-EDA/RC-EDA.schema.docx)|[RC-EDA.uml_diagram.pdf](csv_parser/out/RC-EDA/RC-EDA.uml_diagram.pdf)|[Exemples RC-EDA](src/main/resources/sample/examples/RC-EDA/)|
49-
|**Norme ISO (Emergency Management Shared Information)**<br>EMSI|[EMSI.schema.json](src/main/resources/json-schema/EMSI.schema.json)|[EMSI.schema.docx](csv_parser/out/EMSI/EMSI.schema.docx)|[EMSI.uml_diagram.pdf](csv_parser/out/EMSI/EMSI.uml_diagram.pdf)|[Exemples EMSI](src/main/resources/sample/examples/EMSI/)|
36+
| | [Schéma](src/main/resources/json-schema/) | Détails | UML | [Exemples](src/main/resources/sample/examples/) |
37+
|------------|---------------------------------------------------------------------------------|----------------------------------------------------------------------------|------------------------------------------------------------------------------------|-----------------------------------------------------------------------|
38+
| RC-DE | [RC-DE.schema.json](src/main/resources/json-schema/RC-DE.schema.json) | [RC-DE.schema.docx](csv_parser/out/RC-DE/RC-DE.schema.docx) | [RC-DE.uml_diagram.pdf](csv_parser/out/RC-DE/RC-DE.uml_diagram.pdf) | - |
39+
| RC-EDA | [RC-EDA.schema.json](src/main/resources/json-schema/RC-EDA.schema.json) | [RC-EDA.schema.docx](csv_parser/out/RC-EDA/RC-EDA.schema.docx) | [RC-EDA.uml_diagram.pdf](csv_parser/out/RC-EDA/RC-EDA.uml_diagram.pdf) | [Exemples RC-EDA](src/main/resources/sample/examples/RC-EDA/) |
40+
| RS-EDA | [RS-EDA.schema.json](src/main/resources/json-schema/RS-EDA.schema.json) | [RS-EDA.schema.docx](csv_parser/out/RS-EDA/RS-EDA.schema.docx) | [RS-EDA.uml_diagram.pdf](csv_parser/out/RS-EDA/RS-EDA.uml_diagram.pdf) | [Exemples RS-EDA](src/main/resources/sample/examples/RS-EDA/) |
41+
| RS-EDA-MAJ | [RS-EDA-MAJ.schema.json](src/main/resources/json-schema/RS-EDA-MAJ.schema.json) | [RS-EDA-MAJ.schema.docx](csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.schema.docx) | [RS-EDA-MAJ.uml_diagram.pdf](csv_parser/out/RS-EDA-MAJ/RS-EDA-MAJ.uml_diagram.pdf) | [Exemples RS-EDA-MAJ](src/main/resources/sample/examples/RS-EDA-MAJ/) |
42+
| RS-RPIS | [RS-RPIS.schema.json](src/main/resources/json-schema/RS-RPIS.schema.json) | [RS-RPIS.schema.docx](csv_parser/out/RS-RPIS/RS-RPIS.schema.docx) | [RS-RPIS.uml_diagram.pdf](csv_parser/out/RS-RPIS/RS-RPIS.uml_diagram.pdf) | [Exemples RS-RPIS](src/main/resources/sample/examples/RS-RPIS/) |
43+
| EMSI | [EMSI.schema.json](src/main/resources/json-schema/EMSI.schema.json) | [EMSI.schema.docx](csv_parser/out/EMSI/EMSI.schema.docx) | [EMSI.uml_diagram.pdf](csv_parser/out/EMSI/EMSI.uml_diagram.pdf) | [Exemples EMSI](src/main/resources/sample/examples/EMSI/) |
44+
| RS-RI | [RS-RI.schema.json](src/main/resources/json-schema/RS-RI.schema.json) | [RS-RI.schema.docx](csv_parser/out/RS-RI/RS-RI.schema.docx) | [RS-RI.uml_diagram.pdf](csv_parser/out/RS-RI/RS-RI.uml_diagram.pdf) | [Exemples RS-RI](src/main/resources/sample/examples/RS-RI/) |
45+
| RS-DR | [RS-DR.schema.json](src/main/resources/json-schema/RS-DR.schema.json) | [RS-DR.schema.docx](csv_parser/out/RS-DR/RS-DR.schema.docx) | [RS-DR.uml_diagram.pdf](csv_parser/out/RS-DR/RS-DR.uml_diagram.pdf) | [Exemples RS-DR](src/main/resources/sample/examples/RS-DR/) |
46+
| RS-RR | [RS-RR.schema.json](src/main/resources/json-schema/RS-RR.schema.json) | [RS-RR.schema.docx](csv_parser/out/RS-RR/RS-RR.schema.docx) | [RS-RR.uml_diagram.pdf](csv_parser/out/RS-RR/RS-RR.uml_diagram.pdf) | [Exemples RS-RR](src/main/resources/sample/examples/RS-RR/) |
47+
| RS-SR | [RS-SR.schema.json](src/main/resources/json-schema/RS-SR.schema.json) | [RS-SR.schema.docx](csv_parser/out/RS-SR/RS-SR.schema.docx) | [RS-SR.uml_diagram.pdf](csv_parser/out/RS-SR/RS-SR.uml_diagram.pdf) | [Exemples RS-SR](src/main/resources/sample/examples/RS-SR/) |
48+
| GEO-POS | [GEO-POS.schema.json](src/main/resources/json-schema/GEO-POS.schema.json) | [GEO-POS.schema.docx](csv_parser/out/GEO-POS/GEO-POS.schema.docx) | [GEO-POS.uml_diagram.pdf](csv_parser/out/GEO-POS/GEO-POS.uml_diagram.pdf) | [Exemples GEO-POS](src/main/resources/sample/examples/GEO-POS/) |
49+
| GEO-REQ | [GEO-REQ.schema.json](src/main/resources/json-schema/GEO-REQ.schema.json) | [GEO-REQ.schema.docx](csv_parser/out/GEO-REQ/GEO-REQ.schema.docx) | [GEO-REQ.uml_diagram.pdf](csv_parser/out/GEO-REQ/GEO-REQ.uml_diagram.pdf) | [Exemples GEO-REQ](src/main/resources/sample/examples/GEO-REQ/) |
50+
| GEO-RES | [GEO-RES.schema.json](src/main/resources/json-schema/GEO-RES.schema.json) | [GEO-RES.schema.docx](csv_parser/out/GEO-RES/GEO-RES.schema.docx) | [GEO-RES.uml_diagram.pdf](csv_parser/out/GEO-RES/GEO-RES.uml_diagram.pdf) | [Exemples GEO-RES](src/main/resources/sample/examples/GEO-RES/) |
5051

5152
N. B. : Pour accéder aux versions les plus recentes des fichiers, veuillez utiliser les liens du README de la branche **auto/model_tracker** en cliquant [ici](https://github.com/ansforge/SAMU-Hub-Modeles/tree/auto/model_tracker?tab=readme-ov-file#modèles).
5253

build.gradle

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,12 @@ plugins {
33
id 'maven-publish'
44
id 'com.github.hierynomus.license' version '0.16.1'
55
id 'jacoco'
6+
id 'com.github.johnrengelman.shadow' version '7.1.2'
7+
}
8+
9+
task generateXml(type:JavaExec) {
10+
main = 'com.hubsante.model.XmlGenerator'
11+
classpath = sourceSets.main.runtimeClasspath
612
}
713

814
group = 'com.hubsante'
@@ -35,12 +41,24 @@ dependencies {
3541
testAnnotationProcessor 'org.projectlombok:lombok:1.18.22'
3642
}
3743

44+
// I let this in the code waiting for use case explanation
45+
//shadowJar {
46+
// archiveClassifier.set('')
47+
//}
48+
3849
jacocoTestReport {
3950
reports {
4051
html.required = true
4152
xml.required = true
4253
}
4354
}
55+
56+
test {
57+
if (project.hasProperty('technical')) {
58+
include '**/*Technical*.class'
59+
} else if (!project.hasProperty('allTests'))
60+
exclude '**/*Technical*.class'
61+
}
4462

4563
allprojects {
4664
tasks.withType(JavaCompile) {

0 commit comments

Comments
 (0)