Top 10 Continuous Integration Tools | List of Best CI Tools | scmGalaxy

continuous-integration-tools
Today we are present here with another interesting article which will help you to know about the best tools which are used for continuous integration in DevOps practices.
Continuous Integration has become a mainstream technique for software development. Which makes it mandatory to implement it in your software development lifecycle (SDLC). But implementation of CI required best selection of tools to achieve good results and there is still a confusion amongst beginners and even in vetrans of software industry while choosing the best tools. So keep reading, I have done some research and compile a list of CI tools which will definitely going to help you.
Before going further, let’s first see what is Continuous Integration?
Continuous Integration is a practice in DevOps software development process which improves the quality of the code. In this practice all the developers who are related and working on the project integrate there codes into a central repository frequently for several times in a day. After which automated build and automated tests run, which verify each integrations in the repository. The main objective of the continuous integration is to provide rapid feedback when any defect is found in the code base and correct it as soon as possible.
Now we know about continuous Integration but one question arises here, Why we do Continuous Integration?
So, Now let’s see the benefits of CI
  • Earlier finding & addressing of Bugs – By implementing continuous integration you can do frequent testings which helps to find bugs and error quickly before they ruin your whole efforts later.
  • Improve software quality – Early finding issues in the codes, developers can act on them early before they grow into larger problems later,  which ultimately improves the quality of the software.
  • Reduce the time it takes to validate – CI immensely reduce the waiting time to find out if your code’s going to work or not.
  • Release new software updates – Doing frequently and numbers of time automated build and test of codes helps teams to deliver the new updates to the user more often and faster.
So, these are the major benefits of CI. Now back to the point and purpose of this article, as I said earlier continuous intergation needs various tools to implement the process and choosing amongst the available tools for your purpose can be a daunting task, especially when you are going to select for the first time.
So, without further wasting any time let’s check out the top 10 Continuous integration tools.

1. Jenkins

jenkins
Jenkins is a Java written Continuous Integration tool, which was initiated as the fork of Hudson after conflict with oracle. It is a cross platform tool which allow GUI interface and console commands configuration. It available under MIT license which make it free to use. It supports rich plugins that integrates with virtually every existing software configuration management [SCM] or builds tool.

Features:- 

  • Open Source
  • Easy installation
  • Easy configuration
  • Rich plugin ecosystem
  • Extensibility
  • Distributed builds
  • Platform: Cross-platform

2. TeamCity

teamcity

 

TeamCity is one of the mature and wise java based continuous integration server which is belongs to JetBrains labs. It is available in free and paid license for users. It’s free version offers almost all the features but for up to 20 build configurations and 3 free Build Agents. Teamcity also supports different tools and frameworks and also it’s available with wide variety of plugins. It’s also support .Net features which makes it suitable for .Net projects.

Features :- 

  • Free and Paid
  • Gated Commits (prevents developers from breaking sources in a version control system by running the build remotely for local changes prior to commit)
  • Build Grid. Allows running multiple builds and tests under different platforms and environments simultaneously
  • Integrated code coverage, inspections and duplicates search
  • Integration with IDEs: Eclipse, IntelliJ IDEA, Visual Studio
  • Platforms supported: Java, .NET and Ruby
  • Supports cloud integration

3. Travis CI

travis ci

 

Travis CI is an open source continuous integration tool which is written in RUBY. It’s easily get sync with GitHub. It’s supports platforms like Linux, Mac or iOS and also supports many languages in which Node js, php, Xcode, python, java, are few of them. It also performs parallel test runs using their great APIs and command line tools.
  • Open source
  • Supports pull request and branch build flow
  • Parallel test runs
  • Easily synchronize with GitHub
  • Flexible plans for every size project
  • Platforms: Hosted
  • Supports Many Languages like Node js, php, Xcode, python and many more.

4. Microsoft Team Foundation Server

tfs
Team foundation server which is also abbreviated to TFS is a product of microsoft. It is a collaborative tool that consists the code repositories, continuous integration, and bug or task tracking. TFS perform in environment like Eclipse, Xcode, Visual Studio or in Git client. It’s also support languages like Python, C#, HTML, Java and various others too. It is available for free downloading but under trialware license.

  • Trial-ware
  • Supports many languages like Python, C#, HTML, Java and various others
  • Work in any environment like Visual Studio, Xcode, Eclipse, or any Git client
  • Extensible tool can work effectively for all shapes and sizes

5. Bamboo

bamboo

Bamboo is also one of the top continuous integration tool which is developed by Atlassian. This is available with free trial license. Bamboo is written in Java and it is easily works with JIRA & Bitbucket. It’s also allow you to import jenkins data to Bamboo easily. Bamboo also supports others tools like AWS, Amazon S3, Ant, Docker, codeDeploy, Maven, Git & SVN.

Features:- 

  • Paid and Free trial
  • Cross platform
  • Allow to Import data from Jenkins
  • Works with JIRA and Bitbucket
  • Works with others tools like CodeDeply, Ducker, Maven, Git, SVN, Mercurial, Ant, AWS, Amazon S3 buckets
  • Support many languages
  • Can run multiple builds parerally
  • customization of triggers and variables
  • Very fast and easy to use

6. UBuild-UDeploy-URelease

ubuild-udeploy-urelease
UBuild-UDeploy-URelease is also known as Urbancode deploy is a collaborative product of IBM. It provides continuous delivery, self-service, speedy feedback and progressive updates within the agile development and automates the applying deployments during a consistent manner. With urbancode You can systemise the changes you pushed on servers, tiers and components and also restore the applications.

Features:- 

  • Licensing plans
  • Hosted service
  • Server virtualization
  • Integrated with middle-ware
  • Clear visibility: what is deployed where and who changed what
  • Configuration and security differences across environments
  • Orchestration of changes across servers, tiers and components
  • Automated provisioning, updating, and de-provisioning of cloud environments
  • Automated, consistent deployments and rollbacks of applications

7. Go CD

go cd


Go CD
 is a free of charge (excluding commercial support) tool written in Java and Ruby which belongs to ThoughtWorks. This tool works on Linux, Windows and Mac Platforms. It’s also supports many languages but which makes it stand out among-st the tools is the Pipeline concept which makes build process easy and it eliminate the file-handle leak errors and fix the OOM on agents when parsing large xml test artifacts.

Features:- 

  • Availability: Free with paid support
  • Platform: Windows, Linux, Mac
  • Pipeline Concept
  • Parallel execution of the tasks
  • Support Many languages
  • Easily compare builds
  • Clearly visualize workflow
  • Promote trusted artifacts
  • Plugins availability
8. GitLab CI

gitlab ci

GitLab CI is an open source and also comes with commercial licesnse continuous integration tool. It belongs to Gitlab inc. which is written in Ruby and Go. This tool support platforms like Windows, OSX , Linux, Unix and various others which supports Go. Gitlab work with languages like Java, PHP, Ruby, C and with various others too.

Features:- 

  • Platform: Hosted
  • Availability: Free and paid with trial
  • Easy to learn
  • GitLab CI is fully integrated with GitLab
  • Docker support
  • Pipeline Concept
  • Supports multi-languages – Java, PHP, Ruby, C etc..
  • Parallel builds
  • Autoscaling
  • Build artifacts

9. CircleCI

circleci
CircleCI is also belongs to Gitlab Inc, free and paid with trail option which runs in any environment like cross platform mobile app too. Circle ci supports languages such as Python, Ruby/Rails, Node.js, PHP, Haskell, Skala and Java. This tool is scalable which minimize the errors and improves application quality. Circle CI also supports Docker.

Features:- 

  • Availability: Free and paid with trial
  • Platform: Cross platform
  • Supported languages includes Java, Ruby/Rails, Python, Node.js, PHP, Haskell, and Skala
  • Supports Docker
  • Flexible pricing model

10. Codeship

codeship

Codeship is also an powerful hosted CI tool which is available with free and paid support options. This tool is very easy to set up and it automatically deploy the passed tests results. This tool works on GitHub and Bitbucket, but you can use it with docker platform too by opting packages. This tool support langusges such as Java, PHP, Ruby (Rails), Node.js, Python, and Go.

Features:- 

  • Availability: Free and paid
  • Platform: Hosted
  • ParallelCI feature
  • Supported languages Go Ruby on Rails, Node.js, PHP, Java, Go, Dart etc..
  • Flexible Pricing
  • Docker Supported (by upgrading)
  • Easy to setup, fast and reliable
