KEMBAR78
Atlassian Bamboo Feature Overview | PPTX
Jim Bethancourt @ Houston JUG meeting Nov 30th 2016
All images property of Atlassian
AGENDA
• Supported Platforms
• Continuous Integration
• Unified workflow
• Continuous Delivery
SUPPORTED PLATFORMS
SUPPORTED OSSES
• Windows (installer available)
• Linux
• Solaris
• Mac OSX
• Docker (agents)
• Can run on AWS (server and agents)
• Elastic AWS agent capability
USER AUTHENTICATION
• LDAP / AD
• JIRA (Bamboo admin users only – not ideal for large installations)
• Crowd – supports SSO
SUPPORTED DATABASES
• MySQL
• Oracle
• Postgres
• MSSQL
• HSQLDB (bundled – eval only)
SUPPORTED SOURCE REPOSITORIES
• Git
• GitHub
• SVN
• Mercurial
• Perforce
• CVS
• Bitbucket Server
• Bitbucket Cloud
• Repositories in FishEye
• Shallow cloning available for some repo types
SUPPORTED BUILD SYSTEMS
• Ant
• Custom command executable (e.g. Gradle)
• Grails
• Maven (repository isolation per agent is available)
• MSBuild
• NAnt
• Script
• Visual Studio
• Xcode
• Multiple versions of tools / SDKs supported, many autodetected
SUPPORTED UNIT TEST
FRAMEWORKS
• JUnit Parser
• MBUnit Parser
• MSTest Parser
• MSTest Runner
• NUnit Parser
• NUnit Runner
• PHPUnit
• TestNG
• Clover (for test coverage stats + coverage history stats)
CAPACITY TIERS / PRICING
• Up to 5 month trial with 25 remote agents
• 10 Plan starter license - $10
• 1 Remote Agent - $800
• 5 Remote Agents - $2,200
• 10 Remote Agents - $4,000
• 25 Remote Agents - $8,000
• 100 Remote Agents - $16,000
• 250 Remote Agents - $40,000
• Server can have unlimited agents
• Annual maintenance is half of initial license cost
UPGRADES
• Upgrades only require upgrading the server
• Agents are automatically upgraded via network classloader
CONTINUOUS
INTEGRATION
BUILD PIPELINE
JOB PARALLELIZATION – FASTER
FUNCTIONAL TESTS!
PLAN OPTIMIZATION
• Concurrent plan executions can be enabled if checkins occur more frequently than
the build executes
• A Quiet Period can be set to allow multiple checkins to be picked up at once and
improve the feedback cycle. Useful for large projects.
BUILD TRIGGERS
• Manual
• Timer
• Cron job
• Code commit (detected via polling)
• Code push
• Bitbucket Server
• Bitbucket Cloud
QUARANTINE UNIT TEST FAILURES
• Failing tests can be quarantined and assigned
• This allows builds to pass when there are failing tests
UNIFIED DEV WORKFLOW
CREATE BRANCH IN BITBUCKET
FROM JIRA
• Click on the Branch link in JIRA
• A branch is created in Bitbucket
• A Bamboo plan branch is automatically created in Bamboo
• Dedicated to building this branch
• Plan branch will inherit configuration of Bamboo plan, but can be configured
independently
• Branch and branch build results are shown in the JIRA ticket
MASTER IS MERGED INTO THE FEATURE
BRANCH
(AND PUSHED WHERE YOU LIKE)
DEMO!
CONTINUOUS DELIVERY
DEPLOYMENT TASK TYPES
• SCP
• SSH
• Tomcat
• Heroku
• AWS CodeDeploy
INCREMENENTAL RELEASE VERSIONING
AVAILABLE
DEPLOYMENT ENVIRONMENT
TRIGGERS
• A successful build of a plan branch
• A successful deployment to some other environment
• A successful build of a plan stage
• A schedule (specific time and date, at an interval, or Cron-based)
PROMOTION PERMISSIONS
DEPLOY FROM A BRANCH!
PLUGIN DEVELOPMENT
• Offers a rich, Java-based plugin API and SDK
• REST APIs also available

