Architecture of Atlassian Bamboo
Plans include stages, stages include jobs, and jobs contain tasks in the standard flow of execution in Bamboo. Once a plan is triggered, Bamboo executes each stage in turn, completing the jobs within each stage. Finally, each job consists of one or more tasks that are carried out in sequence.
- Plans: A plan is an implementation of a CI/CD pipeline for a specific software project. It specifies the sequence in which different tasks and phases must be completed so as to create, test, and deploy the application. In a version control repository, a plan often relates to a branch or specific configuration.
- Stages: Within a plan, a stage is a logical arrangement of related tasks. It helps in streamlining and illustrating the many pipeline procedures. The outcomes of one step are used as the input for the next one and is carried out progressively. Build, test, deploy, and release are common phrases.
- Jobs: A job indicates a specific assignment or set of duties that must be carried out during a stage. Within a stage, jobs can be parallelized for faster completion and higher efficiency. Each job often corresponds to a particular build, test, or deployment operation, such as coding, testing, or distributing artifacts to a specific environment.
- Tasks: The smallest executable elements within a job are called tasks. They represent specific duties that are carried out as a component of the whole job. Bamboo has a variety of built-in actions, including running tests, executing scripts, packaging artifacts, and deploying to specific platforms. Bamboo further enables the creation and pipeline integration of customizable work.
Features of Atlassian Bamboo
- Support for Docker
- Customizable workflows
- Easy integration with other Atlassian tools
- Built-in support for multiple code branches
Advantages of Atlassian Bamboo
- It has professional technical support.
- It has an automated integration facility.
- Agents can run on multiple machines.
- It has specific language support for Ruby.
Disadvantages of Atlassian Bamboo
- As it is not open-source software, so one needs to pay for using it.
- It has limited options available in terms of Operating systems.
- It has limited integration with non-Atlassian tools.
- Developers need to invest time to learn it.
- Less number of plugins are available.
Difference Between Jenkins and Bamboo
Pre-requisite: Jnekins
Jenkins and Bamboo are the tools that run in most of the systems where JAVA runtime is installed because they both are built on JAVA. Both Jenkins and Bamboo is a Continuous Integration tool used in industries and is quite popular in the market. Though they both belong to the same category of tools but are different from each other in various aspects. Let’s learn about the differences in this article.