SlideShare a Scribd company logo
1 of 27
Ricci Gian Maria
Alkampfer@nablasoft.com
@alkampfer
http://www.codewrecks.com/
http://www.getlatestversion.it/author/alkampfer/
http://blogs.ugidotnet.org/rgm
How to deploy .NET
applications with TFS Build
ALM Deep dive with TFS 2013
#vsalmdeep
Session Lineup
Deploy or Release??
Why TFS Build
Continuous deployment
Deploy Web Applications
What about my Sql Server Database?
And for other type of Applications (non web)?
#vsalmdeep
Event Sponsor
#vsalmdeep
Deploy or Release?
#vsalmdeep
 Deploy
 The act of installing software in a set of computers
 Does not requires accounting or ownership
 Release
 The act of making software available downstream
 Monitored and repeatable process
 Multi-stage process
Why continuous deployment?
#vsalmdeep
 No error made by manual procedures
 Is a good deploy documentation
 Consistent
 Repetable
 Automated
 Verified and testable
TFS Build or….
#vsalmdeep
TFS
Build
Agent Environment
Release Management?
#vsalmdeep
TFS Build Package
RM
Why using Build?
#vsalmdeep
 Pro
 No additional cost or license
 Simpler to setup
 Already in place for CI
 Cons
 Lesser pre-built actions
 Does not support pipelines
 Push process instead of pull process
What is behind Azure publising?
#vsalmdeep
 Lots of options
 We will focus on VSO/TFS integration
DEMO
Deploy to Azure Web Site
#vsalmdeep
What is behind Azure publising?
#vsalmdeep
What is behind Azure publising?
#vsalmdeep
VSO/TFS Build
agent
Azure Web
Site
Why Vso and not Git/dropbox/…?
#vsalmdeep
 Automatic trigger (scheduled, each check-in, gated
check-in, etc)
 Fully extensible as every build
 Centralized log
 Binary in Drop folder
 Publishing of Symbol Source
 Integrated with all TFS World (es: feedback tool)
What about on-premise?
#vsalmdeep
 All combinations of infrastructure are possible
 VSO + Elastic Build + Azure site (default)
 VSO + Build on premise + Azure Web Site
 TFS and Build on premise + Azure Web Site
 VSO + Build on premise + local IIS web site
 TFS and Build on premise + local IIS web site
DEMO
Change build to publish to IIS
#vsalmdeep
What about my sql server DB?
#vsalmdeep
 Sql Server (and all SQL) bring some pain for deploy
 Store latest schema changes with code (source
controlled)
 Verify new schema is valid before deployment
 Update an existing database with latest schema
without touching data
 Deploy the schema even if someone had made
manual changes from last deploy
 Deploy some static data in certain tables
 Ensure some test data for test environments
Database projects to the rescue
#vsalmdeep
 A db project uniforms database development to
normal code development
 A single project in visual studio
 Compile to Data-tier application and Deployable
Build agent
DAC
DEMO
Deploy with Database projects
#vsalmdeep
Fail as soon as possible
#vsalmdeep
 Minimize time from when a bug is introduced in code
to the time this bug is discovered
 Fail as soon as possible
 You need automatic testing
 Unit test
 Integration test
 Performance test
 User acceptance test
 etc
What to test?
#vsalmdeep
 Integration, performance, acceptance test need full
test environments
 Continuous deployment helps to keep these
environments aligned with latest bits
 You can run Automatic Tests against these
environments to immediately detect problems in
software.
DEMO
Build – deploy – performance test with TFS and
VS web performance tests
#vsalmdeep
Click-once
#vsalmdeep
 Standard desktop application can be published with
click once
 Build should be customized at least in two points
 Before the build takes place
 generate assembly file number incrementally
 After the build takes place
 publish click once application locally in the build
server
 Use mage.exe to modify publish (optional)
 Move published file in the definitive location
DEMO
Deploy click once application using console
application
#vsalmdeep
Nuget packages
#vsalmdeep
 Private or public nugget servers are exceptional to
