Presentation TeamCity
When Martin Fowler first wrote about Continuous Integration, he described it as a practice that changes integration from a "long and unpredictable process" to a "non-event" - something that every team could use to make their code more reliable and clean, with minimal effort. Using code-level demonstrations, we will go through the CI practice using TeamCity, a distributed build management and continuous integration system which was designed specifically to improve team communication, integrate into the development process, run builds, detect problems, and report issues in a non-intrusive way, so that your code base stays clean and your projects are completed faster.
Published on: 2009-11-25T15:01:07.000Z
Channel: Devoxx'09 (all)
Tags: CI devoxx TIA 2009 tools
Speakers:
Roman Strobl
JetBrains Evangelist
Slides:
TeamCity
TeamCity
Roman
Štrobl Technology
Evangelist/JetBrains
Goals
Goals
Con;nuous
Integra;on,
Build
Management,
and
Avoiding
Broken
Builds
Part
1:
Con;nuous
integra;on
Part
1:
Con;nuous
integra;on
Compile Test
/
Analyze
Trigger
Report
TeamCity
is
a
…
TeamCity
is
a
…
Con;nuous
integra;on
tool Quality
control Team
coopera;on IDE-‐independent Java
+
.Net
+
Ruby
TeamCity
is…
TeamCity
is…
Also
FREE
with
some
limita;ons:
max.
20
build
configura;ons
max.
3
build
agents
No
LDAP
support Good
for
many
regular
projects Enterprise
version
for
bigger
deployments
Integration
Integra;on
CVS,
SVN,
Perforce,
Git,
ClearCase,
... Ant,
Maven
2,
IntelliJ
IDEA,
Nant,
… Email,
RSS,
Jabber,
IDE,
Windows
Tray Eclipse,
IntelliJ
IDEA,
Visual
Studio JUnit,
TestNG,
EMMA,
Cobertura,
…
Architecture
Architecture
DEMO
DEMO
User
Interface
Part
2:
Part
2:
How
TeamCity
solves
common
problems
Problem
Problem:
Administra;on
headaches
Goals
Goals
Con;nuous
Integra;on,
Build
Management,
and
Avoiding
Broken
Builds
Solution
Distributed
builds
Solu;on:
Distributed
builds
DEMO
DEMO
Build
Grid
Solution
Distributed
builds
Solu;on:
Distributed
builds
Mul;-‐pla^orm
tes;ng Easy
administra;on Op;mized
task
distribu;on
Problem:
Problem:
No;fica;on
spam
People
stop
reading
no;fica;ons People
stop
reading
no;fica;ons
People
stop
reading
no;fica;ons People
stop
reading
no;fica;ons People
stop
reading
no;fica;ons People
stop
reading
no;fica;ons People
stop
reading
no;fica;ons People
stop
reading
no;fica;ons
Problem:
Problem:
Administra;on
headaches
Solution
Clean
and
fast
no-fica-on
Solu-on:
Clean
and
fast
no-fica-on
Relevant Convenient Early
DEMO
DEMO
Build
Grid
Problem:
Problem:
Nobody
fixes
the
build!
DEMO
DEMO
Assigning
Responsibility
Problem:
Problem:
Broken
builds
ader
commit 5
o’clock
checkin
case
Solution
Distributed
builds
Solu;on:
Distributed
builds
Solution
Pre-‐tested
commit
Solu;on:
Pre-‐tested
commit
DEMO
DEMO
Pre-‐tested
Commit
Problem:
Problem:
Developers
don’t
check
code
quality
oden
enough
Solution
Take
responsibility
Solu;on:
Take
responsibility
Indicate
explicitly
that
you’re
fixing
it
Solution
Distributed
builds
Solu;on:
Distributed
builds
Mul;-‐pla^orm
tes;ng Easy
administra;on Op;mized
task
distribu;on
Solution
IDE
integra;on
Solu;on:
IDE
integra;on
Show
the
results
as
if
run
locally Direct
links
to
the
source
code
Problem:
Problem:
Developers
don’t
check
code
quality
oden
enough
Solution
Server
checks
for
quality
Solu;on:
Server
checks
for
quality
Inspec;ons Test
code
coverage Duplicates
in
code
DEMO
DEMO
Build
Grid
Summary
Summary
Fast
feedback IDE
integra;on Pre-‐tested
commit
Questions?
Ques-ons?
Thanks
for
your
afen;on!
Thanks
for
your
afen;on!
hfp://www.jetbrains.com/teamcity