Romulus crisan + radu pascal click'n'deploy
-
Upload
codecampiasi -
Category
Technology
-
view
75 -
download
4
description
Transcript of Romulus crisan + radu pascal click'n'deploy
![Page 1: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/1.jpg)
![Page 2: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/2.jpg)
Click’n’Deployby Radu Pascal & Romulus Crisan
![Page 3: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/3.jpg)
What we want to achieve
![Page 4: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/4.jpg)
Naive deployment approach
by Radu Pascal & Romulus Crisan
Manually change config filesXcopy/Publish web applicationRun database scriptsRun scripts to install/update window servicesIndependent deploy Repeat for each server and environment
![Page 5: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/5.jpg)
Continuous Integration
andContinuous Deployment
![Page 6: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/6.jpg)
Real life example
![Page 7: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/7.jpg)
by Radu Pascal & Romulus Crisan
Application Architecture
Database back-up
Run update script
Rollback if needed
Back-up current version
Environment specific configuration
Xcopy/FTP/publish
Multiple servers
Environment specific configuration
Install service using netstat
![Page 8: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/8.jpg)
Is this ok ?
by Radu Pascal & Romulus Crisan
It’s ok, but:It can take lots of timeError proneNo easy way to see deployed version Rollbacks can be painfulLack of confidenceMultiply that by the number env.
![Page 9: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/9.jpg)
Our approach
by Radu Pascal & Romulus Crisan
Automate, Automate, Automate !!
![Page 10: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/10.jpg)
Before we build..
![Page 11: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/11.jpg)
Source control
by Radu Pascal & Romulus Crisan
TFSGitSVNVisual Studio Online (TFS in the cloud)GithubBitbucketLots and lots more…
![Page 12: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/12.jpg)
by Radu Pascal & Romulus Crisan
![Page 13: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/13.jpg)
by Radu Pascal & Romulus Crisan
![Page 14: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/14.jpg)
by Radu Pascal & Romulus Crisan
![Page 15: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/15.jpg)
by Radu Pascal & Romulus Crisan
![Page 16: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/16.jpg)
Can we build now?
![Page 17: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/17.jpg)
by Radu Pascal & Romulus Crisan
Developing with Visual Studio Online
Team Foundation Service
Developer
BuildServer
Visual Studio
Visual Studio Online
![Page 18: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/18.jpg)
by Radu Pascal & Romulus Crisan
Team Foundation Service
Developer
BuildServer
Visual Studio
Visual Studio Online
BuildServer
On-Premises
Adding On-Premises Build Server
![Page 19: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/19.jpg)
Instal TFS Build Server
by Radu Pascal & Romulus Crisan
Add a VSO user with enough rights to buildDownload TFS/TFS ExpressFollow the Wizard
![Page 20: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/20.jpg)
by Radu Pascal & Romulus Crisan
Visual Studio Online Rights for Build Server User
![Page 21: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/21.jpg)
by Radu Pascal & Romulus Crisan
Configure Team Foundation Build Service
![Page 22: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/22.jpg)
by Radu Pascal & Romulus Crisan
Add your Visual Studio Online Account
![Page 23: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/23.jpg)
by Radu Pascal & Romulus Crisan
Sign into the repository with a user with enough rights..
![Page 24: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/24.jpg)
Finish setting The Build Server
by Radu Pascal & Romulus Crisan
- Setup .Net build environment or..- Install Visual Studio (Express)- Install any SDKs- Setup any licenses
![Page 25: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/25.jpg)
Time to build..
![Page 26: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/26.jpg)
by Radu Pascal & Romulus Crisan
Create a New Build Definition
![Page 27: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/27.jpg)
by Radu Pascal & Romulus Crisan
Create a New Build Definition
![Page 28: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/28.jpg)
by Radu Pascal & Romulus Crisan
Create a New Build Definition
![Page 29: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/29.jpg)
by Radu Pascal & Romulus Crisan
Create a New Build Definition
![Page 30: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/30.jpg)
by Radu Pascal & Romulus Crisan
Create a New Build Definition
![Page 31: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/31.jpg)
Build Definitions
by Radu Pascal & Romulus Crisan
Gated – verify that code is compilable, and UTs are greenContinuous Integration – above plus generate deliverablesScheduled (Nightly) – above plus Automation Testing, and Automated Deploys
![Page 32: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/32.jpg)
Other Build Servers?
by Radu Pascal & Romulus Crisan
Team CityCruise ControlJenkins
.. and don’t forget to create a MSBuild script
![Page 33: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/33.jpg)
Ok, but how we build a
SPA?
![Page 34: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/34.jpg)
Task runner
by Radu Pascal & Romulus Crisan
Grunt vs. GulpNode.js awesomenessPre-compile, concat, uglify, lint, tests Dev vs Prod
![Page 35: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/35.jpg)
Our approach
by Radu Pascal & Romulus Crisan
Automate, Automate, Automate !!
![Page 36: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/36.jpg)
Time to deploy..
![Page 37: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/37.jpg)
Reasons
by Radu Pascal & Romulus Crisan
As simple as a few clicks..FastRemoves lots of human errorsReal time and history information
![Page 38: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/38.jpg)
by Radu Pascal & Romulus Crisan
![Page 39: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/39.jpg)
Octopus Deploy
by Radu Pascal & Romulus Crisan
Automated deployment for .NETAll your deployments, in one placeDeploy on-premises or to the cloud, securelyConfiguration and scriptingIntegrates with your build server
![Page 40: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/40.jpg)
Environments
![Page 41: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/41.jpg)
Environments
by Radu Pascal & Romulus Crisan
Machine TentaclesTypes Roles
![Page 42: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/42.jpg)
by Radu Pascal & Romulus Crisan
Octopus and tentacles
With Tentacle
With Tentacle
Azure SQL Database
Application Servers
Octopus ServerWith Tentacle
Azure Website
![Page 43: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/43.jpg)
Repository
![Page 44: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/44.jpg)
Repository
by Radu Pascal & Romulus Crisan
Nuget packagesInternal and external repositoriesVersioning:
Semantic versioning (semver.org)Zero to nine (zero29)
![Page 45: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/45.jpg)
Octopus Project
![Page 46: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/46.jpg)
Recap
by Radu Pascal & Romulus Crisan
TFS BuildNode.js Task runnerOctopus Deploy
![Page 47: Romulus crisan + radu pascal click'n'deploy](https://reader031.fdocuments.in/reader031/viewer/2022020123/559364151a28ab9e478b47bd/html5/thumbnails/47.jpg)
Thank you
radupascal.com&
romuluscrisan.com