share common dll
 Build should be customized at least in two points
 Before the build takes place
 generate assembly file number incrementally
 After the build takes place
 Generate nuget packages on the build server
 Push packages to the nuget server
TFS 2013 new workflow
#vsalmdeep
 Simplified Workflow
 Easily customizable
 Extensible out-of-the-box with scripts (es PowerShell)
DEMO
Publish nuget packages with new TFS 2013
build workflow and powershell
#vsalmdeep
Questions?
?
#vsalmdeep

More Related Content

What's hot

SPUnite17 Deep Dive Building Solutions
SPUnite17 Deep Dive Building SolutionsSPUnite17 Deep Dive Building Solutions
SPUnite17 Deep Dive Building SolutionsNCCOMMS
 
Canadian Cloud Summit 2022 - SharePoint Framework Tests Introduction
Canadian Cloud Summit 2022 - SharePoint Framework Tests IntroductionCanadian Cloud Summit 2022 - SharePoint Framework Tests Introduction
Canadian Cloud Summit 2022 - SharePoint Framework Tests IntroductionLaurent Sittler
 
Infrastructure as Code (BBWorld/DevCon13)
Infrastructure as Code (BBWorld/DevCon13)Infrastructure as Code (BBWorld/DevCon13)
Infrastructure as Code (BBWorld/DevCon13)Mike McGarr
 
dotnetsheff: Continuous delivery with Team City and Octopus Deploy
dotnetsheff: Continuous delivery with Team City and Octopus Deploydotnetsheff: Continuous delivery with Team City and Octopus Deploy
dotnetsheff: Continuous delivery with Team City and Octopus DeployKevin Kuszyk
 
Integration Testing as Validation and Monitoring
 Integration Testing as Validation and Monitoring Integration Testing as Validation and Monitoring
Integration Testing as Validation and MonitoringMelissa Benua
 
Continuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket PipelinesContinuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket PipelinesAtlassian
 
Git, YouTrack and TeamCity - DDDSydney 2011
Git, YouTrack and TeamCity - DDDSydney 2011Git, YouTrack and TeamCity - DDDSydney 2011
Git, YouTrack and TeamCity - DDDSydney 2011thinkddd
 
Continuous Delivery for Front-End Engineers
Continuous Delivery for Front-End EngineersContinuous Delivery for Front-End Engineers
Continuous Delivery for Front-End EngineersSergey Bolshchikov
 
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...Puppet
 
Postman for Efficient Professional Services: Collaboration, Mocking Dependenc...
Postman for Efficient Professional Services: Collaboration, Mocking Dependenc...Postman for Efficient Professional Services: Collaboration, Mocking Dependenc...
Postman for Efficient Professional Services: Collaboration, Mocking Dependenc...Postman
 
HandsOn TestDriven Infrastructure As Code Development
HandsOn TestDriven Infrastructure As Code DevelopmentHandsOn TestDriven Infrastructure As Code Development
HandsOn TestDriven Infrastructure As Code Developmentpingworks
 
Taking your version control to a next level with TFS and Git
Taking your version control to a next level with TFS and GitTaking your version control to a next level with TFS and Git
Taking your version control to a next level with TFS and GitAlexander Vanwynsberghe
 
Operations Validation for Infrastructure As Code - PSConfEU 2016
Operations Validation for Infrastructure As Code - PSConfEU 2016Operations Validation for Infrastructure As Code - PSConfEU 2016
Operations Validation for Infrastructure As Code - PSConfEU 2016Ravikanth Chaganti
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for TestingMukta Aphale
 

What's hot (20)

SPUnite17 Deep Dive Building Solutions
SPUnite17 Deep Dive Building SolutionsSPUnite17 Deep Dive Building Solutions
SPUnite17 Deep Dive Building Solutions
 
Canadian Cloud Summit 2022 - SharePoint Framework Tests Introduction
Canadian Cloud Summit 2022 - SharePoint Framework Tests IntroductionCanadian Cloud Summit 2022 - SharePoint Framework Tests Introduction
Canadian Cloud Summit 2022 - SharePoint Framework Tests Introduction
 
