SlideShare a Scribd company logo
Chocolatey
The package manager for Windows
Software Automation
for Windows
Rob Reynolds
Founder
Chocolatey Software
@ferventcoder
Gary Ewan Park
Senior Software Engineer
Chocolatey Software
@gep13
Rob Reynolds
• Creator and Founder of Chocolatey
• Enjoys long walks on the beach and designing
solutions that make hard things easy
• Co-wrote infrastructure framework 

known as the Chuck Norris Framework
• Over 10 years experience in 

infrastructure automation
• Obsesses over user experience
• Microsoft MVP for both Cloud and Datacenter
Management and Visual Studio and
Development Technologies
Gary Ewan Park
• Senior Software Engineer
• Chocolatey GUI product owner
• Loves Cake, sometimes Chocolatey Cake
• Developing with .NET for nearly 10 years
• Founding member of Aberdeen
Developers .NET User Group
• Microsoft MVP for Visual Studio and
Development Technologies
Agenda
• The Story of Windows
Automation
• Windows Software
Ecosystem
• Chocolatey
• Chocolatey + DSC
• Sneak Peeks!
Let’s talk about a story…
possibly your story
The Story of Modern
Automation for Windows
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
You probably use or have
used traditional tools
Traditional Tools
• Manual Configuration
• Golden Images
• Endpoint management tools
• Not necessarily bad, just are harder to fit into
modern automation approaches
Modern Automation
• Feature-Rich
• Infrastructure as Code (IaC)
• Source Control
• Testable Infrastructure
• Reporting
• Centralized Management
PowerShell DSC
• Microsoft
• Building on PowerShell
• Desired State
• Modern Approaches
• Framework - couple it with full Configuration
Management Platforms like Puppet / Chef / Ansible
when appropriate
So you modernized your
Windows automation
DevOps == Rainbows and
Unicorns
“Umm…”
Rainbows and Unicorns
“Just go with it…”
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
Something was not quite right…
Configuration Management
alone is missing something
Software Management / Package
Management is necessary for
great Configuration Management
Software management may
account for 50-90% of your
automation
Windows Software Ecosystem
• Over 20 installer formats and
thousands of installers in the
wild
• Zips and other archive formats
• Software installers are messy
• Deploy internal/3rd party
software using same approach?
• It’s like the Wild West
PowerShell DSC - Package Resource
• You may have used Package Resource
• Finding the PackageID (MSI Product Code GUID)
• Non-MSI?
• Upgrades?
“Fortunately there is a
better way”
What is Chocolatey?
• Software Management
• PowerShell
• Fancy zip files = “packages”
• Packages are independent software deployment
artifacts
• Takes your deployment scripts to the next level
So you knew about
Chocolatey
But does it work well in
organizational sense?
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
That’s an iceberg
Well, obviously - what does
it represent though?
Here’s a hint
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
Let’s take a step back and
evaluate what’s possible
Chocolatey - Sane Software Management
• Easily manage the software lifecycle
• Universal format for managing all aspects
of Windows software are 1st class citizens
(native installers, scripts, zips, binaries)
• PowerShell module simplifies work
• Packages are independent building blocks
• Integrates with configuration
management and RMM tools
• Business friendly features
Chocolatey - The Approach
• Single, unifying interface - control
the chaos
• Decentralized - multiple places to
get packages, including internal
• PowerShell
• Flexible
• Secure
• Reliable
7+ years - proven technology
Chocolatey - The Approach (Sum it up!)
With Chocolatey you can write a software
deployment once, deploy it everywhere with
everything, then manage and track that
software over time (even without installers).
FOSS vs Chocolatey for Business (C4B)
• Chocolatey open source (FOSS) == package
management
• Works well in organizational use
• C4B == complete software management
• Smoother experience
• Builds on top of FOSS
• Better system integration, endpoint
management, etc
• Better visual interfaces (GUIs)
• Features geared specifically towards
organizational use
Sweet Features
Smart Installs / Smarter Upgrades
• Track software installation in Programs &
Features to map packages to system
installs
• Track environment variable changes
• Leave out guesswork by reporting on
software installation location
• Upgrades - Use Xml Document Transform
(XDT) for .NET configuration file changes
• Exclusive to Chocolatey - Use new tools /
commands without closing / re-opening
your shell for environment changes to
take effect
Graphical Interface - ChocolateyGUI
• Configure Chocolatey
• Manage software
installations
• Great for Desktop
users
• Great for Self-Service
Management (C4B)
Automatic Uninstallation
• Exclusive to Chocolatey - Automatically
uninstall 80-90% of installations
without uninstall script
• Installer packages manage native
installations into Programs and
Features
• AutoUninstaller reduces time by not
developing and managing uninstall
scripts for installer packages
• Up to 95% effective in licensed editions
thanks to enhancements and Package
Synchronizer
Integrates with Everything
• https://chocolatey.org/docs/features-infrastructure-
automation
• Puppet
• Chef (built-in), cookbook
• PowerShell DSC
• Ansible
• Saltstack
• Octopus Deploy
• Boxstarter
• SCCM
• RMM, or really anything that can run scripts
Reporting / Auditing
Inventory - Comprehensive Software Audit
• Exclusive to Chocolatey - Visibility
beyond just the software ‘installed’ in
Programs & Features
• Track versions of zip archives & own
internal software that is not visible in
system installation.
• Get a complete view of your systems.
Chocolatey reports applications in
systems not directly under its
management.
• Package Audit (C4B) adds who, when,
and history
Package Synchronizer (C4B) - All Packages in
Programs and Features
• Programs and Features
represents only 50-80% of the
software on a machine
• Chocolatey brings managed
entries for non-installer
packages
• Supporting legacy inventory
reporting systems is now a
snap
• Do not need to build MSIs /
Installers for internal use just
to support legacy reporting
Logging - Detailed Reporting
• Log file captures very
detailed information -
environment and state
• Reduces rollback /
recreation necessity
Compliance – Audit Out of Date Software
• choco outdated
• Comprehensive reporting
on available upgrades
• See what will upgrade on
next maintenance
window
• Pinned items won't
upgrade until pin is
remove
Package Repository
Community Package Repository
• https://chocolatey.org/packages
• Community Feed / Community
Maintained
• Moderated as of October 2014
• Everything goes through VirusTotal
• Organizations Should Avoid
• Not Fully Reliable - public repo
means subject to distribution
rights (download CDN cache
feature helps)
• Trust and Control
Hosting Your Own Package Server
• https://chocolatey.org/docs/how-to-host-feed
• Artifactory Pro (cross-platform)
• Sonatype Nexus (cross-platform)
• ProGet / MyGet (hosted)
• Chocolatey.Server
• NuGet.Server / NuGet Gallery proper
• Visual Studio Team Services (v2 endpoints) / TFS
• File Share (DFS, CIFS, SMB) / SCCM Distribution points
Creating Software
Deployment “Packages”
Chocolatey Packages
• Terminology: "Package" is nupkg file, "Software" is binaries or installers
• Zip files + Versioning, Dependencies & PowerShell
• Metadata - Software Information / Package Information
• PowerShell - https://chocolatey.org/docs/helpers-reference
• 30+ Built-in functions - complex tasks become 1 liners
• Handle additional missing installer logic (like add to PATH)
• Add options missing from installer arguments
• Files - drop in binaries, native installers
Creating Packages
• https://chocolatey.org/docs/create-
packages
• choco new
• Generates package files with most of
the work done
• Create your own packaging templates!
Package Builder (C4B) - “Generate software
deployment packages in seconds”
• Package Builder automatically
creates high quality packaging from
an installer/zip in 5-10 seconds
• Determines everything necessary
for silently installing software
• Supports passing urls (and
checksums) - downloads files first
• Allows customization
• Supports exe, msi, 7z, zip, msu, and
msp files
Package Internalizer (C4B) - “Convert existing
packages to 100% offline and reliable”
• Take advantage of existing packages
without dependency on the internet
• Downloads existing package and all
remote resources
• Recompiles package to use those
internal resources
• Option to download and point to
other locations
• Ability to host packages on private
internal repositories
• Visual Interface coming
How does it work?
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
Package Synchronizer
(Licensed+)
Package Synchronizer (Licensed) - Auto
Sync
• Chocolatey maintains state based
on packages. System state can be
manipulated outside of Chocolatey
• Any Chocolatey command will
trigger synchronization in licensed
editions of Chocolatey
• Package Synchronizer syncs with
manual software removal
• Syncs w/software that
automatically upgrades, such as
Chrome
Package Synchronizer (C4B) - Choco Sync
Command
• Brings all software in
Programs and Features
under Chocolatey
management
• Generates packaging and
baselines to Chocolatey
install
• Provides packaging code to
take back to source control
Package Reducer (Licensed)
• Reduce Chocolatey space
usage down automatically
• Reduction on install/
upgrade
• choco optimize to clean
existing
Other Features
• https://chocolatey.org/docs/release-notes
• Internal sources (like ProGet)
• choco upgrade all - Windows update for
your 3rd party and internal software
• Shimming - like symlinks but better
• Pass install arguments directly through to
installer (append or override package args)
• Package Parameters to adjust logic in
packages
• Handles locking on upgrades in package
folders
• Great reference docs - https://
chocolatey.org/docs/commands-
reference & https://chocolatey.org/
docs/helpers-reference
• Excellent open source support
community
• 30+ built-in PowerShell Functions
• Extend functionality with your own
PowerShell Modules
• Custom Package Templates
• Can manage anything on Windows
Other Features (C4B)
• https://chocolatey.org/docs/
release-notes-licensed
• Auto-uninstaller more effective -
uninstaller detection / Package
Synchronizer
• Install/upgrade keeping secrets
out of logs
• Ubiquitous Install Directory
Option
• More built-in PowerShell functions
• Uninstall non-Chocolatey managed
software
• Direct Installer - install directly from
exe/msi
• Package Throttle
• Runtime malware protection
• CDN Cache
• Professional Packaging Services
• Amazing expert support team -
https://chocolatey.org/support
Chocolatey Roadmap
• https://chocolatey.org/docs/
roadmap
• Central Management UI (C4B)
• Choco Deploy CLI (C4B)
• WSA / Windows Nano Support
• PowerShell
PackageManagement Official
Provider
• Package Enhancements
• Pack Validation
• Virtual packages
• GPG Signing
• Package Grid (C4B)
• Deferred Installer (C4B)
• Possible support on other
platforms
Where does DSC come in?
cChoco DSC Resource
• Manages Chocolatey
installation
• Manages Choco sources and
configuration
• Manages packages
• https://github.com/
PowerShellOrg/cChoco
• https://
www.powershellgallery.com/
packages/cChoco/2.3.0.0
cChocoInstaller
• Manages Chocolatey
installation
• Manage install location
• Works offline, specify a
script to run locally
cChocoSource
• Manage available
package sources
• Add or remove, does
not disable
• Add credentials
• Add priorities for
sources
cChocoFeature
• Manage available
Chocolatey features
• cChoco vNext
cChocoPackageInstall
• Ensure software
package installation
• Optional params,
chocoParams, Version,
Source, and
AutoUpgrade
• Allows customizing
complete choco call
cChoco - Get Involved
• If you are looking for a place
to contribute, this is a good
place
• https://github.com/
chocolatey/cchoco
Demo
This is you
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
This is you on Chocolatey
 Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018
