Setup e Sviluppo (LINUX)
Assicurati di avere i seguenti tools installati nella tua macchina di sviluppo:
- php
- git
- composer
Download del codice sorgente
git clone https://github.com/zerai/ils-jb.git
chmod -R 775 ils-jb/
cd ils-jb
composer install
Download tools di sviluppo
Il repository è provvisto di tools 'secondari' per la gestione di test, qualità e metriche del codice, documentazione.
E' possibile e consigliata, un' installazione veloce tramite un unico comando.
composer bin all install
Sviluppo e uso dell'applicazione
Una volta clonato il repository, e dopo aver installato tutti i tools necessari, modificare il file .env inserendo i parametri di configurazione del proprio database locale.
Con il database correttamente configurato, è necassario eseguire i seguenti comandi per creare lo schema del database e caricare le fixture minime di sviluppo che contengono i dati di login.
# crea il database
./bin/console doctrine:database:create
# aggiorna lo schema del database
./bin/console doctrine:schema:update --force
# carica le fixtures di sviluppo
./bin/console doctrine:fixtures:load --group dev
Apri il browser all'indirizzo 'http://127.0.0.1' per visualizzare l'area pubblica dell'applicazione
(l'url dipende dalla propria configurazione LAMP)
Oppure vai all'indirizzo 'http://127.0.0.1/login' per accedere all'area amministrativa.
DATI DI LOGIN
email: admin@example.com
password: admin
Run dei test, altri tools e CD/CI
Il codice del repository viene fornito con una pipeline di test eseguiti ad ogni push/pull tramite le GITHUB ACTIONS.
Oltre ai vari tests (phpunit/behat), viene eseguito un check dei coding standard ed un'analisi statica del codice. Si consiglia di eseguire manualmente in locale gli stessi controlli prima di ogni commit, a tal proposito vengono forniti degli shortcut configurati nel file composer.json.
"scripts-descriptions": {
"cs": "Check php coding style",
"cs:fix": "Fix php coding style",
"rc": "Check rector roules",
"rc:fix": "Fix rector issues",
"sa": "Check static analysis (phpstan)",
"tf": "Run functional testsuite",
"ti": "Run integration testsuite",
"tu": "Run unit testsuite"
}
Esempi:
# esegue i test unitari tramite phpunit
composer tu
# esegue un controllo dei coding standard
composer cs
# fix dei file secondo i coding standard configurati
composer cs:fix