Infrastructure as Code (BBWorld/DevCon13)
Infrastructure as Code (BBWorld/DevCon13)Infrastructure as Code (BBWorld/DevCon13)
Infrastructure as Code (BBWorld/DevCon13)
 
Jenkins Reviewbot
Jenkins ReviewbotJenkins Reviewbot
Jenkins Reviewbot
 
Serverless
ServerlessServerless
Serverless
 
dotnetsheff: Continuous delivery with Team City and Octopus Deploy
dotnetsheff: Continuous delivery with Team City and Octopus Deploydotnetsheff: Continuous delivery with Team City and Octopus Deploy
dotnetsheff: Continuous delivery with Team City and Octopus Deploy
 
Integration Testing as Validation and Monitoring
 Integration Testing as Validation and Monitoring Integration Testing as Validation and Monitoring
Integration Testing as Validation and Monitoring
 
Continuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket PipelinesContinuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket Pipelines
 
Git, YouTrack and TeamCity - DDDSydney 2011
Git, YouTrack and TeamCity - DDDSydney 2011Git, YouTrack and TeamCity - DDDSydney 2011
Git, YouTrack and TeamCity - DDDSydney 2011
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Continuous Delivery for Front-End Engineers
Continuous Delivery for Front-End EngineersContinuous Delivery for Front-End Engineers
Continuous Delivery for Front-End Engineers
 
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
PuppetConf 2016 Customer Keynote: Cloud, Containers & the Impact on IT - Jeff...
 
Enter the Team City
Enter the Team CityEnter the Team City
Enter the Team City
 
Jenkins
JenkinsJenkins
Jenkins
 
Postman for Efficient Professional Services: Collaboration, Mocking Dependenc...
Postman for Efficient Professional Services: Collaboration, Mocking Dependenc...Postman for Efficient Professional Services: Collaboration, Mocking Dependenc...
Postman for Efficient Professional Services: Collaboration, Mocking Dependenc...
 
HandsOn TestDriven Infrastructure As Code Development
HandsOn TestDriven Infrastructure As Code DevelopmentHandsOn TestDriven Infrastructure As Code Development
HandsOn TestDriven Infrastructure As Code Development
 
Taking your version control to a next level with TFS and Git
Taking your version control to a next level with TFS and GitTaking your version control to a next level with TFS and Git
Taking your version control to a next level with TFS and Git
 
Operations Validation for Infrastructure As Code - PSConfEU 2016
Operations Validation for Infrastructure As Code - PSConfEU 2016Operations Validation for Infrastructure As Code - PSConfEU 2016
Operations Validation for Infrastructure As Code - PSConfEU 2016
 
Using Docker for Testing
Using Docker for TestingUsing Docker for Testing
Using Docker for Testing
 

Viewers also liked

Viewers also liked (6)

Tfs Per Team Agili
Tfs Per Team AgiliTfs Per Team Agili
Tfs Per Team Agili
 
Introduction to Visual Studio Online
Introduction to Visual Studio OnlineIntroduction to Visual Studio Online
Introduction to Visual Studio Online
 
Introduzione all'ALM
Introduzione all'ALMIntroduzione all'ALM
Introduzione all'ALM
 
Branch model in Git
Branch model in GitBranch model in Git
Branch model in Git
 
Manage your environment with DSC
Manage your environment with DSCManage your environment with DSC
Manage your environment with DSC
 
TFS - Quale source control
TFS - Quale source controlTFS - Quale source control
TFS - Quale source control
 

Similar to Deploy applications with TFS Build

Release management with TFS 2013
Release management with TFS 2013Release management with TFS 2013
Release management with TFS 2013Davide Benvegnù
 
Romulus crisan + radu pascal click'n'deploy
Romulus crisan + radu pascal   click'n'deployRomulus crisan + radu pascal   click'n'deploy
Romulus crisan + radu pascal click'n'deployCodecamp Romania
 
Install, configure and customize TFS 2013
Install, configure and customize TFS 2013Install, configure and customize TFS 2013
Install, configure and customize TFS 2013Davide Benvegnù
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applicationsSunil Dalal
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeSteve Mercier
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationAaron Eden
 
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaCloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaAmazon Web Services
 
