enterprise provisioning with chocolatey

15
Enterprise Provisioning with Chocolatey

Upload: adoadoado1

Post on 15-Jan-2015

783 views

Category:

Technology


1 download

DESCRIPTION

Deployment automation became so popular that you’ll unlikely work on the project without it. But when it comes to OS configuration, installing tools and supplementary frameworks, many people just setup everything manually because they’ll probably do it just once or twice. The same for goes for setting up development workstation or virtual machine for reproducing issues – it may take multiple hours to do it manually: find the required frameworks and tools, download the right versions, set corporate license details and import configuration files. One thing which is usually left without attention is that automation is not just about repeating stuff thousand times. Server deployment scripts can also replace some documentation, provide a very convenient way to create identical environment, and can be easily used to scale-out in future. This talk is about the ways to automate development environment setup as well as server provisioning. I’ll show the tools, typical use cases, tips & tricks learned during implementation. After this presentation you’ll bootstrap your next development machine in one click!

TRANSCRIPT

Page 1: Enterprise provisioning with chocolatey

Enterprise Provisioning with Chocolatey

Page 2: Enterprise provisioning with chocolatey

About Me

Alexander Doroshenko

Sitecore Ukraine

@adoprog

http://sitecoresnippets.blogspot.com

http://github.com/adoprog

Page 3: Enterprise provisioning with chocolatey

Why it matters

0

1

2

3

4

5

6

7

8

9

2011 2012 2013

Production Deployment Project Setup Developer's Desktop

Ho

urs

Page 4: Enterprise provisioning with chocolatey

Developer's Desktop

Page 5: Enterprise provisioning with chocolatey

Web Servers

• Hard to reproduce tricky issues

• Different configurations in a web farm

• Scaling web servers is complicated

• Test servers may be not exactly the same

Page 6: Enterprise provisioning with chocolatey

Build Servers

• No identical environment for debug

• Scaling build servers is complicated

Page 7: Enterprise provisioning with chocolatey

Solution?

Page 8: Enterprise provisioning with chocolatey

USE

CHOCOLATEY

TO INSTALL

SOFTWARE

USE

BOXSTARTER

TO PROVISION

DESKTOP

Page 9: Enterprise provisioning with chocolatey

Choco… what?

• Chocolatey is like apt-get a package manager for Windows

• Based on NuGet, uses the same package structure

• Type “cinst %whatever%” to install %whatever%

• Unattended install for simply anything

Page 10: Enterprise provisioning with chocolatey

BoxStarter

• Start provisioning from console

• Chocolatey will be installed automatically

• Disables UAC and Windows Update

• Manages reboots

Page 11: Enterprise provisioning with chocolatey

Create your own packages

• Do not rely on internet access speed

• Bundle configuration files (GhostDoc, StyleCop etc.)

• Set corporate license details

• Install programs without installers (nAnt, jMeter, etc.)

Page 12: Enterprise provisioning with chocolatey

The New Desktop

1. Choose BoxStarter package from the library• Developer_General_Windows8

• Developer_%Project name%_Windows7

2. Provision from command line• \\Boxstarter\BoxStarter.bat Developer_General_Windows8

3. Start Hacking

Page 13: Enterprise provisioning with chocolatey

The New Server

• Use Chocolatey or BoxStarter

• Always identical environments

• Simple and automated scaling

• Installation from trusted sources

• Simplifies reproducing issues

Page 14: Enterprise provisioning with chocolatey

Hints

• MyGet / ProGet have useful “proxy” option

• Use dependencies to avoid duplicate code

• Use tokens & different feeds to support multiple locations

• Install and configure anything with PowerShell

Page 15: Enterprise provisioning with chocolatey