.. _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. Il ramo *master* riceve un tag per ogni release, chiamato **release-xxxx**, dove *xxxx* è la release associata. È quindi possibile far riferimento a questi tag per prelease versioni specifiche. La prima release con il nuovo sistema di installazione è la versione **24.3** Per chi volesse tornare alla vecchia modalità di installazione è possibile effettuare il checkout con questi tag. La versioni rilasciate, derivate da master, seguono la convenzione ANNO.MESE, ANNO.MESE.GIORNO, ANNO.MESE.GIORNO.PROGRESSIVO, permettendo quindi anche di poter capire l'età della versione in uso. Per verificare la versione in uso installata, è possibile utilizzare il comando **gnr --version** 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://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 eseguendo 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:: Dopo il *pull* del repository è consigliato ripetere la procedura di *pip install.* , in modo che eventuali nuove dipendenze vengano correttamente installate. .. sectionauthor:: Davide Paci