So, this is my list of top continuous integrations tools. Hope my efforts will help you in your Continuous integration process. One more thing, I would like to add here is that, if you want to learn the continuous integration process or you need support to get started with these tools in your work environment than scmGalaxy offers support from industry experts. And, If you think that any others tools deserves place in this list than feel free to share with us in the comment section.
Tagged : / / / / / / / / / / / / / / / / / / / / / / /

The basic steps to adopt the continuous inspection pattern

continuous-inspection-pattern

The following outlines the basic steps to adopt the continuous inspection pattern:

1. Tool selection. Evaluate and select one or more tools that can perform static analysis on your code base. Evaluation criteria include: a. the programming and scripting language(s) used in your software projects versus the ones supported by the tool; b. whether the tool provides an API for developing customized verifications; c. integration with your IDE; d. integration with your continuous integration server; and a e. set of built-in verifications, which should include items that are deemed more relevant for your software project.

2. Verification selection. Most tools come with a variety of built-in verifications and metrics. You need to evaluate what built-in verifications in the selected tool(s) are applicable to your software project. Criteria may include: a. Modifiability requirements. If you are experiencing problems with maintenance and evolution of existing projects, you should enable verifications that pinpoint duplicated code, cyclic dependencies, overly complex and/or large classes and methods, and others that will help you to improve modularity and modifiability of the code. b. Security requirements. There are verifications that can spot security-related issues, such as SQL injection vulnerability, hard-coded credentials, and overridden security methods. Continuous Inspection – 7 c. Team skills. d. Quality of existing code base. It is likely that a more strict selection of verifications can be enabled for newer projects. For older code, a strict set of verifications may generate so many violations that they might tend to be ignored. In any case, it is desirable that the same selection of verifications is applied to all projects that are under the same governance system and quality scrutiny. e. Development is/is not outsourced. The development contractor and the contracting organizations may want to negotiate what types of violations will not be accepted in delivered code. f. Development team is/is not collocated. g. Greenfield development. An existing code base will often exhibit several violations and the cost to fix them may be too high. Greenfield development opens space to enable all verifications considered important and enforce them from the get-go—a zero-warning policy is more easily adopted in such scenarios. h. Feasibility to fix violations. Verifications that generate violations in the existing code that realistically will not be fixed in the foreseeable future due to lack of resources or other reasons should not be enabled.

3. Tool setup. The selected tools with the selected verifications enabled need to be configured on a continuous integration server. Ideally the tools should run as often as possible, say every 30 minutes. But in practice, if the code base is sizeable the static analysis can easily take tens of minutes. In that case, you may want to run the checks once every night.

4. Accountability for violations. It is important that developers are accountable for violations and that fixing them become part of the development process. As mentioned before, a zero-warning policy should be in place, at least for the most critical categories of violations. Checkpoints for fixing violations should be defined. For example, at the end of each sprint or at each code release, all violations should be fixed.

5. Customized verifications. The continuous inspection can go one step further and create customized verifications using the API available in the selected tools [Mer13]. This is a non-trivial step since it typically requires expressing an architecture decision or programming rule in syntactic terms of the target programming language. Albeit challenging to create, customized verifications represent an enormous enhancement to the different aspects of code health inspection. Built-in verifications are by-design generic. On the other hand, customized verifications can be specific to a software project or organization and hence more powerful. They can deal with module, layer, and method names that are specific to a project; they can accommodate known exceptions to a given rule; they are aware of home-made libraries and wrappers.

6. Enforcement at commit time. As an ultimate barrier to avoid code violations to enter the codebase, you can configure the automated verifications to be executed upon each source code commit operation [Mer13]. Of course, you need a versioning system that provides a mechanism to run user-defined scripts that can have access to the files in a code commit operation. This kind of solution will deny the code commit operation and give the user a clear error message pointing out the specific reason. Thus, even if a developer ignores the violations displayed on the IDE and on the continuous integration dashboard and reports, these Continuous Inspection – 8 violations won’t make it into the codebase because of the enforcement at commit time. Clearly, only violations that are critical and/or applicable to all source files in the code repository should be enabled to run on this solution.

Tagged : / / / / / / / / / / / / / /

