.. _installation_guide/installation/framework_installation: Installazione di Genropy ======================== .. raw:: html
Prerequisiti ------------ Prima di seguire le istruzioni di installazione è importante accertarsi di aver installato correttamente nel vostro ambiente di sviluppo: - `Git `_ - `Python `_ - `pip `_ Troverete suggerimenti e consigli sull'installazione dei prerequisiti nell'apposita :ref:`appendice` di questa guida. .. hint:: È bene assicurarsi, nel tempo, di avere sempre l'ultima versione disponibile di **pip**. Si può eseguire l'aggiornamento con il comando:: python3 -m pip install --upgrade pip Versioni di Genropy ------------------- Esistono due branch principali di **Genropy**: - **master** è la versione stabile e consigliata, in Python3 - **develop** è il ramo di sviluppo, in cui è possibile testare nuove funzionalità prima che queste vengano rese disponibili sul ramo principale .. hint:: È anche attualmente presente un ramo *legacy* non più aggiornato **py2**, compatibile con Python 2 ma che consigliamo di abbandonare. I rami *master* e *develop* precedenti al rilascio della nuova modalità di installazione sono stati taggati come segue: - **master-pre-243** è la versione *legacy* del ramo master a inizio marzo 2024, che utilizza la vecchia procedura di installazione - **develop-pre-243** è la versione *legacy* del ramo develop a inizio marzo 2024, che utilizza la vecchia procedura di installazione Per chi volesse tornare alla vecchia modalità di installazione è possibile effettuare il checkout con questi tag. Creazione directory di sviluppo ------------------------------- Questo passo è facoltativo, ma prima di iniziare suggeriamo di creare una *directory di sviluppo* dove andremo a clonare il repository di **Genropy** e che sarà l'ubicazione di default per tutti i progetti. In questa guida creiamo a titolo esemplificativo una directory chiamata ``sviluppo`` ed andiamo a metterci dentro ad essa con la shell. :: mkdir sviluppo cd sviluppo Clonare il progetto Genropy ---------------------------- Ora clonate il progetto usando il comando ``git clone``:: git clone https://bitbucket.org/genropy/genropy.git Oppure:: git clone https://github.com/genropy/genropy.git A questo punto dovreste trovarvi la directory ``genropy``, contenente tutti sorgenti del progetto all'ultimo aggiornamento. Eseguire l'installazione ------------------------- Dopo aver effettuato il clone del repository, è possibile entrare nella cartella ``genropy/gnrpy``:: cd genropy/gnrpy e installare automaticamente le librerie richieste da Genropy eseguendo il comando:: sudo pip install . .. hint:: Se si sta installando Genropy in un virtualenv è possibile omettere *sudo*. Sono disponibili quattro profili di installazione, a seconda delle esigenze: - ``pgsql`` - Per utilizzo con database PostgreSQL - ``mysql`` - per utilizzo con database MySQL - ``sqlite`` - per utilizzo con database SqLite - ``developer`` - per installare una serie di strumenti extra utili per lo sviluppo con Genropy L'installazione di uno o più profili permetterà di installare tutte le dipendenze necessarie. Per specificare i profili desiderati usare la sintassi:: sudo pip install --editable ".[pgsql,developer]" .. hint:: L'attributo ``--editable`` è facoltativo, ma permette di creare un collegamento alla cartella corrente invece di installare i file. In questo modo facendo facendo il *pull* del repository sarà di volta in volta possibile eseguire gli aggiornamenti senza dover rieseguire il pip install di cui al punto precedente. È la **procedura consigliata per gli sviluppatori** nell'ambiente di lavoro. Inizializzazione ---------------- A questo punto l'installazione è completata, ma per poter iniziare a creare progetti Genropy è necessario eseguire uno script che effettua una inizializzazione dell'ambiente di sviluppo. Lanciamo il comando:: gnr app initgenropy Questo script genera un utente ``admin`` ed una password casuale per l'accesso alle applicazioni locali. Annotate la password e seguite le istruzioni riportate per modificare eventualente la password. Sul terminale vi dovrebbe apparire in risposta il seguente messaggio .. code :: Default password for user admin is ****, you can change it by editing /../../.gnr/instanceconfig/default.xml Lo script ``initgenropy.py`` crea alcuni file e directory necessarie al funzionamento di Genropy: - la directory ``.gnr`` che contiene file di configurazione di default dell'ambiente di sviluppo - la directory ``genropy_projects`` che sarà il luogo in cui verranno creati i vostri progetti, se manterrete la :ref:`configurazione di default` .. hint:: In ambiente Windows, la directory con i file di configurazione si chiama gnr anziché .gnr e verrà comunque collocata nella home dell'utente. Sarà dunque ``C:\users\NOME_UTENTE\gnr``. Ulteriori dettagli sono forniti nell' :ref:`appendice sulle configurazioni d'ambiente` Per verificare di aver installato e configurato correttamente l'ambiente di sviluppo Genropy potete proseguire con la sezione dedicata all'applicazione di :ref:`collaudo` . Aggiornare il progetto ---------------------- Ora che avete clonato il progetto potrete mantenere aggiornata la vostra installazione di Genropy, lanciando dalla directory ``genropy`` il seguente comando :: git pull .. hint:: Se l'installazione è stata eseguita con l'attributo ``--editable`` non è necessario eseguire altri passaggi. In caso contrario dopo il *pull* del repository sarà necessario ripetere la procedura di *pip install .* per eseguire la sincronizzazione dei file e delle librerie. .. sectionauthor:: Davide Paci