L’environment

La directory .gnr

Se avete eseguito correttamente script di inizializzazione initgenropy , dovreste trovarvi nella home di utente una directory .gnr.

Nota

In ambiente Windows, la directory con i file di configurazione si chiama gnr anziché .gnr, viene comunque collocata nella home dell’utente C:\users\NOME_UTENTE\gnr. In un ambiente virtuale , invece, gnr è sempre all’interno della cartella etc/gnr.

Essa contiene i file con le configurazioni standard dell’ambiente Genropy installato. Queste impostazioni valgono come default per tutti i progetti e le istanze che successivamente verranno create all’interno dell’ambiente.

La directory .gnr ha la seguente struttura:

.gnr/
│
├── environment.xml
│
├── instanceconfig
│   │
│   └── default.xml
│
└── siteconfig
    │
    └── default.xml

In questa appendice entriamo maggiormente nel dettaglio delle configurazioni di base di una installazione Genropy

Il file environment.xml

Questo file è generato automaticamente. Esso contiene la configurazione base del vostro ambiente Genropy. Vediamo un environment.xml appena generato dallo script:

<?xml version="1.0" ?>
<GenRoBag>

  <environment>
    <gnrhome value="~/.../genropy"/>
  </environment>

  <projects>
    <genropy path="~/.../genropy/projects"/>
    <custom  path="~/.../genropy_projects"/>
  </projects>

  <packages>
    <genropy path="~/.../genropy/packages"/>
  </packages>

  <static>
    <js>
      <dojo_11 cdn="" path="~/.../genropy/dojo_libs/dojo_11"/>
      <gnr_11         path="~/.../genropy/gnrjs/gnr_d11"/>
    </js>
  </static>

  <resources>
    <genropy path="~/.../genropy/resources"/>
  </resources>

  <webtools>
    <genropy path="~/.../genropy/webtools"/>
  </webtools>

  <gnrdaemon hmac_key="<12 caratteri>" host="localhost" port="40404"/>
</GenRoBag>

Suggerimento

Nel file qui riprodotto ho contratto i path con la sintassi '~/.../', questa dicitura indica che il path dove viene installato genropy, è del tutto arbitrario, e dipende dalle preferenze dell’utente installatore.

Naturalmente la '~' iniziale indica (nei sistemi UNIX like), la directory home dell’utente stesso.

Vediamo ora in dettaglio le varie sezioni:

environment

In questo tag viene definita la posizione in cui è stato installato il framework di Genropy. Il framework risiede quindi nella directory Genropy che si trova nel path scelto al momento della procedura di installazione

projects

In questo elemento vengono definite le ubicazioni di tutti i progetti Genropy esistenti nell’ambiente.

Di default troviamo due locazioni fondamentali

  • genropy : si riferisce a tutti i progetti built-in di Genropy. Pertanto la directory indicata dall’attributo path è riservata e non dovrebbe essere mai utilizzata per la creazione di nuovi progetti.

  • custom : è la locazione dove verranno creati tutti i progetti. Il valore di default di path per questa locazione è la directory genropy_projects, che viene creata automaticamente all’esecuzione dello script initgenropy.

Possiamo in qualsiasi momento inserire ulteriori path, magari per tenere separati i progetti in sviluppo da quelli già in produzione, oppure perché gestiamo diversi clienti e vogliamo che i progetti non si mischino tra di loro.

static

Questo elemento contiene la dichiarazione delle librerie Javascript che vengono utilizzate dal framework.

La prima riga indica la versione e il path della libreria dojo toolkit.

La seconda riga invece indica il path degli script javascript sviluppati appositamente per genropy.

In questa sezione si possono inserire eventuali ulteriori risorse che si vogliono importare in modo statico in tutte le vostre pagine. Queste verranno caricate alla partenza del server e rese sempre disponibili.

resources

In questo elemento vengono inseriti i path delle risorse che devono essere disponibili ad ogni progetto. Di default è indicato il path delle risorse rese disponibili dal framework di Genropy.

Vedremo poi cosa sono le risorse in Genropy, concetto molto importante quando poi andremo a sviluppare i nostri progetti.

webtools

Anche in questo caso viene fornito il path per alcune risorse da rendere disponibili, ma sono risorse di tipo diverso, sono dei tools web, che possono tornare utili nella gestione della parte interattiva con l’utente finale.

gnrdaemon

Questo elemento definisce le proprietà del service gnrdaemon.