Continuous Integration Training | Continuous Integration Course | Trainer | Online | Classroom

continuous-integration-training

Click Here

scmGalaxy is a community initiatives based on Software configuration management that helps community members to optimize their software development process, Software Development Life Cycle optimization, Agile Methodologies and improve productivity across all aspects of Java development, including Build Scripts, Testing, Issue Tracking, Continuous Integration, Code Quality and more. scmGalaxy group that helps organisations optimize their software development process. We provide consulting, training and mentoring services in Agile Development Practices such as Version Management, Continuous Integration, Build Management, Test-Driven Development, Acceptance-Test Driven Development, Build Automation, Code Quality Practices and Automated Testing.

We provide job oriented training in the area of Configuration management, Build and Release Engineering. Candidates with engineering or software background and looking to either start or change their career to Build and Release Engineering, would benefit most from this training. Instructor-led training course offered in India, Bangalore, Delhi, Pune, Mumbai and Hydrabad. Instructor is an expert in Software configuration management, Build and release engineering with more than 15 years industry experience in india.The Goal of the course make the training attendants equip with all the concepts of build and release engineering.

Contact us

  • Mail – info@scmGalaxy.com
  • Call – +91 700 483 5930
  • WhatsApp – +91 700 483 5930
  • Skype – scmGalaxy

Course Objectives
To bring your team up to speed with agile development, We can also run the from Continuous Integration to Continuous Delivery with autoamted course within your premises.

Course Schedule
This course is an intensive 1-day & 2-day workshop with a mixture of teaching and lab exercises. Currently, this course is offered exclusively as an on-site course. Please contact us for more details.

Audience
This is a hands-on, practical course designed to teach specialised skills for real-world development situations. It is thus primarily aimed at a SCM Engineer, Build/Release Engineer and developer audience.

Approach
The course is modular and flexible – depending on specific student needs and requests. Through our trainings, you benefit from the wide experience and architectural expertise of our team. We bring that experience to you in an highly interactive, intensely hands-on setting.

The Working With Continuous Integration training course provides the learning and hands-on experience required to jump start a software development team’s adoption of continuous integration. Using a project-centric blended learning model, the students will examine common testing strategies, learn the fundamental concepts of continuous integration, set up a continuous integration environment, and incorporate continuous integration into their project’s SCM environment.

The Working With Continuous Integration can be delivered using Bamboo, Jenkins, AnthillPro, TeamCity and BuildForge.

If you need help setting up a CI environment, consider extending this course with two days of expert-led consulting.

In the Working With Continuous Integration training course, you’ll learn:

  • Introduction to Continuous Integration
  • What Is CI?
  • Why CI?
  • CI Philosophy
  • Advantages of CI Within Software Development
  • How to Implement CI
  • Setting Up a CI Environment
  • CI Tools
  • Automated Builds
  • Automated Tests
  • Committing Code
  • Creating a Full-featured CI Environment
  • Components of a Full-featured Environment
  • Requirements of a CI Environment
  • Organizational Impact and Buy-in
  • Developer Philosophy
  • DB Integration
  • Automated DB Integration
  • Continuous DB Integration
  • Continuous Testing
  • Automated Unit, Integration, System and Functional Tests
  • Writing Tests for Defects
  • Integration of Automated Testing With CI
  • Continuous Quality
  • Code Inspection vs. Code Testing
  • Automated Code Analysis
  • Code Analysis Tools
  • Continuous Deployment
  • Philosophy
  • Release and Labeling Strategies
  • Continuous Improvement
  • The Feedback Loop
  • The Metrics Loop
  • The Improvement Cycle
  • Best Practices
  • Best of Breed Tools
  • Best Practices for Quality Software
  • Best Practices for CI
  • Rolling Out CI Within Your Organization
  • Defining and Measuring Metrics and Reporting
  • Defining Proper Metrics
  • Measuring and Reporting
  • Implementing a Change Strategy to Achieve Desired Metrics
Tagged : / / / / / / / / / / / / / / / / / / / / / / / / / /

Running MSBuild 4.0 and MSBuild 3.5 on Continuous Integration

msbuild-40-and-msbuild-35

