2012-03-23 12 views
5

Sto configurando un sistema di generazione di form su un progetto con la risoluzione delle dipendenze gestita da edera. Ho installato e in esecuzione con il file system utilizzato per il repository locale e condiviso attualmente. Il mio obiettivo finale sarebbe che quando gli sviluppatori stanno correggendo bug o creando nuove funzionalità, sarebbero solo in grado di mettere artefatti nel loro repository locale. Quando credono che il loro codice sia pronto per essere utilizzato dal resto del team, verrà promosso al ramo corretto in SVN e il gruppo responsabile delle build ufficiali compilerà e pubblicherà i nuovi artefatti.Configurazione di un repository di edera condiviso

Quindi immagino che le mie domande siano come puoi controllare chi può pubblicare su un repository? L'edera si basa solo sulle autorizzazioni del filesystem?

Inoltre, vorrei eventualmente rendere disponibile il mio repository condiviso tramite http. Penso di poter puntare apache alle directory del repository del file system per il recupero delle risorse, ma come impostare la pubblicazione su un repository http?

risposta

1

È possibile specificare tre resolver nel file delle impostazioni dell'edera. Il primo sarebbe un risolutore di catene che include repository di edera remote e locali. Il secondo sarebbe un risolutore locale per il repository di edera locale. Terzo solo un resolver al repository di edera remota.

Ogni sviluppatore recupera gli artefatti utilizzando il resolver della prima catena.

Lo sviluppatore usuale pubblica gli artefatti utilizzando il secondo risolutore locale.

Il team speciale potrebbe utilizzare il terzo resolver remoto per pubblicare nel repository di edera remoto. Per proteggere il repository remoto dai soliti sviluppatori, posizionarlo su (S) server FTP con protezione da scrittura tramite password.

L'unico problema in questo caso è come impostare le versioni sugli artefatti in modo che le risorse pubblicate nel repository remoto in alcuni casi sovrascrivano localmente pubblicate in alcuni non.

Il nostro team ha utilizzato tale schema alcuni anni fa. Ma ora usiamo solo repository ed editori locali di edera per costruire ed eseguire test da vari rami. Siamo arrivati ​​a questo dopo il passaggio a git.

3

Suggerirei di impostare un gestore di repository per gestire gli artefatti di costruzione del progetto.

Le scelte migliori sono una delle seguenti opzioni:

Pubblicazione su un repository Maven significa che i manufatti possono essere consumati da progetti che utilizzano altri costruire tecnologie. Tutti i moderni sistemi di costruzione supportano Maven (Inclusa l'edera, vedere ibiblio resolver).