Building with Visual Studio Online
Building with Visual Studio OnlineBuilding with Visual Studio Online
Building with Visual Studio OnlineJeff Bramwell
 
Build automation best practices
Build automation best practicesBuild automation best practices
Build automation best practicesCode Mastery
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAmazon Web Services
 
CI&CD with AWS - AWS Prague User Group - May 2015
CI&CD with AWS - AWS Prague User Group - May 2015CI&CD with AWS - AWS Prague User Group - May 2015
CI&CD with AWS - AWS Prague User Group - May 2015Vladimir Simek
 
Automated Build using teamcity
Automated Build using teamcityAutomated Build using teamcity
Automated Build using teamcityMd Jawed
 
Click’n’Deploy | SuperSpeakers @CodeCamp Iasi, 2014
Click’n’Deploy | SuperSpeakers @CodeCamp Iasi, 2014Click’n’Deploy | SuperSpeakers @CodeCamp Iasi, 2014
Click’n’Deploy | SuperSpeakers @CodeCamp Iasi, 2014Endava
 
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...Amazon Web Services
 
End-to-end CI/CD deployments of containerized applications using AWS services
End-to-end CI/CD deployments of containerized applications using AWS servicesEnd-to-end CI/CD deployments of containerized applications using AWS services
End-to-end CI/CD deployments of containerized applications using AWS servicesMassimo Ferre'
 
Test cloud application deployments locally and in CI without staging environm...
Test cloud application deployments locally and in CI without staging environm...Test cloud application deployments locally and in CI without staging environm...
Test cloud application deployments locally and in CI without staging environm...Thomas Rausch
 
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALMPráticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALMMarcelo Sousa Ancelmo
 

Similar to Deploy applications with TFS Build (20)

Release management with TFS 2013
Release management with TFS 2013Release management with TFS 2013
Release management with TFS 2013
 
Romulus crisan + radu pascal click'n'deploy
Romulus crisan + radu pascal   click'n'deployRomulus crisan + radu pascal   click'n'deploy
Romulus crisan + radu pascal click'n'deploy
 
Install, configure and customize TFS 2013
Install, configure and customize TFS 2013Install, configure and customize TFS 2013
Install, configure and customize TFS 2013
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
North east user group tour
North east user group tourNorth east user group tour
North east user group tour
 
Serverless
ServerlessServerless
Serverless
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaCloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
 
Building with Visual Studio Online
Building with Visual Studio OnlineBuilding with Visual Studio Online
Building with Visual Studio Online
 
Build automation best practices
Build automation best practicesBuild automation best practices
Build automation best practices
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
CI&CD with AWS - AWS Prague User Group - May 2015
CI&CD with AWS - AWS Prague User Group - May 2015CI&CD with AWS - AWS Prague User Group - May 2015
CI&CD with AWS - AWS Prague User Group - May 2015
 
Automated Build using teamcity
Automated Build using teamcityAutomated Build using teamcity
Automated Build using teamcity
 
Click’n’Deploy | SuperSpeakers @CodeCamp Iasi, 2014
Click’n’Deploy | SuperSpeakers @CodeCamp Iasi, 2014Click’n’Deploy | SuperSpeakers @CodeCamp Iasi, 2014
Click’n’Deploy | SuperSpeakers @CodeCamp Iasi, 2014
 
DevOps in an Embedded World
DevOps in an Embedded WorldDevOps in an Embedded World
DevOps in an Embedded World
 
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
 
End-to-end CI/CD deployments of containerized applications using AWS services
End-to-end CI/CD deployments of containerized applications using AWS servicesEnd-to-end CI/CD deployments of containerized applications using AWS services
End-to-end CI/CD deployments of containerized applications using AWS services
 
Test cloud application deployments locally and in CI without staging environm...
Test cloud application deployments locally and in CI without staging environm...Test cloud application deployments locally and in CI without staging environm...
Test cloud application deployments locally and in CI without staging environm...
 
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALMPráticas, Técnicas e Ferramentas para Continuous Delivery com ALM
Práticas, Técnicas e Ferramentas para Continuous Delivery com ALM
 

