22
TeamCity – Continuous Delivery Server Volodymyr Melymuka Levi9

Continuous Delivery with TeamCity

Embed Size (px)

DESCRIPTION

Continuous Delivery with TeamCity as presented on XPDays 2012 in Kiev, Ukraine

Citation preview

Page 1: Continuous Delivery with TeamCity

TeamCity – Continuous Delivery Server

Volodymyr Melymuka

Levi9

Page 2: Continuous Delivery with TeamCity

A first principle behind Agile Manifesto:Our highest priority is to satisfy the customer through early

and continuous delivery of valuable software.

Continuous Delivery

TeamCity - Continuous Delivery Server

Page 3: Continuous Delivery with TeamCity

Prepare the Release plan

Do first deployment early

Automate everything

Think over the Release Strategy

TeamCity - Continuous Delivery Server

Page 4: Continuous Delivery with TeamCity

Deployment Pipeline

TeamCity - Continuous Delivery Server

Page 5: Continuous Delivery with TeamCity

Dependent builds

Create Build Chains with dependent builds

TeamCity - Continuous Delivery Server

Page 6: Continuous Delivery with TeamCity

Multi-step builds, build chains

TeamCity - Continuous Delivery Server

Page 7: Continuous Delivery with TeamCity

Use the same scripts to deploy to every environment

Build and Deployment scripting

TeamCity - Continuous Delivery Server

Page 8: Continuous Delivery with TeamCity

Build and Deployment scripting

TeamCity - Continuous Delivery Server

Page 9: Continuous Delivery with TeamCity

Keep Sources clean with Remote run

Use delayed commits with TeamCity

TeamCity - Continuous Delivery Server

Page 10: Continuous Delivery with TeamCity

Use automatic builds triggered by each code/environment/resources change

Apply Continuous Integration

TeamCity - Continuous Delivery Server

Page 11: Continuous Delivery with TeamCity

Regression

Performance

Automate Acceptance Testing

TeamCity - Continuous Delivery Server

Page 12: Continuous Delivery with TeamCity

Deploy and Release

TeamCity - Continuous Delivery Server

Page 13: Continuous Delivery with TeamCity

Roles

TeamCity - Continuous Delivery Server

Developer

QA

Manager

Page 14: Continuous Delivery with TeamCity

Scalability, maintaining multiple projects

Distributed build Agents

TeamCity - Continuous Delivery Server

Parallel build configurations

Page 15: Continuous Delivery with TeamCity

Scalability, maintaining multiple projects

TeamCity - Continuous Delivery Server

Advanced scheduling

Page 16: Continuous Delivery with TeamCity

Sonar, Code quality,Code coverage

TeamCity - Continuous Delivery Server

Integration

Page 17: Continuous Delivery with TeamCity

Custom build reports (Thucydides, etc.)

TeamCity - Continuous Delivery Server

Custom Reports

Page 18: Continuous Delivery with TeamCity

Success rate, build duration,

total test count, time to fix…

TeamCity - Continuous Delivery Server

Build metrics

Page 19: Continuous Delivery with TeamCity

Free Professional vs. paid Enterprise version, pricing, legal workaround =)

Professional editiondoes not require any server license key and has a limitation of maximum 20 build configurations configured.

Enterprise editionedition with unlimited number of build configurations ($1999).Each TeamCity edition comes bundled with 3 agents. More Build Agents can be added with separate licenses ($299 per each).

“Legal” workaroundThere’s no limit on number of TeamCity servers in one local network

TeamCity - Continuous Delivery Server

Page 20: Continuous Delivery with TeamCity

Quick Summary

TeamCity is a user-friendly continuous delivery (CD) server- for developers, quality and build engineers - easy to set up and free of charge for small and medium teams.

TeamCity - Continuous Delivery Server

Page 21: Continuous Delivery with TeamCity

Where to go next

TeamCity documentationhttp://confluence.jetbrains.net/display/TCD7/TeamCity+Documentation

Paul M. Duvall “Continuous Integration” http://www.amazon.com/Continuous-Integration-Improving-Software-Reducing/dp/0321336380

Martin Fowler “Continuous Integration“ http://www.martinfowler.com/articles/continuousIntegration.html

Jez Humble, David Farley “Continuous Delivery”http://www.amazon.com/Continuous-Delivery-Deployment-Automation-Addison-Wesley/dp/0321601912

CI Feature Matrix http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix

TeamCity - Continuous Delivery Server

Page 22: Continuous Delivery with TeamCity

Questions

TeamCity - Continuous Delivery Server