Any Questions?
+
• Rob (@ferventcoder)
• rob at chocolatey
dot io
• Gary (@gep13)
• gary at chocolatey
dot io
Evaluate Chocolatey for Business in your environment - discounts available conference attendees - reach out at https://chocolatey.org/
contact for details
Ad

More Related Content

What's hot (20)

Modern Software Management on Windows w/Chocolatey
Modern Software Management on Windows w/ChocolateyModern Software Management on Windows w/Chocolatey
Modern Software Management on Windows w/Chocolatey
Rob Reynolds
 
One drupal to rule them all - Drupalcamp Caceres
One drupal to rule them all - Drupalcamp CaceresOne drupal to rule them all - Drupalcamp Caceres
One drupal to rule them all - Drupalcamp Caceres
hernanibf
 
Deployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and ConfigurationsDeployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and Configurations
nyccamp
 
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
Howard Greenberg
 
Transformations: Smart Application Migration to XPages
Transformations: Smart Application Migration to XPagesTransformations: Smart Application Migration to XPages
Transformations: Smart Application Migration to XPages
Teamstudio
 
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
Heiko Voigt
 
OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020
Howard Greenberg
 
How adding a further tool can be a good thing
How adding a further tool can be a good thingHow adding a further tool can be a good thing
How adding a further tool can be a good thing
Belsoft
 