More from Gian Maria Ricci

Se non sviluppo codice non sto lavorando
Se non sviluppo codice non sto lavorandoSe non sviluppo codice non sto lavorando
Se non sviluppo codice non sto lavorandoGian Maria Ricci
 
Gestire la qualità del codice con Visual Studio, SonarQube ed Azure Devops
Gestire la qualità del codice con Visual Studio, SonarQube ed Azure DevopsGestire la qualità del codice con Visual Studio, SonarQube ed Azure Devops
Gestire la qualità del codice con Visual Studio, SonarQube ed Azure DevopsGian Maria Ricci
 
Migrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a GitMigrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a GitGian Maria Ricci
 
Real World Build + Release automation in Azure DevOps
Real World Build + Release automation in Azure DevOpsReal World Build + Release automation in Azure DevOps
Real World Build + Release automation in Azure DevOpsGian Maria Ricci
 
Gestire i rilasci automatici con azure devops
Gestire i rilasci automatici con azure devopsGestire i rilasci automatici con azure devops
Gestire i rilasci automatici con azure devopsGian Maria Ricci
 
Build and release in code with azure devops pipelines
Build and release in code with azure devops pipelinesBuild and release in code with azure devops pipelines
Build and release in code with azure devops pipelinesGian Maria Ricci
 
Azure Pipeline in salsa yaml
Azure Pipeline in salsa yamlAzure Pipeline in salsa yaml
Azure Pipeline in salsa yamlGian Maria Ricci
 
Git gitflow pull requests in devops focused teams
Git gitflow pull requests in devops focused teamsGit gitflow pull requests in devops focused teams
Git gitflow pull requests in devops focused teamsGian Maria Ricci
 
Come Organizzare il proprio Team Project
Come Organizzare il proprio Team ProjectCome Organizzare il proprio Team Project
Come Organizzare il proprio Team ProjectGian Maria Ricci
 
Automatically deployment to Azure Web Sites
Automatically deployment to Azure Web SitesAutomatically deployment to Azure Web Sites
Automatically deployment to Azure Web SitesGian Maria Ricci
 
Porfolio Management in TFS 2013
Porfolio Management in TFS 2013Porfolio Management in TFS 2013
Porfolio Management in TFS 2013Gian Maria Ricci
 
TFS or Team Foundation Service?
TFS or Team Foundation Service?TFS or Team Foundation Service?
TFS or Team Foundation Service?Gian Maria Ricci
 
Database project alla riscossa
Database project alla riscossaDatabase project alla riscossa
Database project alla riscossaGian Maria Ricci
 

More from Gian Maria Ricci (20)

Se non sviluppo codice non sto lavorando
Se non sviluppo codice non sto lavorandoSe non sviluppo codice non sto lavorando
Se non sviluppo codice non sto lavorando
 
Gestire la qualità del codice con Visual Studio, SonarQube ed Azure Devops
Gestire la qualità del codice con Visual Studio, SonarQube ed Azure DevopsGestire la qualità del codice con Visual Studio, SonarQube ed Azure Devops
Gestire la qualità del codice con Visual Studio, SonarQube ed Azure Devops
 
Migrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a GitMigrare da un VCS centralizzato a Git
Migrare da un VCS centralizzato a Git
 
Real World Build + Release automation in Azure DevOps
Real World Build + Release automation in Azure DevOpsReal World Build + Release automation in Azure DevOps
Real World Build + Release automation in Azure DevOps
 
Gestire i rilasci automatici con azure devops
Gestire i rilasci automatici con azure devopsGestire i rilasci automatici con azure devops
Gestire i rilasci automatici con azure devops
 
Build and release in code with azure devops pipelines
Build and release in code with azure devops pipelinesBuild and release in code with azure devops pipelines
Build and release in code with azure devops pipelines
 
Azure Pipeline in salsa yaml
Azure Pipeline in salsa yamlAzure Pipeline in salsa yaml
Azure Pipeline in salsa yaml
 
