22
www.jetbrains.com TeamCity Delivering Quality Software, on Time Vaclav Pech Software Developer and Product Evangelist JetBrains, Inc.

Team City

Embed Size (px)

DESCRIPTION

The slides for my TeamCity presentation in Malmo, Sweden, 10th Feb 2009

Citation preview

Page 1: Team City

www.jetbrains.com

TeamCityDelivering Quality Software, on Time

Vaclav PechSoftware Developer and Product Evangelist

JetBrains, Inc.

Page 2: Team City

2www.jetbrains.com

Part 1: Continuous integration

ReportTrigger (by change)

Compile Test / Analyse

Page 3: Team City

3www.jetbrains.com

TeamCity is a …• Continuous integration tool

– Quality control– Team cooperation– IDE-independent– Java + .Net

Page 4: Team City

4www.jetbrains.com

Integration• CVS, SVN, ClearCase, …

• Ant, Maven 2, IntelliJ IDEA, Nant, …

• Email, RSS, Jabber, IDE, Windows Tray

• Eclipse, IntelliJ IDEA, Visual Studio

• JUnit, TestNG, EMMA, Cobertura

Page 5: Team City

5www.jetbrains.com

Architecture

Page 6: Team City

6www.jetbrains.com

Part 2:

• TeamCity solving problems

Page 7: Team City

7www.jetbrains.com

Problem:• Administration headaches

– Multiple projects and build configurations

– Cumbersome administration of multiple build machines

Page 8: Team City

8www.jetbrains.com

Solution: Distributed builds

Page 9: Team City

9www.jetbrains.com

Solution: Distributed builds• Multi-platform testing

• Easy administration

• Optimized task distribution

Page 10: Team City

10www.jetbrains.com

Problem:• Notification spam

– People stop reading notifications– People stop reading notifications– People stop reading notifications– People stop reading notifications– People stop reading notifications– People stop reading notifications– People stop reading notifications

Page 11: Team City

11www.jetbrains.com

Solution: Clean and fast notifications

• Relevant

• Convenient

• Early

Page 12: Team City

12www.jetbrains.com

Problem:• Nobody fixes the build

Page 13: Team City

13www.jetbrains.com

Solution: Take responsibility

• Indicate explicitly that you’re fixing it

Page 14: Team City

14www.jetbrains.com

Problem:• Locating failures

Page 15: Team City

15www.jetbrains.com

Solution: IDE integration

• Show results just as if ran locally

• Direct links to the source code

Page 16: Team City

16www.jetbrains.com

Problem:• Developers don’t check code quality

often enough

– Interrupts work flow

– Takes time, decreases productivity

Page 17: Team City

17www.jetbrains.com

Solution: Server checks for quality• Inspections

– 700+ rules for Java, JavaScript, HTML, XML, …

• Code coverage

• Code duplicates

Page 18: Team City

18www.jetbrains.com

Problem:

• Broken builds after commit

– 5 o’clock checkin case

Page 19: Team City

19www.jetbrains.com

Solution: Pre-tested commit

• The server integrates your local changes before committing to VCS

Page 20: Team City

20www.jetbrains.com

Page 21: Team City

21www.jetbrains.com

Summary

• CI is a must but has obstacles

• TeamCity makes CI smooth

• Free Professional Edition

– Contact me: [email protected]

Page 22: Team City

22www.jetbrains.com

Questions