Esercitazione: compilare l'applicazione con l'agente
Ora che l'agente di compilazione è in esecuzione e pronto per ricevere processi di compilazione, è possibile osservarlo in azione. In questa unità viene modificata una configurazione della build di base fornita per compilare il sito Web di Space Game usando l'agente personale e non l'agente ospitato da Microsoft.
Nota
Eseguire i passaggi seguenti subito dopo i passaggi descritti nel modulo precedente Creare un agente di compilazione in esecuzione in Azure.
Alla fine di questa unità, come passaggio facoltativo, è possibile rimuovere il pool di agenti dall'organizzazione Microsoft Azure DevOps.
Recuperare il ramo da GitHub
In questa sezione verrà recuperato il ramo build-agent
da GitHub e si eseguirà il checkout o il passaggio a tale ramo.
Questo ramo contiene il progetto di Space Game usato nei moduli precedenti e una configurazione iniziale di Azure Pipelines.
Aprire il terminale integrato in Visual Studio Code.
Eseguire i comandi
git fetch
egit checkout
seguenti per scaricare un ramo denominatobuild-agent
dal repository di Microsoft e passare a tale ramo:git fetch upstream build-agent git checkout -B build-agent upstream/build-agent
Tenere presente che upstream si riferisce al repository GitHub Microsoft. La configurazione Git del progetto riconosce il repository remoto upstream, perché questa relazione viene configurata quando si esegue la copia tramite fork del progetto dal repository Microsoft e lo si clona in locale.
In breve, si eseguirà il push di questo ramo al repository GitHub personale, noto come
origin
.Come passaggio facoltativo, in Visual Studio Code aprire azure-pipelines.yml e acquisire familiarità con la configurazione iniziale.
La configurazione è simile a quella di base creata nel modulo Creare una pipeline di compilazione con Azure Pipelines. Compila solo la configurazione per la versione dell'applicazione.
Modificare la configurazione della build
In questa sezione, si andrà a modificare la configurazione della build per passare dall'uso di un agente ospitato da Microsoft all'uso dell'agente dal pool di compilazione.
In Visual Studio Code, aprire il file azure-pipelines.yml, quindi cercare la sezione
pool
.pool: vmImage: 'ubuntu-20.04' demands: - npm
Modificare la sezione
pool
come illustrato di seguito:pool: name: 'MyAgentPool' demands: - npm
Questa versione usa
name
per specificare il pool di agenti, MyAgentPool. Mantiene la sezionedemands
per specificare che l'agente di compilazione deve avere npm, la gestione pacchetti di Node.js, installato.Nel terminale integrato aggiungere azure-pipelines.yml all'indice, eseguire il commit delle modifiche ed eseguire il push del ramo in GitHub.
git add azure-pipelines.yml git commit -m "Use private agent pool" git push origin build-agent
Osserva Azure Pipelines che usa l'agente di compilazione
Osservare l'esecuzione della compilazione nella pipeline usando l'agente di compilazione.
In Azure DevOps passare al progetto di Space Game - Web - Agente.
Nella pagina del progetto o nel riquadro a sinistra selezionare Pipeline.
Selezionare la pipeline da Pipeline eseguite di recente e scegliere l'esecuzione più recente (avviata quando è stata aggiornata la pipeline per l'uso del pool MyAgentPool).
Scegliere Processo e tracciare l'esecuzione in ognuno dei passaggi.
Dall'attività Inizializza processo si noterà che la compilazione usa l'agente di compilazione.
Facoltativo: Rimuovere il pool di compilazione
Per riferimento futuro, è possibile mantenere la configurazione del pool di compilazione nell'organizzazione Azure DevOps, ma tenere presente che la macchina virtuale che ospita l'agente non sarà più disponibile dopo aver eseguito i passaggi di pulizia alla fine di questo modulo.
In realtà, Azure DevOps rileverà che l'agente è offline. Azure Pipelines verificherà la presenza di un agente disponibile la volta successiva in cui una compilazione viene accodata usando il pool MyAgentPool.
Come passaggio facoltativo, è possibile rimuovere la configurazione del pool di compilazione da Azure DevOps. Ecco come fare:
In Azure DevOps passare al progetto di Space Game - Web - Agente.
Selezionare Impostazioni progetto.
In Pipeline, selezionar Pool di agenti.
In MyAgentPool, selezionare l'icona del cestino, quindi selezionare Elimina.