Git gitflow pull requests in devops focused teams
Git gitflow pull requests in devops focused teamsGit gitflow pull requests in devops focused teams
Git gitflow pull requests in devops focused teams
 
Git si o Git No
Git si o Git NoGit si o Git No
Git si o Git No
 
Testing
TestingTesting
Testing
 
Come Organizzare il proprio Team Project
Come Organizzare il proprio Team ProjectCome Organizzare il proprio Team Project
Come Organizzare il proprio Team Project
 
Git Perchè Usarlo
Git Perchè UsarloGit Perchè Usarlo
Git Perchè Usarlo
 
Automatically deployment to Azure Web Sites
Automatically deployment to Azure Web SitesAutomatically deployment to Azure Web Sites
Automatically deployment to Azure Web Sites
 
Porfolio Management in TFS 2013
Porfolio Management in TFS 2013Porfolio Management in TFS 2013
Porfolio Management in TFS 2013
 
TFS or Team Foundation Service?
TFS or Team Foundation Service?TFS or Team Foundation Service?
TFS or Team Foundation Service?
 
Typical Developer Day
Typical Developer DayTypical Developer Day
Typical Developer Day
 
Unit Testing in VS2012
Unit Testing in VS2012Unit Testing in VS2012
Unit Testing in VS2012
 
Hardware e plugin
Hardware e pluginHardware e plugin
Hardware e plugin
 
Unit Testing
Unit TestingUnit Testing
Unit Testing
 
Database project alla riscossa
Database project alla riscossaDatabase project alla riscossa
Database project alla riscossa
 

Recently uploaded

Chizaram's Women Tech Makers Deck. .pptx
Chizaram's Women Tech Makers Deck.  .pptxChizaram's Women Tech Makers Deck.  .pptx
Chizaram's Women Tech Makers Deck. .pptxogubuikealex
 
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATIONRACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATIONRachelAnnTenibroAmaz
 
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.comSaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.comsaastr
 
PHYSICS PROJECT BY MSC - NANOTECHNOLOGY
PHYSICS PROJECT BY MSC  - NANOTECHNOLOGYPHYSICS PROJECT BY MSC  - NANOTECHNOLOGY
PHYSICS PROJECT BY MSC - NANOTECHNOLOGYpruthirajnayak525
 
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringSebastiano Panichella
 
Early Modern Spain. All about this period
Early Modern Spain. All about this periodEarly Modern Spain. All about this period
Early Modern Spain. All about this periodSaraIsabelJimenez
 
Genshin Impact PPT Template by EaTemp.pptx
Genshin Impact PPT Template by EaTemp.pptxGenshin Impact PPT Template by EaTemp.pptx
Genshin Impact PPT Template by EaTemp.pptxJohnree4
 
The Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationThe Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationNathan Young
 
INDIAN GCP GUIDELINE. for Regulatory affair 1st sem CRR
INDIAN GCP GUIDELINE. for Regulatory  affair 1st sem CRRINDIAN GCP GUIDELINE. for Regulatory  affair 1st sem CRR
INDIAN GCP GUIDELINE. for Regulatory affair 1st sem CRRsarwankumar4524
 
Engaging Eid Ul Fitr Presentation for Kindergartners.pptx
Engaging Eid Ul Fitr Presentation for Kindergartners.pptxEngaging Eid Ul Fitr Presentation for Kindergartners.pptx
Engaging Eid Ul Fitr Presentation for Kindergartners.pptxAsifArshad8
 
THE COUNTRY WHO SOLVED THE WORLD_HOW CHINA LAUNCHED THE CIVILIZATION REVOLUTI...
THE COUNTRY WHO SOLVED THE WORLD_HOW CHINA LAUNCHED THE CIVILIZATION REVOLUTI...THE COUNTRY WHO SOLVED THE WORLD_HOW CHINA LAUNCHED THE CIVILIZATION REVOLUTI...
THE COUNTRY WHO SOLVED THE WORLD_HOW CHINA LAUNCHED THE CIVILIZATION REVOLUTI...漢銘 謝
 
