- all’interno della shell di ubuntu creare una nuova cartella con il nome desiderato, spostarsi nella nuova directory ed avviare jhipster utilizzando il comando jhipster
- all’avvio di jhipster selezionare il tipo “microservice application, selezionare No alla selezione della reattività e inserire il nome, inserire una porta libera, scegliere nessun servizio di discovery, selezionare il tipo di autenticazione JWT(stateless,with a token), selezionare il tipo di database (SQL) seguito dalla production e dal development entrambi MySQL,selezionare sì alla domanda sull’utilizzo della spring cache abstraction (implementare con Hazelcast) e sì anche alla domanda successiva ,selezionare maven per la costruzione del backend, alla selezione di altre tecnologie da utilizzare selezionare “API first development using OpenAPI-generator”, selezionare sì per l’international support e selezionare la lingua nativa e addizionale infine rispondere No alla domanda di installazioni aggiuntive dal market di jHipster
- Da riga di comando creare un branch attraverso il codice git branch develop e spostarsi su di esso attraverso il comando gich develop
- In seguito alla generazione, la prima cosa da fare è la formattazione del POM, si può utilizzare un formattatore di file XML (ad esempio XML tools se si utilizza visual studio code)
- Il passo successivo è la configuazione del Pom, all’interno del tls nel file application-dev.yml modificare l’url inserendo il nome desiderato (Esempiojdbc:mysql://localhost:3306/aig_ca_pippo_default?…….) ed inserire una password;
- Creare un nuovo profilo (<profile.stage /> <id>stage</id> ed all’interno delle properties dei profile inserire:
+ <properties>
+ <stage>,stage</stage>
+ </properties>
+ </profile>
+ <profile>
- inserire nel Pom, all’interno dei plugin inserire quello dedicato a gitflow
<groupId>com.amashchenko.maven.plugin</groupId>
+ <artifactId>gitflow-maven-plugin</artifactId>
+ <version>1.13.0</version>
+ <configuration>
+ <gitFlowConfig>
+ <productionBranch>master</productionBranch>
+ <developmentBranch>develop</developmentBranch>
+ <featureBranchPrefix>feature/</featureBranchPrefix>
+ <releaseBranchPrefix>release/</releaseBranchPrefix>
+ <hotfixBranchPrefix>hotfix/</hotfixBranchPrefix>
+ <supportBranchPrefix>support/</supportBranchPrefix>
+ <versionTagPrefix>v</versionTagPrefix>
+ <origin>origin</origin>
+ </gitFlowConfig>
+ </configuration>
+ </plugin>
+ <plugin>
- Nelle configurazioni creare un nuovo file application -stage.yml +aig:
+ profile: stage
+
+application-config:
+ database:
+ prefix: aig_stage_ca_pippo _default
- Aggiornare la versione dello snapshot, rimuovere le limitazione della ram (cercare Xmx256m e cancellarlo) e all’interno del groupId, modificare il codice autogenerato cancellando il nome inserito
-Xmx25 - Dopo aver eseguito questi passaggi si può già creare il primo commit eseguendo il comando “git add .” -> “git commit -m “initial configuration”
- L’ultima parte riguarda la security, per prima cosa bisogna inserire il seguente codice nelle depencency <dependency>
+ <groupId>com.eneasys.apigest</groupId>
+ <artifactId>security</artifactId>
+ <version>1.1.0</version>
+ </dependency>
- Importare +@Import({SecurityProblemSupport.class, TokenProvider.class}) all’interno di src/main/java/com/eneasys/apigest/contexts_apps/commerce/config/SecurityConfiguration.java ed eliminare quello autogenerato
- Cancellare la cartella security di default generata da jhipster, ma prima spostare SpringSecurityAuditorWave in config e in seguito modificare gli import dei package in securityConfiguration lasciando solo “com.eneasys.apigest.security.*” e “com.eneasys.apigest.security.jwt”