Introducció
D’entre els requisits per a la integració al SIC de les aplicacions es demana indicar la versió del component
en cada desplegament que serà utilitzada per a l’etiquetatge de codi font i la publicació de llibreries.
Aquesta versió cal indicar-la de forma agnòstica a la tecnologia, per la qual cosa el SIC requereix haver
definit aquesta versió en un fitxer en format YML ubicat dins de la carpeta /sic
a l’arrel del projecte.
En aquest sentit, cal destacar que al SIC 2.0 la versió calia indicar-la al fitxer descriptor /sic/sic.yml
i,
en canvi, al SIC 3.0 aquest fitxer deixa de ser un requisit permetent indicar la versió al mateix fitxer /sic/aca.yml
,
on es configura el funcionament complet de la pipeline. No obstant això, si es vol automatitzar aquest descriptor es pot
seguir fent ús del mateix per tal d’assegurar l’alineament de versions d’una forma automatitzada.
Aquest howto pretén explicar com automatitzar aquest fitxer sic.yml
per a aplicacions Maven.
Configuració
A src/main/resources
cal crear el fitxer sic.yml
amb el següent contingut:
version: ${project.version}
Al fitxer pom.xml de l’aplicació s’ha d’afegir el plugin maven-resources-plugin amb la següent configuració:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.2.0</version>
<executions>
<execution>
<id>set-version</id>
<phase>process-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<useDefaultDelimiters>true</useDefaultDelimiters>
<outputDirectory>sic</outputDirectory>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>sic.yml</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
D’aquesta manera, quan es construeixi l’aplicació, automàticament s’establirà la versió al fitxer /sic/sic.yml
. Per exemple:
version: 1.0.0
D’aquesta manera, al SIC 3.0 ja no serà necessari informar l’atribut info.version
en el fitxer aca.yml
.