Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration...

24
Continuous Integration Demonstration

Transcript of Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration...

Page 1: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Continuous Integration Demonstration

Page 2: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Agenda

1.Continuous Integration Basics2.Live Demonstration 3.Bamboo Concepts4.Advantages5.Version 2.0 Features6.Question Time

Page 3: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Bamboo OverviewBamboo is a continuous integration server. It builds your project and runs your test suite automatically whenever a developer commits an update.

Our server offers build telemetry to provideinsight into trends across builds.

Page 4: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Continuous Integration

Basics

Page 5: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

•Changes are delivered in small, rapid increments, instead of a single delivery

•Every time a change is made, the system is built, and all tests are run

•Keep the system working by keeping the build GREEN

•Fix BROKEN builds ASAP

Continuous Integration:Iterative Development + Automated

Testing

Page 6: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Key CI Benefits•Increases traceability of defects

•Increases visibility of progress

•Early feedback from end users

•Allows for staged, or partial, delivery

•Reduces risk of major rework, and project slippage or failure

Page 7: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Live Demonstration

Page 8: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Bamboo Concepts

Page 9: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

SourceControl

Build Tool

Developers

•CVS•Subversion•Perforce+Pluggable

•Ant•Maven 1•Maven 2•Script+Pluggable

•Any platform•Any language•Any tools

A Typical Bamboo Deployment

Page 10: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Bamboo Key Concepts

Concept Definition Example

Project The software or piece of work Confluence

Build Plan Defines one way in which the software can be built.

HEAD, JDK1.4

Build (Build result)

The result after one execution after one build of the software

Confluence, HEAD branch, on JDK1.4, Build #263

Page 11: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Further ConceptsConcept Definition Example

Repository The location in which source code for the project is held. (Defined by plan)Supports: Subversion, CVS, Perforce

https://svn.atlassian.com/svn/private/atlassian/bamboo

Builder The software tool external to Bamboo which is responsible to run the build. (Defined by plan)Supports: Maven, Maven2, Ant, Scripts

Maven 2

Page 12: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Further ConceptsConcept Definition Example

Author The person who makes the change to the code

edwin.wong

Notification Communication sent by Bamboo to stakeholders about a build (result)Supports: IM (Jabber, GTalk), Email

IM – Build Successful

Page 13: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Advantages

Page 14: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Build Telemetry•“See the forest for the trees”

•Not just about statistics - it’s about intelligently highlighting linkages in build information to identify insights about your project.

•Competitors (e.g. Pulse, Teamcity, Hudson) are really have caught onto this.

Page 15: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Collaboration•Comment on your builds - why did this

break? what happened here?

•Label your builds - tagging is a good way to quickly identify certain builds (and allows searching)

Page 16: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Integration•JIRA integration

•IDE integration

•Fisheye integration

•But should be, and hopefully will be, doing a lot more about this...

Page 17: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Other New Features

•Extensibility - a flexible plugin architecture allows you to do more

•Easy to setup - be up and running in 5 minutes

Page 18: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Version 2.0 Features

Page 19: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Distributed Builds

•Extends a single instance of Bamboo across multiple machines.

•Increases Bamboo’s capacity for concurrent builds.

•Allows for builds on multiple platforms.

Page 20: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Distributed Builds

SourceControl

Build Tool

Developers

Agents

Page 21: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Capabilities & Requirements

•A mechanism for matching builds to agents.

•Agents have capabilities

•JDKs, build tools, user-specified values

•Builds have requirements, specifying the capabilities they need

Page 22: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Other Improvements

•Expanded database support

•MySQL, Postgres, Oracle, MS SQL Server

•Expanded APIs

•Improved memory use & performance

Page 23: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

Question Time

30-day free trial from www.atlassian.com/bamboo

Email [email protected]

Phone +1 415 701 1110 (San Francisco, US)

Page 24: Continuous Integration Demonstration. Agenda 1.Continuous Integration Basics 2.Live Demonstration 3.Bamboo Concepts 4.Advantages 5.Version 2.0 Features.

More Information

30-day free trial from www.atlassian.com/bamboo

Email [email protected]

Phone +1 415 701 1110 (San Francisco, US)

Thank you for attending