# OpenCruise ## Descrizione Il progetto OpenCruise è composto da due applicativi web che interagiscono tra di loro con lo scopo di fornire una applicazione che offre all'utente la possibilità di creare/configurare dei report di consumo e poi visualizzarli in qualsiasi browser. ## Installazione ed esecuzione del progetto in ambiente locale #### Prerequisiti - [ ] Installazione di GIT - [ ] Installazione di Docker - [ ] Linea di commandi, cmd/poweshell per sistema operativo Windows e Shell per sistemi operativi Linux #### Installazione - [ ] Installare GIT da [qui](https://git-scm.com/download/win). - [ ] Installare Docker da [qui](https://www.docker.com/products/docker-desktop/). - [ ] Clonazione del progetto da GIT tramite linea di comandi > git clone https://crossserv.bologna.enea.it/gitlab/open/opencruise #### Esecuzione Per eseguire il progetto fare click sul file __start.bat__, presente nella cartella clonata da GIT > oppure aprire la linea di comandi posizionandosi nella cartella clonata ed eseguire il commando: > docker-compose up Se l'installazione finisce con successo sarà possibile ragiungere l'applicativo da questo [link](http://localhost:4200). Per chiudere l'esecuzione clic-are sul file __stop.bat__ > oppure premere CTRL+C nella finestra della linea di commando aperta precedentemente. #### Accesso con utente registrato > __*Username*__: user@demo.com > > __*Password*__: demo #### Accesso con utente admin > __*Username*__: admin@demo.com > > __*Password*__: demo #### Esecuzione test Dopo l'accesso al portale, è possibile visualizzare 2 report impostando la lingua del portale in Italiano. I report presenti sono: > Reporto consumo > > Consumo e produzione abitazione La fonte dati dei 2 report si trova nel percorso __\/report-data__ e i file utilizzati sono __getData_10.json__ e __getData_35.json__. Se si ha la necessità di utilizzare un insieme di dati diversi da quelli attuali bisogna seguire questi passi: 1. Eliminare i file __getData_10.json__ e __getData_35.json__ dalla cartella __\/report-data__. 2. Per avere dati gia preparati copiare il contenuto della cartella __\/report-data/examples/02__ in __\/report-data__ 3. Per avere i dati eliminati nel passo 1 copiare il contenuto della cartella __\/report-data/examples/01__ in __\/report-data__ 4. E' importante che il nome e la struttura dei file sia mantenuto uguale a quello indicato sopra. 6. Modificare il file json dei dati solo nella sezione __result: [{}...]__ a seconda delle esigenze. > Non è necessario riavviare Docker per questa operazione Se si desidare avere un altra cartella per i dati si puo aggionare la variabile __MOCK_DATA_FOLDER_LOCAL__ nel file __.env__, es: __C:/folder-data__. > E' necessario riavviare Docker per questa operazione #### Configurazione accesso Keycloak ###### Configurazione progetto Lec Configurare il seguente parametro nel file environment.ts (Percorso: lec/src/environments) > authenticationType: 'oid' ###### Configurazione progetto Lecservice Configurare il seguente parametro nel file Dockerfile (Percorso: lecsevice) > ENV ACTIVE_PROFILE=oid ###### Configurazione progetto GecoRegistration Configurare la seguente variabile globale nel file Dockerfile .ts (Percorso: gecoregistration) > ENV ACTIVE_PROFILE=dev #### Configurazione accesso locale ###### Configurazione progetto Lec Configurare il seguente parametro nel file environment.ts (Percorso: lec/src/environments) > authenticationType: '' > ###### Configurazione progetto Lecservice Configurare il seguente parametro nel file Dockerfile (Percorso: lecsevice) > ENV ACTIVE_PROFILE=dev ###### Configurazione progetto Lecservice Non viene utilizzato in questa modalità #### Comandi utili > __*docker-compose up --build *__ - Commando per avviare Docker pulendo la cache per riflettere i cambiamenti in configurazione > > __*docker-compose stop*__ - Commando per stoppare i container > > __*docker-compose start*__ - Commando per riavviare i container > > __*docker-compose down*__ - Commando per terminare Docker e rimuovere tutti i container creati > > __*docker build --no-cache --progress=plain -t geco .\gecoregistration*__ - Commando per eseguire un specifico servizio visualizzando i log