21
Continuous integration

Integrazione continua e Deploy automatizzato

Embed Size (px)

DESCRIPTION

Per supportare al meglio gli sviluppi agili è necessario poter automatizzare le procedure di deploy. Grazie a TFS build possiamo sfruttare varie tecniche per automatizzare il deploy durante una build.

Citation preview

Page 1: Integrazione continua e Deploy automatizzato

Continuous integration

Page 2: Integrazione continua e Deploy automatizzato

Ricci Gian [email protected]://www.codewrecks.comhttp://blogs.ugidotnet.org/rgm

Page 3: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 3

Ci eravamo lasciati la mattina Dicendo che il segreto dei cicli di vita agili è

un feedback frequente da parte del cliente. Questa necessità comporta rilasci frequenti

del software Nascono alcune problematiche

Page 4: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 4

Deploy document Documento che contiene dettagliate

informazioni su ogni operazione manuale necessaria per il deploy

Page 5: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 5

Integrazione continua Evitare l’integration hell Per rilasci frequenti il software deve essere

costantemente nello stato «deployabile» Bisogna verificare che le varie parti

dialoghino bene e si integrino correttamente

Page 6: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 6

Integrazione continua Per evitare problemi, l’integrazione deve

essere fatta il più spesso possibile

Page 7: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 7

Tfs Build Tfs possiede un sistema di integrazione

continua chiamato Tfs build, scalabile e distribuito

Page 8: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 8

Automatizzare il deploy Manutenere il documento di deploy è

oneroso Effettuare il deploy manuale è oneroso La soluzione è integrare il deploy nel

processo di integrazione continua

Page 9: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 9

Familiarizzare con Tfs Build e deploy

DEMO

Page 10: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 10

Tecniche disponibili mediante Tfs Customizzare lo script xaml di Tfs Build ed

aggiungere le istruzioni di deploy Lo script dopo avere eseguito la build e

verificato che i test passino effettua il deploy nell’ambiente di test

Page 11: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 11

Deploy durante la build

Demo

Page 12: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 12

Tecniche disponibili mediante Tfs Realizzare script separati che effettuano il

deploy prendendo i compilati da una drop folder.

Eseguire gli script su macchine remote con PsExec durante una build standard o con una build specifica

Page 13: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 13

Deploy con script separato

Demo

Page 14: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 14

Ambienti di test Gestire ambienti di test è complesso Ambienti multipli contemporanei Hardware e simulazioni di configurazioni

reali

Page 15: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 15

Ambienti di test multipli

Gestire ambienti di test multipli porta la sua complessità

Conflitti di IP e nomi di macchine Necessità di configurare ogni ambiente di

test da zero

Page 16: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 16

Lab Management

Page 17: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 17

Creazione di ambienti di test

Gli ambienti di test vengono creati partendo da template preparati in Hyper-V e SCVMM

Page 18: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 18

Network fence

Il network fence permette di «isolare» un ambiente di test dall’esterno in modo da non avere conflitti

Questo permette di avere più ambienti di test contemporanei

Page 19: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 19

Creazione di un ambiente virtuale

Demo

Page 20: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 20

Deploy mediante TFS Build Lab Management permette il deploy di

ambienti virtuali automatizzando Hyper-V tramite SCVMM

Si ha il controllo sugli snapshot delle macchine virtuali dove si effettua il deploy

Page 21: Integrazione continua e Deploy automatizzato

Do your systems talk business? | 21

Tfs Lab Management Build e deploy in ambienti virtuali

Demo