2015-10-20 11 views
7

Sto provando a creare un sito Web tramite Azure Resource Manager e quindi a distribuire da un repository Github privato.Distribuzione del sito Web dal repository Github privato utilizzando i modelli ARM

Ho un modello di ARM che funziona per un repository pubblico. se poi renderò il repository privato, collegarlo ad esso attraverso il Portale, tutto andrà bene.

Se ridistribuire il modello ARM fallirà con il messaggio

"Cannot find SourceControlToken with name GitHub." 

Sembra che quando il portale si connette a un repo privato creerà una chiave SSH che viene utilizzato per l'autenticazione.

La chiave ssh sembra provenire da kudu che può essere ottenuto una volta che il sito è stato distribuito.

Ho anche provato ad utilizzare token di accesso, ma non ha potuto ottenere questi per lavorare con il repourl

Quindi la semplice domanda è, come faccio a distribuire un repo privato tramite modello ARM

risposta

4

E ' sembra che quando il portale si connette a un repository privato, crei una chiave SSH che viene utilizzata per l'autenticazione.

Proprio così.

Risolvi lo stesso problema modificando il repository GitHub su Git esterno.

  • Crea nuovo profilo GitHub e condiviso l'accesso in lettura al repository privato
  • generare token di accesso
  • E utilizzare il prossimo URL nei template, nel portale, azzurro API REST, ecc

    https://{github-username}:{access-token}@github.com/{organisation-acount}/{repo}.git

Inoltre, questo consentirà di evitare la limitazione di GitHub per 20 connessioni e sarà possibile utilizzare il repository in più t han 20 WebApps di Azure.

+0

che suona come una bella soluzione , Ci provo! –

+0

Ho lo stesso problema con un repo pubblico e non riesco a farlo funzionare, puoi dare più dettagli piacere? – AAlferez

+0

Guarda il commento di David sopra. Ma assicurati di lavorare con un solo utente da qualsiasi luogo. –

7

Per utilizzare questo modello tramite il modello ARM, è necessario prima farlo almeno una volta utilizzando il portale di anteprima (https://portal.azure.com/). Puoi farlo su qualsiasi sito, e con qualsiasi repo. Deve solo succedere una volta per impostare la relazione GitHub. Farlo via il vecchio portale non funzionerà.

Poi, per controllare che le cose siano impostati correttamente:

+0

E la situazione in cui ti è stato concesso l'accesso a un repository privato GitHub di cui tu stesso non sei proprietario? –

+0

@IsaacAbraham si discute se è possibile aggiungere WebHook e Distribuire chiavi sul repository GitHub. Se non lo sei, non c'è semplicemente alcun modo di configurare la distribuzione continua su qualsiasi luogo (non una cosa specifica di Azure). –

+0

OK, evviva: sono sicuro di poterlo aggiungere (probabilmente perché non viene visualizzato in Azure come un repo che posso "accedere"). –

Problemi correlati