With Visual Studio 2010 RC released recently, we jumped on the release and began to code with VS2010.  One issue that popped up was that now all builds were targeting MSBuild 4.0.

That doesn’t seem to be a big problem until our CruiseControl CI server kicked in, downloaded our updated code and failed building the upgraded projects.

Fortunately there is a very quick solution to this little problem.  There are a couple of requirements.

1. You need to have VS2010 RC installed somewhere
2. You need to download the .Net Framework 4.0 (I recommend the full version and not just the Client Profile, it ensures you don’t miss anything)

To fix, do the following:

1. download and install the .Net Framework 4.0 on the CI server (then restart the server)
2. on the computer where VS2010 RC is installed go to the following path:
%programfiles%\MSBuild\Microsoft\VisualStudio
3. copy the v10.0 folder located in that directory into the CI server at the same path (or wherever our MSbuild path is on the CI server)
4. Once that is done, edit the ccnet.config file at the tag and change it to the new .Net 4.0 Framework installed (you should only need to change the section “\v3.5\” to “\v4.0.xxxxx\”

Hope this helps

Tagged : / / / / / / / / / / / / / / /

Bamboo – A Continuous Integration Server – Complete Guide

bamboo-a-continuous-integration-server

Bamboo – A Continues Integration Server

Continuous integration (CI) brings faster feedback to your development process, preventing bugs from piling up and reducing the risk of project delays.

Bamboo enables development teams of any size to adopt CI in minutes, easily integrate it with their work day and scale their build farm using elastic resources in the Amazon EC2 cloud.

Continuous integration (CI) brings faster feedback to your development process, preventing bugs from piling up and reducing the risk of project delays.

Bamboo enables development teams of any size to adopt CI in minutes, easily integrate it with their work day and scale their build farm using elastic resources in the Amazon EC2 cloud.

Bamboo makes every stage of continuous integration adoption easy, intuitive and pain-free.

Set up your first CI build in minutes
Integrate/ Collaboration CI with your current tools and workflow
Scale your build farm on-premises or in the cloud!
Analyse and improve your build performance
Extend Bamboo with plugins and the REST API
Full feature list and system requirements

Integrate/ Collaboration

Bamboo lets you pick how and when you’re notified about builds and integrates easily with tools you’re already using, so your team will be able to work together to keep your builds green!

Notifications via email, RSS, IM or IDE pop-up:
With Bamboo each team member can choose how and when to be notified:

Email, RSS, IM or IDE pop-up notifications
Customised email templates (HTML or plain-text)

Choose which builds to be notified about:

All builds for a project
Specific build plans
Every time a build finishes, only when it fails X times, only when it hangs, or only when it times out

Priorities your build queue
When your build agents are busy, Bamboo builds go into a queue.

Need to see the results of a build ASAP? You can:

Escalate builds to the front of the queue with one click.
Stop in-progress builds.
Move lower-priority builds to the back of the line.

Apply labels and comments to build results
Why did a build fail? What did you fix to turn it green again? Which builds have been tested by your QA team? What builds are approved for release to customers? Bamboo let’s you provide content to your builds results using labels and comments.

  • Apply labels and comments via your Web browser, IDE, or Bamboo’s unique 2-way IM system
  • Subscribe to an RSS feed of all build results with certain labels (e.g. “QA_FAILED”, “PATCH”,etc.)

Run and fix builds from Eclipse and IntelliJ
Bamboo integrates with Eclipse and IntelliJ IDEA to bring build management and notification into the IDE:

  • Run, label and comment builds
  • Receive pop-up notifications for builds you care about
  • Quickly identify failing tests and re-run them locally with just one click

Link builds to JIRA issues
Bamboo integrates with JIRA and allows you to easily:

  • View all builds related to an issue
  • View all issues related to a build, and mark them resolved
  • Embed build status and summary gadgets into your JIRA project dashboards

View changes that triggered builds with FishEye
By integrating Bamboo with FishEye, you can quickly see what files were changed to trigger a build and what JIRA issue the changes were made for. Want to see exactly what changed? FishEye diffs are just a click away!

Run Clover Test Optimization and code coverage
Integrate Clover for Java Test Optimization and code coverage, and you’ll instantly get faster builds and better code quality insights!

  • Clover Test Optimization can make your Java unit and functional tests run several times faster
  • View method, branch and statement coverage
  • See when and where coverage drops over time

Display results in Confluence dashboard portlets
Bamboo provides portlets that can easily be embedded on any Confluence page, so you can keep every project stakeholder up to date on project status.

  • See pass/fail status, duration, and number of failed tests for recent runs of a build plan.
  • View the latest status for all builds in a project.

Embed JavaScript widgets in any HTML page
Bamboo provides JavaScript widgets that can be embedded into any HTML page. With just a few lines of code, create custom pages that include:

  • Latest build results
  • Latest changes
  • Last result of all builds in a project
  • Plan summary graphs

Scale Your Build System

As your team runs more and more CI builds, you’ll want to add more computing power to maintain fast feedback on your build and test results.

Bamboo makes scaling your build system a snap with:

  • Remote agents that run on-premises
  • Elastic agents in the Amazon EC2 cloud.

Remote agents

Your Bamboo server can manage dozens of remote agents simultaneously, taking advantage of available computing power to provide the fastest feedback possible. With remote agents you can:

  • Run multiple builds at once to reduce feedback times
  • Test on different platform configurations

Elastic agents

Elastic agents are remote agents that run in the Amazon Elastic Compute Cloud (EC2). By using the cloud, you can instantly scale your build environment as your development cycles ebb and flow and build queues become longer. Bamboo makes it easy to customize and manage your elastic agents:

  • Schedule agents to start and stop based on known peaks and valleys in your need for CI builds.
  • Cut operational costs by taking advantage of EC2’s reserved instance pricing and availability zones.
  • Customise agent images with different operating systems, installed software, and computing power to create the most flexible building and testing system possible.
  • Reduce data transfer and startup times by using Amazon Elastic Block Storage (EBS) for persistence.

Every build agent (remote or local) has specific capabilities that are used to match the requirements of queued builds.

Bamboo’s web interface makes it easy to manage all your agents and view a log of recent activity for each agent.

Analyse and Improve Your Builds

Your team is running builds on every commit, comprehensive performance and functional tests are running every night, and your build farm has been scaled out. Wondering where and how you can make improvements? Bamboo makes it easy to see the performance of your builds and identify trouble spots and possible improvements.

  • Find out why a build failed
  • View build plan performance across time
  • See what’s breaking most so you can investigate
  • Compare several plans
  • Compare team performance and drill into author details

What happened?
When your builds turn red, you want to fix them as fast as possible! Bamboo provides information to your team that makes root-cause analysis easier, so you can turn the build green again ASAP.

  • Full stack traces for compilation failures
  • Full stack traces for test failures
  • Highlighting of newly failed tests
  • Click-through to the failing code from within the IDE

Build plan summaries at a glance
Bamboo’s plan summary view presents a wealth of information about each build plan including:

  • Results of the latest build
  • Historical pass percentage and average build time
  • Result, duration, and number of failed tests for recent builds
  • Duration and failure trends across time

Find your trouble spots
Bamboo identifies problem areas within each build based on its performance history including:

  • Most common failures
  • Tests that take longest to fix
  • Long-running tests

Compare your build plans
Which builds are turning red the most often? Which builds are taking longest to run? Bamboo reports provide useful information within a few clicks, for the exact set of plans you care about. Reports include:

  • Success percentage
  • Duration
  • Activity
  • of tests
  • of failed tests
  • Time to fix failures
  • Clover code coverage

View the CI scorecard
Who’s submitting bullet-proof code? Who’s going to buy beer for breaking the most builds? Bamboo provides insightful reports for:

  • Full Teams: # of builds triggered / failed / fixed
  • Individuals: build history, last 10 triggered / failed / fixed
  • Groups: Success percentage, # of failed / fixed builds

Extend Bamboo

Bamboo works great right out of the box, and it can be extended to fit your exact needs:

  • Install 3rd party plugins from the Atlassian Plugin Exchange to add support for additional SCMs, test tools and more.
  • Create your own Bamboo plugins. Get help from Atlassian and other Bamboo developers in the Bamboo Development Forum and then share your plugins on the Atlassian Plugin Exchange
  • Use Bamboo’s comprehensive REST API to integrate Bamboo with other tools or automate common tasks.

System requirements and supported development tools

CI server and agent operating systems Windows, Linux, Mac OS X

Cloud platforms

Amazon EC2 (Linux, Windows)

SCM repositories

Built-in support: Subversion, CVS, Perforce
Supported via plugin: Git, Github, Mercurial, Clearcase, Accurev, Dimension

Programming languages

All languages supported — Java, C/C++, C#, VB.net, PHP, Ruby, Python, perl, …

Builders

Ant, Maven, Maven2, make, NAnt, Visual Studio (devenv, MSBuild), custom command line, shell scripts

Test tools

JUnit, any tool with JUnit XML output including: Selenium, TestNG, NUnit, CppUnit, PHPUnit, PyUnit (plugin), PMD (plugin)

Code coverage tools

Atlassian Clover, Corbertura (Plugin), RCov (Plugin)

Build and agent management

Build configuration
  • Plan to agent capability matching
  • Build artifact management
  • Build notification configuration
  • Bulk editing of multiple plans
  • Build result and artifact expiration

Build triggers

  • Commit-triggered builds
  • Manual builds
  • Scheduled builds
  • Dependency-triggered builds

Build queue management

  • Build-queue re-ordering
  • Hung-build detection
  • Configurable queued build timeouts
  • Elastic agent startup

Build result management

  • Label build results via Web browser, IDE, or 2-way IM
  • Comment build results via Web browser, IDE, or 2-way IM
  • Create a Mylyn task to fix failed builds
  • View the most popular labels, all build results with a label, or all labels applied to a build plan.

Agent configuration

  • local, remote and elastic agents
  • Builder, JDK and custom capabilities

Agent management

  • Agent status monitoring

Build result notifications

RSS feed
  • All builds or all failed builds across all plans
  • All builds or all failed builds of a specific plan
  • All builds with a specific label

Email

  • Customized email templates
  • All results or all failed results for a build plan

Instant message

  • Google Talk, Jabber, other XMPP-based clients
  • All results or all failed for a build plan
  • Commment on build results via IM
  • Label build results via IM

IDE notification

  • Pop-up notifiers
  • Pass/fail icons in status bar

External tool integrations

IDE connectors Eclipse, IntelliJ IDEA

JIRA

  • View and manage issues related to a build result
  • View all builds related to an issue
  • View builds related to a JIRA project
  • Display JIRA dashboard gadgets for latest build status and build plan summaries

Confluence

  • View latest result of a build plan
  • View recent results for projects, plans, or authors
  • Charts for recent build duration and test failure count
  • Charts for average build duration and test failure % over time

FishEye

  • View committed changes that triggered a build
  • One-click diff and change history from Bamboo build results

Other tools

  • JavaScript widgets including latest builds, plan status, and summary graphs

Elastic Bamboo

Elastic agent configuration
  • Amazon Machine Image (AMI) customisation
  • Elastic Block Storage (EBS) persistence

Elastic Agent Management

  • Web browser and SSH management
  • Start agents from build queue
  • Agent scheduling
  • Agent usage tracking

Build analysis and reporting

Build plan reports
  • Duration, failed tests for recent builds
  • % Successful builds, average build duration over time
  • Test statistics per plan
  • Individual test history
  • Clover — code coverage per plan
  • Clover — lines of code per plan
  • Avg. time to fix builds

Author reports

  • Build statistics per author
  • Build results per author
  • Activity, failures, fixes per author

Security and user management

Authentication
  • Single sign-on with Atlassian Crowd
  • LDAP integration

Permissions and access control

  • User and group definitions and permissions
  • Anonymous user permissions
  • Plan-level permissions

Extending Bamboo

Plugins
  • Bamboo plugin framework
  • Dozens of 3rd party plugins available for download

API

  • REST API

Reference:

Features:
http://www.atlassian.com/software/bamboo/features/
Bamboo: getting Started
http://confluence.atlassian.com/display/BAMBOO/Bamboo+101
Forum
http://forums.atlassian.com
Plugins
https://plugins.atlassian.com/search/by/bamboo
http://confluence.atlassian.com/display/BAMBOO/Bamboo+Plugin+Guide
Jira and Bamboo
http://www.atlassian.com/better-together/progress_report.jsp

Tagged : / / / / / / / / / / / / / / / / / / / / / /