2. INQUADRAMENTO DELLA SESSIONE
Livello 100/200
Cogliere l’uso di Visual Studio Team Services
in un approccio DevOps
Potete interrompere liberamente
2
3. DI CHE SI CHIACCHIERA?
DevOps?
Demo commentate
Un ambiente per il codice
Una applicazione
Il suo rilascio
Riconfigurazione
Riassunto e riferimenti
3
OpsDev
11. DEVOPS IS A CULTURE, MOVEMENT
OR PRACTICE
DevOps is a term used to refer to a set of practicesthat emphasizes
the collaboration and communication of both software developers
and other information-technology (IT) professionals while
automating the process of software delivery and infrastructure
changes.
DevOps represents a change in IT culture, focusing on rapid IT service delivery through the
adoption of agile, lean practices in the context of a system-oriented approach. DevOps emphasizes
people (and culture), and seeks to improve collaboration between operations and development
teams. DevOps implementations utilize technology — especially automation tools that can leverage
an increasingly programmable and dynamic infrastructure from a life cycle perspective.
DevOps is the union of people, process, and products to enable
continuous delivery of value to our end users.
Wikipedia (2017)
Gartner
Microsoft (Donovan Brown)
11
12. IL MANUALE RECITA
DevOps is the result of
applying Lean principles to the
technology value stream
DevOps e’ il prodotto dell’applicazione dei
principi lean alla generazione di valore
mediante la tecnologia
(trad. mia)
19. INFRASTRUCTURE-AS-CODE – CONSIDERAZIONI
Dichiarativo o imperativo
Version Control
Continuous Integration
Dinamico o Statico
Azure Resource Manager
Dichiarativo, Json-based
Estendibile (script, DSC)
Tutta l’infrastruttura
AWS CloudFormation
Dichiarativo, Json-based
Docker
Non cosi dichiarativo
Livello di singolo container
Swarm, Kubernetes, Mesos, …
Ansible, Puppet, Chef, CFEngine, …
19
25. PASSWORD E CHIAVI (SECRETS)
Build time
Signing
Deploy time
Credentials
Run time
Tokens
Avoid exposures
git push hook
Static analysis
.gitignore
Version Control centralizzato
Repositories dedicati
Azure Key Vault
AWS Key Management Service
eccetera
25
34. BIBLIOGRAFIA (SEGUE)
DevOps on the Microsoft Stack — Wouter de Kort (Apress)
https://www.amazon.com/DevOps-Microsoft-Stack-Wouter-Kort/dp/1484214471/
Continuous Delivery with Visual Studio ALM 2015 —
M.Olausson, J.Ehn (Apress)
http://www.amazon.com/Continuous-Delivery-Visual-Studio-2015/dp/1484212738/
Beginning Build and Release Management with TFS 2017 and
VSTS — Chandrasekara, Chaminda (Apress)
http://www.apress.com/gp/book/9781484228104
Continuous Delivery with Windows and .NET — Matthew
Skelton and Chris O'Dell (O'Reilly)
http://www.oreilly.com/webops-perf/free/continuous-delivery-with-windows-and-
net.csp
34
35. COMPITI PER CASA
Dove tengo la configurazione?
Come aggiorno la configurazione?
Come separo configurazioni di sviluppo da produzione?
Dove tengo le chiavi segrete e chi vi ha accesso?
Come traccio le versioni?
Chi autorizza i cambiamenti e come?
Come conservo i Dati?
Come aggiorno schemi database e interfacce tra moduli?
Costruisco immagini o faccio il deploy via script?
Che finestre di rilascio ho?
Come traccio le attività e gli errori?
Come raccolgo informazioni dalla produzione?
35
http://www.gartner.com/it-glossary/devops/
DevOps is a term used to refer to a set of practices that emphasize the collaboration and communication of both software developers and information technology (IT) professionals while automating the process of software delivery and infrastructure changes. It aims at establishing a culture and environment, where building, testing, and releasing software can happen rapidly, frequently, and more reliably.
Wikipedia (2017)