このページのコンテンツ
要約
Bamboo Server is a CI/CD solution which is part of the Atlassian suite of developer tools. It is available only in a self-managed configuration and is a closed source solution. Bamboo offers build, test, and deployment automation, and has tight integrations to Atlassian Bitbucket (for SCM) and Fisheye (for understanding how source code has changed), as well as integrations to over 150 other tools. In contrast, GitLab offers a git-based SCM, SCM integrations, and code change traceability out of the box in a single application.
Bamboo offers a GUI for defining build plans, and offers pipeline as code through Java and Yaml. Bamboo also offers deployment plans (which include the notion of environments and releases), pre-deployment visibility, and per-environment deployment permissions. GitLab also offers release tracking across environments and deep visibility into the changes in a deployment, but sets deployment permissions based on branch permissions.
Bamboo does not offer monitoring. GitLab includes monitoring as part of its single application.
Bamboo steps can be run in parallel across agents, and those agents can be auto-scaled based on need if Bamboo is configured for a feature called Elastic Bamboo. Elastic Bamboo requires the use of "remote agents", which you pay extra for (see pricing). Organizations who want auto-scaling are also locked in to using Amazon Elastic Compute Cloud (EC2) and paying Amazon separately for their usage. In contrast, GitLab does not charge per remote agent (runner) and scales with a variety of cloud and container solutions.
不足部分
- Extending the native functionality of Bamboo is done through plugins. Plugins are expensive to maintain, secure, and upgrade. In contrast, GitLab is open core and anyone can contribute changes directly to the codebase, which once merged would be automatically tested and maintained with every change.
コメント/逸話
- Atlassianがベンチマークを許可していないというHackerNewsの記事からの議論
AtlassianはToSや以前のEULAで製品の性能について語ることを常に禁止してきました。みんな理由はわかっていても、それについては話しません。
-
From Twitter:
-
"we have also started using GitLab (moving from our own Bitbucket/Bamboo servers). The CI/CD is definitely an improvement but I'm not sold on the code review features of GitLab"
https://twitter.com/carrchr/status/1003651960099176448 -
"Sweet. Unlike Atlassian's Bamboo, @GitLab CI supports "[ci skip]" out of the box. #gitlab #devtools #success"
https://twitter.com/tekkie/status/823689378371342336 -
"Nice and simple GUI in @GitLab CI as well. Much easier to navigate than Bamboo for instance. #gitlab #gui #ux #success"
https://twitter.com/tekkie/status/839054544009117696 -
"Seriously, is still there a reason to use Jenkins/Hudson/TeamCity/Bamboo? I reckon @GitLab built-in CI support is sufficient for most of us!"
https://twitter.com/AriyaHidayat/status/756919101587546112 -
"A day building pipelines in VSTS for one of my teams. Get the feeling that while I find it simple not everyone finds it the same. Better than Gitlab CI (IMO) but I like Bamboo a lot too…"
https://twitter.com/xyglo/status/978291270161457152
-
-
From Bamboo open Issues
- Issue: If I want to use git submodules then I shouldn't have to upload and configure SSH keys on each Bamboo Agent.
- Key text: "Bamboo requires separate Git authentication for submodules. This involves either using HTTPS for submodules and providing the credentials through the job's environment variables, or configuring separate SSH keys on each build agent. Using HTTPS would render local builds unusable, requiring credentials every time. Adding SSH keys to every Bamboo agent is unmaintainable. . . . This reason, among others is a large part of why we have migrated away from Bamboo. We now use Gitlab and Gitlab CI for much better Docker and git support."
- Link: Bamboo Issue in Jira
- Issue: If I want to use git submodules then I shouldn't have to upload and configure SSH keys on each Bamboo Agent.
リソース
料金
- Price page
- Bamboo Pricing Guide
(includes price additions for remote agents, and academic pricing) - Small Teams - $10/month - only 10 jobs and no remote agents
- Growing Teams - $880/month - unlimited jobs, 1 remote agent
- pricing increase in tiers by # remote agents (1, 5, 10, 25, 100, 250, 500, 1000) (see Bamboo Pricing Guide for prices)
- First purchase includes perpetual software and 1 yr maintenance. Yearly cost for maintenance is approximately 50% of initial remote agent tier cost. (e.g. 1st year @25 remote agents = $8,800, second year maintenance = $4,400)
比較
機能 | ![]() | |
---|---|---|
統合されたCI/CD CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLabにはCI/CD機能が統合されているので、CI/CDのために他のツールをインストールする必要はありません。GitLabのCI/CDを使用して、ウェブサイト(GitLab Pages)やウェブアプリケーションをビルド・テスト・デプロイできます。ジョブの結果はマージリクエストに表示され、簡単にアクセスできます。 | | |
より小さなメモリとより少ないCPUパワーで実行可能 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
512MBと小さなメモリでも快適に動作します。また、Goはコンパイラ型言語のため少ないCPUパワーしか消費しません | | |
アプリケーションのパフォーマンス監視 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
Prometheusを利用して、GitLabはデプロイしたアプリケーションのパフォーマンスメトリクスを収集し表示できます。開発者はマージが本番環境に与える影響を、GitLabから離れることなく、簡単に確認できます。 | | |
GitLab サーバのセルフ監視 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
オンプレミスで運用しているGitLabサーバーをPrometheusで監視できます。これにより、自身のGitLabサーバーの稼働状況を簡単に確認できます。 | | |
バリューストリーム分析 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLabは計画からモニタリングまでに要した時間を計測するためのダッシュボードを提供します。GitLabには、アイディアを本番環境にデプロイするまでに必要なツールのすべてが組み込まれているので、このようなデータの提供が可能です。 | | |
Group Level Value Stream Analytics CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLab provides a group dashboard that lets teams measure the time it takes to go from planning to monitoring. GitLab can provide this data because it has all the tools built-in: from the idea, to the CI, to code review, to deploy to production. | | |
レビューアプリで変更をプレビュー CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLab CI/CDを利用して、ブランチごとに新しい環境を作成することができ、開発プロセスを高速化できます。自分のブランチをプレビューできるマージリクエスト用の動的な環境を起動できます。レビューアプリは静的・動的なURLの両方をサポートします。 | | |
包括的なAPI CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLabは、インテグレーションの開発を可能にするために、多くの機能をAPIとして提供しています。 | | |
CI/CD 水平自動スケール CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLab CI/CDのクラウドネイティブなアーキテクチャでは、ワークロードが増加した場合に、新しいノードを追加することで簡単に水平方向にスケールできます。GitLab Runnerはパイプライン処理が開始されると、自動的に新しいコンテナを作成し、処理が完了して不要になったコンテナを削除します。これにより、CI/CDのコストを抑えることができます。. | | |
CI/CD パイプラインダッシュボード CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
プロジェクトやグループ全体のパイプラインの履歴と現在のステータスをユーザーごとにカスタマイズできる単一のダッシュボードで視覚化します。 | | |
クラウドネイティブ CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLabとGitLab CI/CDはクラウドネイティブな設計で開発されています。GitLab は Kubernetes 上に簡単にデプロイできます。また、Gitlab を使用してアプリケーションをそのまま Kubernetes に対しデプロイできます。 | | |
統合されたウェブターミナルでコンテナをデバッグ CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLabにビルトインされたウェブターミナルを使用すると、あらゆる環境のコンテナを簡単にデバッグできます。アプリケーションをKubernetesにデプロイしている場合は、GitLabの環境メニューから直接ターミナルのセッションを開始することができます。この強力な機能により、ブラウザから離れることなく、問題の調査を素早く行うことができます。 | | |
柔軟なパイプライングラフ CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
複数のジョブを直列、または並列に実行するパイプラインの構造は非常に複雑です。 GitLabでは単一のパイプライングラフですべてのジョブのステータスを表示できるので、 何が起こっているのかを簡単に確認できます。 | | |
HTML成果物をオンラインで表示 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
テストレポート、コード品質、コードカバレッジなどの情報を、 ダウンロードせずに、直接ブラウザで表示できます。 | | |
成果物をブラウズ可能 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLab CIを使用すると、外部サービスを必要としないで、GitLab内にジョブの成果物をアップロードできます。 これによって、アップロードした成果物をGitLabのウェブインターフェースで表示できます。 | | |
パイプラインをスケジュール実行 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
cronのように、パイプラインをスケジュール実行できます。 | | |
コード品質MRウィジェット CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
マージリクエストのウィジェットエリアに表示されるコード品質レポートにより、変更がコードの品質に与える影響を事前に知ることができます。 | | |
コード品質レポート CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
コード品質レポートは、パイプラインページで利用可能で、組織の推奨スタイルや基準を満たしていないコードの領域を表示します。 | | |
複数プロジェクトのパイプライングラフ CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
マイクロサービスアーキテクチャでは、パイプラインの設計はより複雑なものになります。 複数プロジェクトのパイプライングラフを使用すると、アップストリームとダウンストリームのパイプラインが、プロジェクトのトリガーを通して、どのように協調しているのかを表示することができます。 | | |
保護変数 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
権限のあるユーザーだけが変数の値を取得できるように、変数を保護することができます。 「保護変数」は「保護ブランチ」で実行されているジョブからだけ取得できます。 | | |
デプロイメントプロジェクト CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
デプロイメントプロジェクトには、ビルドおよびテストされたリリースやリリースがデプロイされた環境など、デプロイしているソフトウェアプロジェクトが含まれます。 | | |
環境とデプロイメント CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLab CIを使用すると、ビルドやテストだけではなく、インフラへのデプロイもできます。 また、CIのジョブのタグに似ている、環境を利用するとデプロイ履歴をトラッキングできます。 | | |
環境ごとの権限 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
本番環境とは別に、開発者やQA担当者はそれぞれの環境に対してデプロイできます。これにより、ビルドエンジニアや運用チームにデプロイを依頼する必要がなくなり、彼らの負担を下げることができます。 | | |
環境履歴 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
環境履歴を使用するとサーバーに現在、何がデプロイされているのかを確認できます。また、環境の詳細画面では過去のすべてのデプロイ情報を表示できます。 この画面から現在のバージョンを再デプロイしたり、何か問題が発生した場合は、過去の安定バージョンにロールバックすることができます。 | | |
特定環境用の変数 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
どの環境から変数の値を取得できるのか制限することができます。 | | |
グループレベル変数 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
グループレベルで変数を定義し、グループ内のすべてのプロジェクトから使用することができます。 | | |
パイプラインのコードカバレッジを表示 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
GitLabでは、カスタマイズ可能な正規表現を使用してジョブの出力をパースして、SimpleCovのようなツールが生成するコードカバレッジを取得できます。 取得したデータはUIに自動的に表示され、HTMLページなどに埋め込むためのバッジとして使用することもできます。 | | |
複数のKubernetesクラスターをサポート CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
ステージングや本番環境のような異なる環境を異なるKubernetesクラスターに簡単にデプロイできます。 これにより、ステージングと本番環境のデータを完全に分離することができます。 | | |
悪いテストを隔離 CORE STARTER PREMIUM ULTIMATE FREE BRONZE SILVER GOLD
テストが失敗することを常態化させてはなりません。1クリックで不安定なテストや壊れたテストを一時的に蚊帳の外に置いて、テストをGreenな状態に保つことができます。 | | |
* このページの情報は最新ではありません。最新の情報は 公式サイト をご確認ください。