2013-07-29 24 views
7

GitLab dispone di questa funzione "deploy keys" utile per i server CI che hanno accesso in lettura e accesso a un repository, poiché normalmente non richiedono altro. Tuttavia, ho bisogno di creare e inviare un tag al repository per taggare ogni release creata dal ramo "master".Push to GitLab repository all'interno del server CI (deploy keys)

Per essere più specifico, ho un lavoro Jenkins che costruirà una versione di rilascio dal ramo "master" ogni volta che viene avviata una build. Se il lavoro ha esito positivo, voglio taggare il ramo "master" HEAD con il numero di versione per riferimento futuro.

Credo di non poterlo fare usando la funzione 'deploy keys'. Quindi come faccio a fare questo? Non sono sicuro di poter creare un utente aggiuntivo, solo per questo, e dargli accesso al progetto ... Perché ogni utente con accesso a GitLab è legato a LDAP.

Qualche suggerimento?

risposta

3

È corretto che una chiave di distribuzione non abbia (e non avrà) accesso in scrittura a un progetto (come indicato in issue 2134).

Che ti lascia con:

  • la creazione di un account generico LDAP (se tali conti sono autorizzati nella vostra organizzazione)
  • la creazione di un account fittizio in un server LDAP separato (ma il gitlab omniauth-ldap non supporta dichiarazione LDAP multipla).
+0

Funzionerebbe se avessi creato una chiave SSH separata (solo per non mischiarla con la mia) e l'ho aggiunta all'account di tutti (tutti quelli che dovrebbero avere accesso a quel progetto, cioè). In questo modo, se dovessi andarmene e il mio account venisse cancellato, continuerebbe a funzionare ... O non funzionerà? –

+0

@RicardoAmaral potrebbe, ma ciò implicherebbe la condivisione di una chiave ssh privata, che è un grande no-no. * Soprattutto * per un account con accesso * write *. – VonC

+0

Sì, lo so. Ecco perché sono andato a crearne uno separato dal mio. Uno che sarebbe condiviso * solo * con il team di sviluppo, i responsabili per l'impostazione del sistema Jenkins. Un altro problema che vedo con questo è che spingendo con questa chiave SSH associare il commit a uno degli sviluppatori e sarebbe meglio se fosse da un utente "Jenkins CI" o qualcosa del genere, per distinguerli. –

Problemi correlati