Getting started with Octopus Deployment Joel Hammond-Turner E: joel@hammond-turner.org.uk T: @Rammesses
Why Deploy? Repeatable, automated deployment To target server(s) Across server farms. To the cloud Azure / Amazon AWS Why Deploy? Ask: How many of you have ever deployed to live from your development machine? How many of you have ever had a deployment go wrong because of manual steps? How many of you think your automated deployment process is perfect? ;)
Why Deploy? Release control Deploy the binaries, not a new build. Traceability / versioning Test / approval cycles Configuration Why Deploy?
The Deployment Cycle BVT Dev Int Test UAT Live CI (That one extra slide)
Why Octopus? Release Control System Deploy the binaries, not a new build. Traceability / versioning Test / approval cycles Configuration Transforms ✓ ✓ ✓ ✓ Why Octopus?
What is Octopus? NuGet / Powershell based Integrates with CI (TFS / TeamCity etc) Works with Windows Azure FREE (for one project) $349 – for 3 projects $799 – for unlimited projects What is Octopus?
How does it work? Your Software Test Server NuGet Server Octopus Configuration Transforms Your Software Test Server NuGet Server Octopus Server UAT Servers Live Servers How does it work?
Packaging Websites Octopack Packages website within a NuGet package. /p:RunOctoPack = true Enables upload-on-build /p:OctoPackPublishPackageToFileShare = … /p:OctoPackPublishPackageToHttp = … /p OctoPackPublishApiKey = … Packaging Websites
Deploying a web site to a test server (IIS) Demo
Deploying to Azure Azure Deployment Step /t:Publish Creates a cspkg file Deploying to Azure
Deploying to Azure Azure Deployment Package No tooling currently… but… NuGet.PackageNPublish works!* * With tweaks. Deploying to Azure
Deploying to Azure Demo
Summary Octopus Deploy Provides repeatable, automated deployment of websites (or other apps). NuGet / Powershell Based Deploys to Azure “Does what is says on the tin” Summary
Questions ?
Getting started with Octopus Deployment Joel Hammond-Turner E: joel@hammond-turner.org.uk T: @Rammesses