Tutorial: Bamboo Specs YAML stored in Bitbucket Server
This guide will show you how you can store Bamboo Specs in a Git repository on Bitbucket Server. This approach allows to automatically build and execute Bamboo Specs on every push you make to a Git repository.
はじめる前に
- Make sure you have the following software installed:
- Bamboo 6.3 or later
- Bitbucket Server 4.0 or later
- Set up an application link between Bamboo and Bitbucket Server. See Integrating Bamboo with Bitbucket Data Center.
Step 1: Create a Git repository in Bitbucket Sever and clone it locally
- In Bitbucket Server, open the Projects page.
- [プロジェクトの作成] をクリックします。
- Select
Bamboo
for project name and key and click Create project.
You see that the project has no repositories. - リポジトリの作成をクリックします。
- Give your new repository the name
tutorial
, and click Create repository.
You've just created a new empty repository. Use the git clone command to create a clone on your computer. For example:
git clone http://admin@localhost:7990/scm/bamboo/tutorial.git
Step 2: Enable processing of Bamboo Specs in your repository
By default Bamboo will not look for Bamboo Specs in the Git repository until your explicitly tell it to do so. Let's do it now:
- Go to > Linked repositories.
Select your repository.
In the Bamboo Specs tab, enable Scan for Bamboo Specs.
In this tutorial we simply grant access to all projects in the Bamboo instance. You can fine-tune project access, see Enabling repository-stored Bamboo Specs how to do this.
Now, the Bamboo is ready to execute Bamboo Specs if it will be committed to the repository. Let's prepare some code.
Step 3: Create Bamboo Specs project using Maven
Go to the empty Git repository you cloned in step 1:
cd tutorial
Use any of the templates we've prepared for your in Bamboo YAML Specs Reference or write YAML definition on your own with Bamboo Specs YAML format.
It's important to save your Bamboo Specs YAML definition in the ${repo-home}/bamboo-specs/bamboo.yml or bamboo.yaml file under the repository root.
project: key: DRAGON plan: key: SLAYER name: Dragon Slayer Quest stages: - jobs: - scripts: - echo 'Going to slay the red dragon, watch me' - sleep 1 - echo 'Nailed it'
Step 4: Create a new Project in Bamboo
- Open Bamboo and go to Create > Create Project.
- Fill in Project name.
- If not auto-generated, fill in the Project Key – eg: DRAGON – this will be referenced in the YAML file.
- 保存をクリックします。
Step 5: Create a linked repository in Bamboo
- Open Bamboo and go to > Linked repositories.
- [リポジトリを追加] をクリックします。
- Select a Bitbucket Server / Stash repository type.
- Choose a name for your repository.
- From the Server drop-down, select your Bitbucket Server.
- In the Web repository section, select the
Bamboo / tutorial
repository from the Web repository drop-down. - Click Save repository.
Your new repository is created and you can start using it in Bamboo.
Step 6: Commit and push code changes to Bitbucket Server
Add created
bamboo-specs
directory to VCS and push changes to the server:git add bamboo-specs git commit -m "Initial commit of Bamboo Specs" git push
As soon as you push your code changes to Bitbucket Server, Bamboo will get notified about a new commit available.
Bamboo will checkout your repository, process it and create plan.
Execution of Bamboo Specs will create or update configuration of plans accordingly.
Step 7: Check if plan was created
- Open your Bamboo instance.
- From the header, select Build > All build plans.
Open the project and plan you've just created.
All configuration options are disabled because entire plan configuration is now managed by Bamboo Specs from your Bitbucket repository.
Click Run plan to execute the build.
- Find the "Hello World!" message in the logs.
次のステップ
Here are some resources that can help you with writing your own Bamboo YAML Specs: