Integrazione continua - Distribuzione
Build automatizzate e build ripetibili. Test automatizzati e test ripetibili. Categorie di test e frequenze di test. Ispezioni continue. Integrazione continua del database. Questa serie di attività nella creazione di un ambiente CI efficiente consente principalmente un vantaggio chiave: rilasciare software funzionante in qualsiasi momento, in qualsiasi ambiente.
Nei nostri capitoli precedenti, abbiamo realizzato tutti i seguenti segmenti:
- Creato il nostro codice.
- Garantito un corretto build in TeamCity.
- Creato un processo di integrazione del database.
- Test condotti con successo.
Ora non resta che eseguire una distribuzione automatizzata, in modo che l'intero processo sia completo.
Per una distribuzione automatizzata nel nostro caso, dobbiamo seguire questi passaggi:
Nel nostro server di distribuzione, assicurati che IIS sia installato.
Assicurati che l'utente IIS abbia accesso al nostro database.
Crea un profilo di pubblicazione che verrà utilizzato per pubblicare il sito una volta creato.
Assicurati di modificare il nostro comando MSBuild per eseguire una distribuzione automatica.
Automatizza TeamCity per eseguire una pubblicazione automatica.
Fai un git commit per assicurarti che tutti i tuoi file siano in Git.
Step 1- Configurare un server IIS locale. Se si dispone di un server IIS locale o remoto, è possibile eseguire la seguente configurazione per distribuire la nostra applicazione. È sempre una buona pratica vedere se una distribuzione può essere eseguita manualmente prima che venga eseguita in modo automatico.
Step 2 - Su un server Windows 2012, vai a Server Manager e fai clic su Aggiungi ruoli e funzionalità.
Step 3 - Fare clic su Avanti nella schermata successiva che viene visualizzata.
Step 4 - Scegli l'installazione basata su ruoli o basata su funzionalità nella schermata successiva e fai clic su Avanti.
Step 5 - Seleziona il server predefinito e fai clic su Avanti.
Step 6 - Scegli il ruolo del server Web e fai clic su Avanti.
Step 7 - Nella schermata successiva che viene visualizzata, fare clic su Avanti.
Step 8 - Fare nuovamente clic su Avanti nella schermata successiva che appare.
Step 9 - Nella schermata successiva che si apre, fare clic su Avanti.
Step 10 - Nella schermata finale, puoi fare clic sul pulsante Installa per installare IIS.
Dopo aver installato IIS, è possibile aprirlo aprendo Internet Information Services.
Step 11 - Fai clic su Pool di applicazioni, vedrai un pool con il nome di DefaultAppPool. Questo deve avere accesso a SQL Server nel passaggio successivo.
Step 12 - Se dobbiamo connettere un'applicazione ASP.Net a un'applicazione MS SQL Server, dobbiamo concedere l'accesso al pool di applicazioni predefinito all'istanza di SQL Server, in modo che possa connettersi al nostro Demodb Banca dati.
Step 13- Apri SQL Server Management Studio. Vai su Login, fai clic con il tasto destro e scegli l'opzione di menuNew Login.
Nella schermata successiva, aggiorna i seguenti parametri e fai clic su OK.
- Nome di accesso come IIS APPPOOL \ DefaultAppPool.
- Database predefinito: dovrebbe essere il nostro database, che è demodb.
Step 14 - Creazione di un file Publish Profile. Il profilo di pubblicazione viene utilizzato in Visual Studio per creare un pacchetto di distribuzione che può quindi essere utilizzato con MS Build e in qualsiasi server CI di conseguenza. Per fare ciò, da Visual Studio, fai clic con il pulsante destro del mouse sul progetto e fai clic sull'opzione di menu di Pubblica
Step 15 - Nella schermata successiva che viene visualizzata, scegli di creare un nuovo profilo di pubblicazione, dagli un nome - DemoDeployment. Quindi fare clic sul pulsante Avanti.
Nella schermata successiva che viene visualizzata, aggiungi i seguenti valori:
- Scegli il metodo di pubblicazione come Web Deploy.
- Inserisci il server come localhost.
- Immettere il nome del sito come sito Web predefinito / Demo.
- Inserisci l'URL di destinazione come http://localhost/Demo
Quindi fare clic sul pulsante Avanti.
Step 16 - Nella schermata successiva, fare clic su Avanti.
Step 17 - Nella schermata finale visualizzata, fai clic sul pulsante Pubblica.
Ora se vai al C:\Demo\Simple\Properties\PublishProfiles posizione del tuo progetto, vedrai un nuovo file publish profile xml filecreato. Questo file di profilo di pubblicazione avrà tutti i dettagli necessari per pubblicare l'applicazione sul server IIS locale.
Step 18- Ora personalizziamo il nostro comando MSBuild e usiamo il profilo di pubblicazione sopra e vediamo cosa succede. Nel nostro comando MSBuild, specifichiamo i seguenti parametri:
Deploy on Build is true: questo attiverà una distribuzione automatica una volta completata una build corretta.
Stiamo quindi menzionando di utilizzare il profilo di pubblicazione che è stato utilizzato nel passaggio precedente.
La versione di Visual Studio deve essere menzionata solo per la capacità di distribuzione di MSBuild su qual è la versione di Visual Studio in uso.
Quando esegui il comando precedente, MSBuild attiverà un processo di compilazione e distribuzione. Quello che noterai, lo sta distribuendo al nostroDefault Website nel nostro server IIS.
Ora se navighiamo nel sito - http://localhost/Demo/Demo.aspx vedremo il seguente output, il che significa che MSBuild ha eseguito correttamente la distribuzione sul nostro sito web.
Step 19 - Automatizzazione tramite TeamCity - Ora è il momento di aggiungere un'attività al nostro server TeamCity per utilizzare automaticamente MSBuild per distribuire la nostra applicazione, in base ai passaggi sopra menzionati.
Step 20 - Vai alla dashboard del tuo progetto e fai clic Edit Configuration Settings.
Step 21 - Vai a Build Steps e fai clic su Add a Build Step.
Scegli le seguenti opzioni:
Il tipo di corridore dovrebbe essere MSBuild
Assegna un nome al passaggio opzionale
Immettere il percorso di compilazione come Simple / Simple.csproj
Mantieni la versione di MSBuild come Microsoft Build Tools 2013
Mantieni la versione di MSBuild Tools come 12.0
Inserisci la riga di comando come / p: DeployOnBuild = true / p: PublishProfile = DemoDeployement / p: VisualStudioVersion = 12.0
Step 22 - Fare clic su Salva.
Assicurati che nei passaggi di compilazione, il passaggio di distribuzione sia l'ultimo passaggio della catena.
Step 23 - Adesso facciamo una finale git commit, per garantire che tutti i file siano in Git e possano essere utilizzati da TeamCity.
Congratulazioni, hai impostato con successo un ciclo di integrazione continua completo per la tua applicazione, che può essere eseguito in qualsiasi momento.