Move Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneMove Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast Lane
Teamstudio
 
Get Rapid Right-sized and Recent with the Liberty Repository
Get Rapid Right-sized and Recent with the Liberty RepositoryGet Rapid Right-sized and Recent with the Liberty Repository
Get Rapid Right-sized and Recent with the Liberty Repository
Graham Charters
 
VA Smalltalk Update ESUG2014
VA Smalltalk Update ESUG2014VA Smalltalk Update ESUG2014
VA Smalltalk Update ESUG2014
ESUG
 
Acquia Commons
Acquia CommonsAcquia Commons
Acquia Commons
hernanibf
 
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
Teamstudio
 
Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!
Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!
Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!
ddrschiw
 
Bringing DevOps to the Database
Bringing DevOps to the DatabaseBringing DevOps to the Database
Bringing DevOps to the Database
Michaela Murray
 
BP-10 Keeping Your Sanity – Rapid Development & Deployment Tools
BP-10 Keeping Your Sanity – Rapid Development & Deployment ToolsBP-10 Keeping Your Sanity – Rapid Development & Deployment Tools
BP-10 Keeping Your Sanity – Rapid Development & Deployment Tools
Alfresco Software
 
Modern DevOps across Technologies on premises and clouds with Oracle Manageme...
Modern DevOps across Technologies on premises and clouds with Oracle Manageme...Modern DevOps across Technologies on premises and clouds with Oracle Manageme...
Modern DevOps across Technologies on premises and clouds with Oracle Manageme...
Lucas Jellema
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
Nuxeo
 
GDPR- The Buck Stops Here
GDPR-  The Buck Stops HereGDPR-  The Buck Stops Here
GDPR- The Buck Stops Here
Kellyn Pot'Vin-Gorman
 
Soccnx11 Two wrongs don't make a right - Troubleshooting Connections
Soccnx11 Two wrongs don't make a right - Troubleshooting Connections Soccnx11 Two wrongs don't make a right - Troubleshooting Connections
Soccnx11 Two wrongs don't make a right - Troubleshooting Connections
Nico Meisenzahl
 
Modern Software Management on Windows w/Chocolatey
Modern Software Management on Windows w/ChocolateyModern Software Management on Windows w/Chocolatey
Modern Software Management on Windows w/Chocolatey
Rob Reynolds
 
One drupal to rule them all - Drupalcamp Caceres
One drupal to rule them all - Drupalcamp CaceresOne drupal to rule them all - Drupalcamp Caceres
One drupal to rule them all - Drupalcamp Caceres
hernanibf
 
Deployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and ConfigurationsDeployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and Configurations
nyccamp
 
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
Howard Greenberg
 
Transformations: Smart Application Migration to XPages
Transformations: Smart Application Migration to XPagesTransformations: Smart Application Migration to XPages
Transformations: Smart Application Migration to XPages
Teamstudio
 
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
What is cool with Domino V10, Proton and Node.JS, and why would I use it in ...
Heiko Voigt
 
OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020
Howard Greenberg
 
How adding a further tool can be a good thing
How adding a further tool can be a good thingHow adding a further tool can be a good thing
How adding a further tool can be a good thing
Belsoft
 
Move Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneMove Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast Lane
Teamstudio
 
Get Rapid Right-sized and Recent with the Liberty Repository
Get Rapid Right-sized and Recent with the Liberty RepositoryGet Rapid Right-sized and Recent with the Liberty Repository
Get Rapid Right-sized and Recent with the Liberty Repository
Graham Charters
 
VA Smalltalk Update ESUG2014
VA Smalltalk Update ESUG2014VA Smalltalk Update ESUG2014
VA Smalltalk Update ESUG2014
ESUG
 
Acquia Commons
Acquia CommonsAcquia Commons
Acquia Commons
hernanibf
 
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
The Autobahn Has No Speed Limit - Your XPages Shouldn't Either!
Teamstudio
 
Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!
Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!
Ad108 - XPages in the IBM Lotus Notes Client - A Deep Dive!
ddrschiw
 
Bringing DevOps to the Database
Bringing DevOps to the DatabaseBringing DevOps to the Database
Bringing DevOps to the Database
Michaela Murray
 
BP-10 Keeping Your Sanity – Rapid Development & Deployment Tools
BP-10 Keeping Your Sanity – Rapid Development & Deployment ToolsBP-10 Keeping Your Sanity – Rapid Development & Deployment Tools
BP-10 Keeping Your Sanity – Rapid Development & Deployment Tools
Alfresco Software
 
Modern DevOps across Technologies on premises and clouds with Oracle Manageme...
Modern DevOps across Technologies on premises and clouds with Oracle Manageme...Modern DevOps across Technologies on premises and clouds with Oracle Manageme...
Modern DevOps across Technologies on premises and clouds with Oracle Manageme...
Lucas Jellema
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
Nuxeo
 
Soccnx11 Two wrongs don't make a right - Troubleshooting Connections
Soccnx11 Two wrongs don't make a right - Troubleshooting Connections Soccnx11 Two wrongs don't make a right - Troubleshooting Connections
Soccnx11 Two wrongs don't make a right - Troubleshooting Connections
Nico Meisenzahl
 

Similar to Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018 (20)

Easily Manage Software on Windows with Chocolatey - PuppetConf 2016
Easily Manage Software on Windows with Chocolatey - PuppetConf 2016Easily Manage Software on Windows with Chocolatey - PuppetConf 2016
Easily Manage Software on Windows with Chocolatey - PuppetConf 2016
Rob Reynolds
 
PuppetConf 2016: Easily Manage Software on Windows with Chocolatey – Rob Reyn...
PuppetConf 2016: Easily Manage Software on Windows with Chocolatey – Rob Reyn...PuppetConf 2016: Easily Manage Software on Windows with Chocolatey – Rob Reyn...
PuppetConf 2016: Easily Manage Software on Windows with Chocolatey – Rob Reyn...
Puppet
 
Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...
Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...
Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...
Puppet
 
Chocolatey and Puppet: Managing Your Windows Software Since 2011
Chocolatey and Puppet: Managing Your Windows Software Since 2011Chocolatey and Puppet: Managing Your Windows Software Since 2011
Chocolatey and Puppet: Managing Your Windows Software Since 2011
Rob Reynolds
 
Package Management on Windows with Chocolatey
Package Management on Windows with ChocolateyPackage Management on Windows with Chocolatey
Package Management on Windows with Chocolatey
Puppet
 
FlexDeploy Product Technical Overview
FlexDeploy Product Technical OverviewFlexDeploy Product Technical Overview
FlexDeploy Product Technical Overview
Dalibor Blazevic
 
Docker in the Enterprise
Docker in the EnterpriseDocker in the Enterprise
Docker in the Enterprise
Saul Caganoff
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Howard Greenberg
 
Branding office 365 with front end tooling
Branding office 365 with front end toolingBranding office 365 with front end tooling
Branding office 365 with front end tooling
Thomas Daly
 
DCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production ParityDCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production Parity
Geoff Harcourt
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server Management
Sharkrit JOBBO
 
Continuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with JenkinsContinuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with Jenkins
ecubemarketing
 