Mathan flower ppt.pptx slide orchids ✨🌸
Mathan flower ppt.pptx slide orchids ✨🌸Mathan flower ppt.pptx slide orchids ✨🌸
Mathan flower ppt.pptx slide orchids ✨🌸mathanramanathan2005
 
Work Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxWork Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxmavinoikein
 
Quality by design.. ppt for RA (1ST SEM
Quality by design.. ppt for  RA (1ST SEMQuality by design.. ppt for  RA (1ST SEM
Quality by design.. ppt for RA (1ST SEMCharmi13
 
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.KathleenAnnCordero2
 
Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Escort Service
 
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...Henrik Hanke
 
miladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxmiladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxCarrieButtitta
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSebastiano Panichella
 

Recently uploaded (20)

Chizaram's Women Tech Makers Deck. .pptx
Chizaram's Women Tech Makers Deck.  .pptxChizaram's Women Tech Makers Deck.  .pptx
Chizaram's Women Tech Makers Deck. .pptx
 
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATIONRACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
RACHEL-ANN M. TENIBRO PRODUCT RESEARCH PRESENTATION
 
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.comSaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
SaaStr Workshop Wednesday w/ Kyle Norton, Owner.com
 
PHYSICS PROJECT BY MSC - NANOTECHNOLOGY
PHYSICS PROJECT BY MSC  - NANOTECHNOLOGYPHYSICS PROJECT BY MSC  - NANOTECHNOLOGY
PHYSICS PROJECT BY MSC - NANOTECHNOLOGY
 
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software Engineering
 
Early Modern Spain. All about this period
Early Modern Spain. All about this periodEarly Modern Spain. All about this period
Early Modern Spain. All about this period
 
Genshin Impact PPT Template by EaTemp.pptx
Genshin Impact PPT Template by EaTemp.pptxGenshin Impact PPT Template by EaTemp.pptx
Genshin Impact PPT Template by EaTemp.pptx
 
The Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationThe Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism Presentation
 
INDIAN GCP GUIDELINE. for Regulatory affair 1st sem CRR
INDIAN GCP GUIDELINE. for Regulatory  affair 1st sem CRRINDIAN GCP GUIDELINE. for Regulatory  affair 1st sem CRR
INDIAN GCP GUIDELINE. for Regulatory affair 1st sem CRR
 
Engaging Eid Ul Fitr Presentation for Kindergartners.pptx
Engaging Eid Ul Fitr Presentation for Kindergartners.pptxEngaging Eid Ul Fitr Presentation for Kindergartners.pptx
Engaging Eid Ul Fitr Presentation for Kindergartners.pptx
 
THE COUNTRY WHO SOLVED THE WORLD_HOW CHINA LAUNCHED THE CIVILIZATION REVOLUTI...
THE COUNTRY WHO SOLVED THE WORLD_HOW CHINA LAUNCHED THE CIVILIZATION REVOLUTI...THE COUNTRY WHO SOLVED THE WORLD_HOW CHINA LAUNCHED THE CIVILIZATION REVOLUTI...
THE COUNTRY WHO SOLVED THE WORLD_HOW CHINA LAUNCHED THE CIVILIZATION REVOLUTI...
 
Mathan flower ppt.pptx slide orchids ✨🌸
Mathan flower ppt.pptx slide orchids ✨🌸Mathan flower ppt.pptx slide orchids ✨🌸
Mathan flower ppt.pptx slide orchids ✨🌸
 
Work Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptxWork Remotely with Confluence ACE 2.pptx
Work Remotely with Confluence ACE 2.pptx
 
Quality by design.. ppt for RA (1ST SEM
Quality by design.. ppt for  RA (1ST SEMQuality by design.. ppt for  RA (1ST SEM
Quality by design.. ppt for RA (1ST SEM
 
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
PAG-UNLAD NG EKONOMIYA na dapat isaalang alang sa pag-aaral.
 
Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170
 
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
DGT @ CTAC 2024 Valencia: Most crucial invest to digitalisation_Sven Zoelle_v...
 
miladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxmiladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptx
 
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with AerialistSimulation-based Testing of Unmanned Aerial Vehicles with Aerialist
Simulation-based Testing of Unmanned Aerial Vehicles with Aerialist
 

Deploy applications with TFS Build

  • 2. Session Lineup Deploy or Release?? Why TFS Build Continuous deployment Deploy Web Applications What about my Sql Server Database? And for other type of Applications (non web)? #vsalmdeep
  • 4. Deploy or Release? #vsalmdeep  Deploy  The act of installing software in a set of computers  Does not requires accounting or ownership  Release  The act of making software available downstream  Monitored and repeatable process  Multi-stage process
  • 5. Why continuous deployment? #vsalmdeep  No error made by manual procedures  Is a good deploy documentation  Consistent  Repetable  Automated  Verified and testable
  • 8. Why using Build? #vsalmdeep  Pro  No additional cost or license  Simpler to setup  Already in place for CI  Cons  Lesser pre-built actions  Does not support pipelines  Push process instead of pull process
  • 9. What is behind Azure publising? #vsalmdeep  Lots of options  We will focus on VSO/TFS integration
  • 10. DEMO Deploy to Azure Web Site #vsalmdeep
  • 11. What is behind Azure publising? #vsalmdeep
  • 12. What is behind Azure publising? #vsalmdeep VSO/TFS Build agent Azure Web Site
  • 13. Why Vso and not Git/dropbox/…? #vsalmdeep  Automatic trigger (scheduled, each check-in, gated check-in, etc)  Fully extensible as every build  Centralized log  Binary in Drop folder  Publishing of Symbol Source  Integrated with all TFS World (es: feedback tool)
  • 14. What about on-premise? #vsalmdeep  All combinations of infrastructure are possible  VSO + Elastic Build + Azure site (default)  VSO + Build on premise + Azure Web Site  TFS and Build on premise + Azure Web Site  VSO + Build on premise + local IIS web site  TFS and Build on premise + local IIS web site
  • 15. DEMO Change build to publish to IIS #vsalmdeep
  • 16. What about my sql server DB? #vsalmdeep  Sql Server (and all SQL) bring some pain for deploy  Store latest schema changes with code (source controlled)  Verify new schema is valid before deployment  Update an existing database with latest schema without touching data  Deploy the schema even if someone had made manual changes from last deploy  Deploy some static data in certain tables  Ensure some test data for test environments
  • 17. Database projects to the rescue #vsalmdeep  A db project uniforms database development to normal code development  A single project in visual studio  Compile to Data-tier application and Deployable Build agent DAC
  • 18. DEMO Deploy with Database projects #vsalmdeep
  • 19. Fail as soon as possible #vsalmdeep  Minimize time from when a bug is introduced in code to the time this bug is discovered  Fail as soon as possible  You need automatic testing  Unit test  Integration test  Performance test  User acceptance test  etc
  • 20. What to test? #vsalmdeep  Integration, performance, acceptance test need full test environments  Continuous deployment helps to keep these environments aligned with latest bits  You can run Automatic Tests against these environments to immediately detect problems in software.
  • 21. DEMO Build – deploy – performance test with TFS and VS web performance tests #vsalmdeep
  • 22. Click-once #vsalmdeep  Standard desktop application can be published with click once  Build should be customized at least in two points  Before the build takes place  generate assembly file number incrementally  After the build takes place  publish click once application locally in the build server  Use mage.exe to modify publish (optional)  Move published file in the definitive location
  • 23. DEMO Deploy click once application using console application #vsalmdeep
  • 24. Nuget packages #vsalmdeep  Private or public nugget servers are exceptional to share common dll  Build should be customized at least in two points  Before the build takes place  generate assembly file number incrementally  After the build takes place  Generate nuget packages on the build server  Push packages to the nuget server
  • 25. TFS 2013 new workflow #vsalmdeep  Simplified Workflow  Easily customizable  Extensible out-of-the-box with scripts (es PowerShell)
  • 26. DEMO Publish nuget packages with new TFS 2013 build workflow and powershell #vsalmdeep