Atlassian Bamboo Feature Overview

  • 1.
    Jim Bethancourt @Houston JUG meeting Nov 30th 2016 All images property of Atlassian
  • 2.
    AGENDA • Supported Platforms •Continuous Integration • Unified workflow • Continuous Delivery
  • 3.
  • 4.
    SUPPORTED OSSES • Windows(installer available) • Linux • Solaris • Mac OSX • Docker (agents) • Can run on AWS (server and agents) • Elastic AWS agent capability
  • 5.
    USER AUTHENTICATION • LDAP/ AD • JIRA (Bamboo admin users only – not ideal for large installations) • Crowd – supports SSO
  • 6.
    SUPPORTED DATABASES • MySQL •Oracle • Postgres • MSSQL • HSQLDB (bundled – eval only)
  • 7.
    SUPPORTED SOURCE REPOSITORIES •Git • GitHub • SVN • Mercurial • Perforce • CVS • Bitbucket Server • Bitbucket Cloud • Repositories in FishEye • Shallow cloning available for some repo types
  • 8.
    SUPPORTED BUILD SYSTEMS •Ant • Custom command executable (e.g. Gradle) • Grails • Maven (repository isolation per agent is available) • MSBuild • NAnt • Script • Visual Studio • Xcode • Multiple versions of tools / SDKs supported, many autodetected
  • 9.
    SUPPORTED UNIT TEST FRAMEWORKS •JUnit Parser • MBUnit Parser • MSTest Parser • MSTest Runner • NUnit Parser • NUnit Runner • PHPUnit • TestNG • Clover (for test coverage stats + coverage history stats)
  • 10.
    CAPACITY TIERS /PRICING • Up to 5 month trial with 25 remote agents • 10 Plan starter license - $10 • 1 Remote Agent - $800 • 5 Remote Agents - $2,200 • 10 Remote Agents - $4,000 • 25 Remote Agents - $8,000 • 100 Remote Agents - $16,000 • 250 Remote Agents - $40,000 • Server can have unlimited agents • Annual maintenance is half of initial license cost
  • 11.
    UPGRADES • Upgrades onlyrequire upgrading the server • Agents are automatically upgraded via network classloader
  • 12.
  • 13.
  • 14.
    JOB PARALLELIZATION –FASTER FUNCTIONAL TESTS!
  • 15.
    PLAN OPTIMIZATION • Concurrentplan executions can be enabled if checkins occur more frequently than the build executes • A Quiet Period can be set to allow multiple checkins to be picked up at once and improve the feedback cycle. Useful for large projects.
  • 16.
    BUILD TRIGGERS • Manual •Timer • Cron job • Code commit (detected via polling) • Code push • Bitbucket Server • Bitbucket Cloud
  • 17.
    QUARANTINE UNIT TESTFAILURES • Failing tests can be quarantined and assigned • This allows builds to pass when there are failing tests
  • 18.
  • 19.
    CREATE BRANCH INBITBUCKET FROM JIRA • Click on the Branch link in JIRA • A branch is created in Bitbucket • A Bamboo plan branch is automatically created in Bamboo • Dedicated to building this branch • Plan branch will inherit configuration of Bamboo plan, but can be configured independently • Branch and branch build results are shown in the JIRA ticket
  • 20.
    MASTER IS MERGEDINTO THE FEATURE BRANCH (AND PUSHED WHERE YOU LIKE)
  • 21.
  • 22.
  • 23.
    DEPLOYMENT TASK TYPES •SCP • SSH • Tomcat • Heroku • AWS CodeDeploy
  • 24.
  • 25.
    DEPLOYMENT ENVIRONMENT TRIGGERS • Asuccessful build of a plan branch • A successful deployment to some other environment • A successful build of a plan stage • A schedule (specific time and date, at an interval, or Cron-based)
  • 26.
  • 27.
  • 28.
    PLUGIN DEVELOPMENT • Offersa rich, Java-based plugin API and SDK • REST APIs also available