Functionality, security and performance monitoring of web assets (e.g. Joomla...
Functionality, security and performance monitoring of web assets (e.g. Joomla...Functionality, security and performance monitoring of web assets (e.g. Joomla...
Functionality, security and performance monitoring of web assets (e.g. Joomla...
Sanjay Willie
 
Amis conference soa deployment. the dirty tricks using bamboo, nexus and xl ...
Amis conference soa deployment. the dirty tricks using  bamboo, nexus and xl ...Amis conference soa deployment. the dirty tricks using  bamboo, nexus and xl ...
Amis conference soa deployment. the dirty tricks using bamboo, nexus and xl ...
Getting value from IoT, Integration and Data Analytics
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill Ayers
SPC Adriatics
 
Smart Platform Infrastructure with AWS
Smart Platform Infrastructure with AWSSmart Platform Infrastructure with AWS
Smart Platform Infrastructure with AWS
James Huston
 
Intro to SharePoint 2010 development for .NET developers
Intro to SharePoint 2010 development for .NET developersIntro to SharePoint 2010 development for .NET developers
Intro to SharePoint 2010 development for .NET developers
John Ferringer
 
Patch Management on Windows with Puppet
Patch Management on Windows with PuppetPatch Management on Windows with Puppet
Patch Management on Windows with Puppet
Puppet
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
Jeremy Thake
 
Deploying software at Scale
Deploying software at ScaleDeploying software at Scale
Deploying software at Scale
Kris Buytaert
 
Easily Manage Software on Windows with Chocolatey - PuppetConf 2016
Easily Manage Software on Windows with Chocolatey - PuppetConf 2016Easily Manage Software on Windows with Chocolatey - PuppetConf 2016
Easily Manage Software on Windows with Chocolatey - PuppetConf 2016
Rob Reynolds
 
PuppetConf 2016: Easily Manage Software on Windows with Chocolatey – Rob Reyn...
PuppetConf 2016: Easily Manage Software on Windows with Chocolatey – Rob Reyn...PuppetConf 2016: Easily Manage Software on Windows with Chocolatey – Rob Reyn...
PuppetConf 2016: Easily Manage Software on Windows with Chocolatey – Rob Reyn...
Puppet
 
Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...
Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...
Easily Manage Patching and Application Updates with Chocolatey + Puppet - Apr...
Puppet
 
Chocolatey and Puppet: Managing Your Windows Software Since 2011
Chocolatey and Puppet: Managing Your Windows Software Since 2011Chocolatey and Puppet: Managing Your Windows Software Since 2011
Chocolatey and Puppet: Managing Your Windows Software Since 2011
Rob Reynolds
 
Package Management on Windows with Chocolatey
Package Management on Windows with ChocolateyPackage Management on Windows with Chocolatey
Package Management on Windows with Chocolatey
Puppet
 
FlexDeploy Product Technical Overview
FlexDeploy Product Technical OverviewFlexDeploy Product Technical Overview
FlexDeploy Product Technical Overview
Dalibor Blazevic
 
Docker in the Enterprise
Docker in the EnterpriseDocker in the Enterprise
Docker in the Enterprise
Saul Caganoff
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
Howard Greenberg
 
Branding office 365 with front end tooling
Branding office 365 with front end toolingBranding office 365 with front end tooling
Branding office 365 with front end tooling
Thomas Daly
 
DCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production ParityDCRUG: Achieving Development-Production Parity
DCRUG: Achieving Development-Production Parity
Geoff Harcourt
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server Management
Sharkrit JOBBO
 
Continuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with JenkinsContinuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with Jenkins
ecubemarketing
 
Functionality, security and performance monitoring of web assets (e.g. Joomla...
Functionality, security and performance monitoring of web assets (e.g. Joomla...Functionality, security and performance monitoring of web assets (e.g. Joomla...
Functionality, security and performance monitoring of web assets (e.g. Joomla...
Sanjay Willie
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill Ayers
SPC Adriatics
 
Smart Platform Infrastructure with AWS
Smart Platform Infrastructure with AWSSmart Platform Infrastructure with AWS
Smart Platform Infrastructure with AWS
James Huston
 
Intro to SharePoint 2010 development for .NET developers
Intro to SharePoint 2010 development for .NET developersIntro to SharePoint 2010 development for .NET developers
Intro to SharePoint 2010 development for .NET developers
John Ferringer
 
Patch Management on Windows with Puppet
Patch Management on Windows with PuppetPatch Management on Windows with Puppet
Patch Management on Windows with Puppet
Puppet
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
Jeremy Thake
 
Deploying software at Scale
Deploying software at ScaleDeploying software at Scale
Deploying software at Scale
Kris Buytaert
 
Ad

More from Rob Reynolds (11)

Running a Successful Open Source Project
Running a Successful Open Source ProjectRunning a Successful Open Source Project
Running a Successful Open Source Project
Rob Reynolds
 
Windows Just Got Chocolatey (Package Management) LISA15
Windows Just Got Chocolatey (Package Management) LISA15Windows Just Got Chocolatey (Package Management) LISA15
Windows Just Got Chocolatey (Package Management) LISA15
Rob Reynolds
 
Puppet On Windows - Puppet Camp DC 2015
Puppet On Windows - Puppet Camp DC 2015Puppet On Windows - Puppet Camp DC 2015
Puppet On Windows - Puppet Camp DC 2015
Rob Reynolds
 
DevOps: What is This Puppet You Speak Of?
DevOps: What is This Puppet You Speak Of?DevOps: What is This Puppet You Speak Of?
DevOps: What is This Puppet You Speak Of?
Rob Reynolds
 
Chocolatey Goodness: From Fringe to Mainstream #dotnetfringe
Chocolatey Goodness: From Fringe to Mainstream #dotnetfringeChocolatey Goodness: From Fringe to Mainstream #dotnetfringe
Chocolatey Goodness: From Fringe to Mainstream #dotnetfringe
Rob Reynolds
 
Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014
Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014
Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014
Rob Reynolds
 
DevOps: Using Vagrant to Enhance Your Day to Day Development
DevOps: Using Vagrant to Enhance Your Day to Day DevelopmentDevOps: Using Vagrant to Enhance Your Day to Day Development
DevOps: Using Vagrant to Enhance Your Day to Day Development
Rob Reynolds
 
Automated Testing but like for PowerShell (April 2012)
Automated Testing but like for PowerShell (April 2012)Automated Testing but like for PowerShell (April 2012)
Automated Testing but like for PowerShell (April 2012)
Rob Reynolds
 
DevOps: Getting Started with Puppet on Windows
DevOps: Getting Started with Puppet on WindowsDevOps: Getting Started with Puppet on Windows
DevOps: Getting Started with Puppet on Windows
Rob Reynolds
 
Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013
Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013
Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013
Rob Reynolds
 
UppercuT - Getting Started
UppercuT - Getting StartedUppercuT - Getting Started
UppercuT - Getting Started
Rob Reynolds
 
Running a Successful Open Source Project
Running a Successful Open Source ProjectRunning a Successful Open Source Project
Running a Successful Open Source Project
Rob Reynolds
 
Windows Just Got Chocolatey (Package Management) LISA15
Windows Just Got Chocolatey (Package Management) LISA15Windows Just Got Chocolatey (Package Management) LISA15
Windows Just Got Chocolatey (Package Management) LISA15
Rob Reynolds
 
Puppet On Windows - Puppet Camp DC 2015
Puppet On Windows - Puppet Camp DC 2015Puppet On Windows - Puppet Camp DC 2015
Puppet On Windows - Puppet Camp DC 2015
Rob Reynolds
 
DevOps: What is This Puppet You Speak Of?
DevOps: What is This Puppet You Speak Of?DevOps: What is This Puppet You Speak Of?
DevOps: What is This Puppet You Speak Of?
Rob Reynolds
 
Chocolatey Goodness: From Fringe to Mainstream #dotnetfringe
Chocolatey Goodness: From Fringe to Mainstream #dotnetfringeChocolatey Goodness: From Fringe to Mainstream #dotnetfringe
Chocolatey Goodness: From Fringe to Mainstream #dotnetfringe
Rob Reynolds
 
Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014
Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014
Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014
Rob Reynolds
 
DevOps: Using Vagrant to Enhance Your Day to Day Development
DevOps: Using Vagrant to Enhance Your Day to Day DevelopmentDevOps: Using Vagrant to Enhance Your Day to Day Development
DevOps: Using Vagrant to Enhance Your Day to Day Development
Rob Reynolds
 
Automated Testing but like for PowerShell (April 2012)
Automated Testing but like for PowerShell (April 2012)Automated Testing but like for PowerShell (April 2012)
Automated Testing but like for PowerShell (April 2012)
Rob Reynolds
 
DevOps: Getting Started with Puppet on Windows
DevOps: Getting Started with Puppet on WindowsDevOps: Getting Started with Puppet on Windows
DevOps: Getting Started with Puppet on Windows
Rob Reynolds
 
Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013
Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013
Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013
Rob Reynolds
 
UppercuT - Getting Started
UppercuT - Getting StartedUppercuT - Getting Started
UppercuT - Getting Started
Rob Reynolds
 
Ad

Recently uploaded (20)

Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New VersionPixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
saimabibi60507
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
EASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License CodeEASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License Code
aneelaramzan63
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New VersionPixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
Pixologic ZBrush Crack Plus Activation Key [Latest 2025] New Version
saimabibi60507
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
EASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License CodeEASEUS Partition Master Crack + License Code
EASEUS Partition Master Crack + License Code
aneelaramzan63
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 

Chocolatey - Software Automation for Windows (and sneak peak of Central Management!) - PowerShell Summit 2018

  • 1. Chocolatey The package manager for Windows Software Automation for Windows Rob Reynolds Founder Chocolatey Software @ferventcoder Gary Ewan Park Senior Software Engineer Chocolatey Software @gep13
  • 2. Rob Reynolds • Creator and Founder of Chocolatey • Enjoys long walks on the beach and designing solutions that make hard things easy • Co-wrote infrastructure framework 
 known as the Chuck Norris Framework • Over 10 years experience in 
 infrastructure automation • Obsesses over user experience • Microsoft MVP for both Cloud and Datacenter Management and Visual Studio and Development Technologies
  • 3. Gary Ewan Park • Senior Software Engineer • Chocolatey GUI product owner • Loves Cake, sometimes Chocolatey Cake • Developing with .NET for nearly 10 years • Founding member of Aberdeen Developers .NET User Group • Microsoft MVP for Visual Studio and Development Technologies
  • 4. Agenda • The Story of Windows Automation • Windows Software Ecosystem • Chocolatey • Chocolatey + DSC • Sneak Peeks!
  • 5. Let’s talk about a story… possibly your story
  • 6. The Story of Modern Automation for Windows
  • 8. You probably use or have used traditional tools
  • 9. Traditional Tools • Manual Configuration • Golden Images • Endpoint management tools • Not necessarily bad, just are harder to fit into modern automation approaches
  • 10. Modern Automation • Feature-Rich • Infrastructure as Code (IaC) • Source Control • Testable Infrastructure • Reporting • Centralized Management
  • 11. PowerShell DSC • Microsoft • Building on PowerShell • Desired State • Modern Approaches • Framework - couple it with full Configuration Management Platforms like Puppet / Chef / Ansible when appropriate
  • 12. So you modernized your Windows automation
  • 13. DevOps == Rainbows and Unicorns “Umm…”
  • 14. Rainbows and Unicorns “Just go with it…”
  • 18. Something was not quite right…
  • 20. Software Management / Package Management is necessary for great Configuration Management
  • 21. Software management may account for 50-90% of your automation
  • 22. Windows Software Ecosystem • Over 20 installer formats and thousands of installers in the wild • Zips and other archive formats • Software installers are messy • Deploy internal/3rd party software using same approach? • It’s like the Wild West
  • 23. PowerShell DSC - Package Resource • You may have used Package Resource • Finding the PackageID (MSI Product Code GUID) • Non-MSI? • Upgrades?
  • 24. “Fortunately there is a better way”
  • 25. What is Chocolatey? • Software Management • PowerShell • Fancy zip files = “packages” • Packages are independent software deployment artifacts • Takes your deployment scripts to the next level
  • 26. So you knew about Chocolatey
  • 27. But does it work well in organizational sense?
  • 30. Well, obviously - what does it represent though?
  • 33. Let’s take a step back and evaluate what’s possible
  • 34. Chocolatey - Sane Software Management • Easily manage the software lifecycle • Universal format for managing all aspects of Windows software are 1st class citizens (native installers, scripts, zips, binaries) • PowerShell module simplifies work • Packages are independent building blocks • Integrates with configuration management and RMM tools • Business friendly features
  • 35. Chocolatey - The Approach • Single, unifying interface - control the chaos • Decentralized - multiple places to get packages, including internal • PowerShell • Flexible • Secure • Reliable 7+ years - proven technology
  • 36. Chocolatey - The Approach (Sum it up!) With Chocolatey you can write a software deployment once, deploy it everywhere with everything, then manage and track that software over time (even without installers).
  • 37. FOSS vs Chocolatey for Business (C4B) • Chocolatey open source (FOSS) == package management • Works well in organizational use • C4B == complete software management • Smoother experience • Builds on top of FOSS • Better system integration, endpoint management, etc • Better visual interfaces (GUIs) • Features geared specifically towards organizational use
  • 39. Smart Installs / Smarter Upgrades • Track software installation in Programs & Features to map packages to system installs • Track environment variable changes • Leave out guesswork by reporting on software installation location • Upgrades - Use Xml Document Transform (XDT) for .NET configuration file changes • Exclusive to Chocolatey - Use new tools / commands without closing / re-opening your shell for environment changes to take effect
  • 40. Graphical Interface - ChocolateyGUI • Configure Chocolatey • Manage software installations • Great for Desktop users • Great for Self-Service Management (C4B)
  • 41. Automatic Uninstallation • Exclusive to Chocolatey - Automatically uninstall 80-90% of installations without uninstall script • Installer packages manage native installations into Programs and Features • AutoUninstaller reduces time by not developing and managing uninstall scripts for installer packages • Up to 95% effective in licensed editions thanks to enhancements and Package Synchronizer
  • 42. Integrates with Everything • https://chocolatey.org/docs/features-infrastructure- automation • Puppet • Chef (built-in), cookbook • PowerShell DSC • Ansible • Saltstack • Octopus Deploy • Boxstarter • SCCM • RMM, or really anything that can run scripts
  • 44. Inventory - Comprehensive Software Audit • Exclusive to Chocolatey - Visibility beyond just the software ‘installed’ in Programs & Features • Track versions of zip archives & own internal software that is not visible in system installation. • Get a complete view of your systems. Chocolatey reports applications in systems not directly under its management. • Package Audit (C4B) adds who, when, and history
  • 45. Package Synchronizer (C4B) - All Packages in Programs and Features • Programs and Features represents only 50-80% of the software on a machine • Chocolatey brings managed entries for non-installer packages • Supporting legacy inventory reporting systems is now a snap • Do not need to build MSIs / Installers for internal use just to support legacy reporting
  • 46. Logging - Detailed Reporting • Log file captures very detailed information - environment and state • Reduces rollback / recreation necessity
  • 47. Compliance – Audit Out of Date Software • choco outdated • Comprehensive reporting on available upgrades • See what will upgrade on next maintenance window • Pinned items won't upgrade until pin is remove
  • 49. Community Package Repository • https://chocolatey.org/packages • Community Feed / Community Maintained • Moderated as of October 2014 • Everything goes through VirusTotal • Organizations Should Avoid • Not Fully Reliable - public repo means subject to distribution rights (download CDN cache feature helps) • Trust and Control
  • 50. Hosting Your Own Package Server • https://chocolatey.org/docs/how-to-host-feed • Artifactory Pro (cross-platform) • Sonatype Nexus (cross-platform) • ProGet / MyGet (hosted) • Chocolatey.Server • NuGet.Server / NuGet Gallery proper • Visual Studio Team Services (v2 endpoints) / TFS • File Share (DFS, CIFS, SMB) / SCCM Distribution points
  • 52. Chocolatey Packages • Terminology: "Package" is nupkg file, "Software" is binaries or installers • Zip files + Versioning, Dependencies & PowerShell • Metadata - Software Information / Package Information • PowerShell - https://chocolatey.org/docs/helpers-reference • 30+ Built-in functions - complex tasks become 1 liners • Handle additional missing installer logic (like add to PATH) • Add options missing from installer arguments • Files - drop in binaries, native installers
  • 53. Creating Packages • https://chocolatey.org/docs/create- packages • choco new • Generates package files with most of the work done • Create your own packaging templates!
  • 54. Package Builder (C4B) - “Generate software deployment packages in seconds” • Package Builder automatically creates high quality packaging from an installer/zip in 5-10 seconds • Determines everything necessary for silently installing software • Supports passing urls (and checksums) - downloads files first • Allows customization • Supports exe, msi, 7z, zip, msu, and msp files
  • 55. Package Internalizer (C4B) - “Convert existing packages to 100% offline and reliable” • Take advantage of existing packages without dependency on the internet • Downloads existing package and all remote resources • Recompiles package to use those internal resources • Option to download and point to other locations • Ability to host packages on private internal repositories • Visual Interface coming
  • 56. How does it work?
  • 59. Package Synchronizer (Licensed) - Auto Sync • Chocolatey maintains state based on packages. System state can be manipulated outside of Chocolatey • Any Chocolatey command will trigger synchronization in licensed editions of Chocolatey • Package Synchronizer syncs with manual software removal • Syncs w/software that automatically upgrades, such as Chrome
  • 60. Package Synchronizer (C4B) - Choco Sync Command • Brings all software in Programs and Features under Chocolatey management • Generates packaging and baselines to Chocolatey install • Provides packaging code to take back to source control
  • 61. Package Reducer (Licensed) • Reduce Chocolatey space usage down automatically • Reduction on install/ upgrade • choco optimize to clean existing
  • 62. Other Features • https://chocolatey.org/docs/release-notes • Internal sources (like ProGet) • choco upgrade all - Windows update for your 3rd party and internal software • Shimming - like symlinks but better • Pass install arguments directly through to installer (append or override package args) • Package Parameters to adjust logic in packages • Handles locking on upgrades in package folders • Great reference docs - https:// chocolatey.org/docs/commands- reference & https://chocolatey.org/ docs/helpers-reference • Excellent open source support community • 30+ built-in PowerShell Functions • Extend functionality with your own PowerShell Modules • Custom Package Templates • Can manage anything on Windows
  • 63. Other Features (C4B) • https://chocolatey.org/docs/ release-notes-licensed • Auto-uninstaller more effective - uninstaller detection / Package Synchronizer • Install/upgrade keeping secrets out of logs • Ubiquitous Install Directory Option • More built-in PowerShell functions • Uninstall non-Chocolatey managed software • Direct Installer - install directly from exe/msi • Package Throttle • Runtime malware protection • CDN Cache • Professional Packaging Services • Amazing expert support team - https://chocolatey.org/support
  • 64. Chocolatey Roadmap • https://chocolatey.org/docs/ roadmap • Central Management UI (C4B) • Choco Deploy CLI (C4B) • WSA / Windows Nano Support • PowerShell PackageManagement Official Provider • Package Enhancements • Pack Validation • Virtual packages • GPG Signing • Package Grid (C4B) • Deferred Installer (C4B) • Possible support on other platforms
  • 65. Where does DSC come in?
  • 66. cChoco DSC Resource • Manages Chocolatey installation • Manages Choco sources and configuration • Manages packages • https://github.com/ PowerShellOrg/cChoco • https:// www.powershellgallery.com/ packages/cChoco/2.3.0.0
  • 67. cChocoInstaller • Manages Chocolatey installation • Manage install location • Works offline, specify a script to run locally
  • 68. cChocoSource • Manage available package sources • Add or remove, does not disable • Add credentials • Add priorities for sources
  • 70. cChocoPackageInstall • Ensure software package installation • Optional params, chocoParams, Version, Source, and AutoUpgrade • Allows customizing complete choco call
  • 71. cChoco - Get Involved • If you are looking for a place to contribute, this is a good place • https://github.com/ chocolatey/cchoco
  • 72. Demo
  • 75. This is you on Chocolatey
  • 78. + • Rob (@ferventcoder) • rob at chocolatey dot io • Gary (@gep13) • gary at chocolatey dot io Evaluate Chocolatey for Business in your environment - discounts available conference attendees - reach out at https://chocolatey.org/ contact for details