CI Server (Bamboo) - Gatheringapp/Project-management GitHub Wiki

CI Server Setup

  • Many products, but same functionalities
  • Define and trigger jobs – Store deliverables (and keep history) – Make them easily accessible – Keep users informed of build result
  • Choosing a CI Server
  • Free or not – Integration with your tools – Plugins
  • Market Offering
  • Cruise control
  • Hudson / Jenkins
  • Teamcity (JetBrains)
  • Bamboo (Atlassian)
  • Always use a clean server
  • Use distributed jobs
  • Define a job for every product and every environment (branches / clones)
  • Keep deliverables only for production jobs.
  • Keep only a dozen for integration
  • Only send alerts for failures !

Getting Started with Bamboo

Bamboo is a continuous integration (CI) server that can be used to automate the release management for a software application, creating a continuous delivery pipeline.

CI is a software development methodology in which a build, unit tests and integration tests are performed, or triggered, whenever code is committed to the repository, to ensure that new changes integrate well into the existing code base. Integration builds provide early 'fail fast' feedback on the quality of new changes.

Release management describes the steps that are typically performed to release a software application, including building and functional testing, tagging releases, assigning versions, and deploying and activating the new version in production.

See guides for AWS, Java, .NET, PHP & Ruby.