Bamboo Specs YAML Features

Mark Kewley March 2, 2018

I was able to get up and running creating a more complicated build plan with plugins (per-build-container) using the Java spec format.

However, Java is not something that most of us want to use at my company for configuration as code. We would like to use YAML as it's significantly easier to ramp up non software engineers (aka Ops team). I was going over they very limited documentation (Confluence/Docs). Is there more documentation or is YAML not quite as feature rich as Java?

Are there plans to have it be equivalent to the Java method? This will most likely be a dealbreaker for us, we've been using Bamboo/Bitbucket for years but we need a better CI/CD process like what Bitbucket pipelines offers but not as insecure.

2 answers

0 votes
Victor Debone
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 23, 2019

I'm answering to keep this answer updated

We've just released Bamboo 6.9, which includes a fresh version of YAML Specs, version 2.0. This version includes a big expansion on YAML features, you can check more details here.

Omar Herrera
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 23, 2019

Thanks  @Victor Debone 

Victor Debone
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 27, 2019

Thanks for reaching out @Romain Senechal.

Plugin configuration is not possible in the moment with YAML Specs.

We are tracking this feature here BAM-19841. I will add your comment as additional feedback for it.

Like Steffen Opel _Utoolity_ likes this
denis_kot August 28, 2019

Hi,

Features I'm currently missing in YAML:

* Notifications to, i.e., Slack
* Dependencies

Deleted user November 4, 2019

someone is using the PBC configuration in YML file?
Because in this https://bitbucket.org/atlassian/per-build-container/src/master/ have a sample, but I can't do this work

0 votes
Grzegorz Lewandowski
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
March 5, 2018

Hello, 

Thank you for contacting us. Java and YAML Specs are a little bit different in terms of it's base assumptions:

* Java is more powerful but the learning curve is a little bit higher (although it doesn't use any sophisticated language features so a person proficient in other programming language should handle that)
* YAML is simple and the learning curve is much smaller, although the price is in the tool completeness. Allowing to configure every available Bamboo config option in YAML would make the YAML really complex and hard to handle. 

That's we implemented YAML with very limited set of options which we believe are the most crucial ones for CI/CD. solution Obviously we know some features are still missing therefore we're open for suggestions to understand what should be implemented.

What features BitBucket Pipelines offers that are crucial for you but Bamboo YAML Specs are missing?



Best regards,

Grzegorz Lewandowski

Mark Kewley March 5, 2018

The problem with Java is though it opens the door to anything that can be run on a JVM which just means more potential languages to support. I agree it's simple to use but that's because I'm already proficient with Java. Teaching this to an Ops team is not something we would like to do.

 

Anything the Java feature has that the YAML does not is considered missing to me. One example is the ability to configure custom plugin support for the build agents. A complex YAML file is much easier to maintain for an Ops team over java.

 

Benjamin Kett March 5, 2018

Grzegorz,

     If I'm an operations person who's never written in Java before and the first thing I encounter on your tool is that requires me to learn an entirely new, strongly typed language and how to do Object Oriented Programming, I check out. No matter how someone who is a programmer thinks Java is accessible, it's complete nonsense to someone who has never defined a method or a class before.

What features do I want from your company's other CI tool in Bamboo YAML-specs? All of them. I want multiple build steps. I want the ability to pull multiple different container images, define scripts, etc. I want to be able to understand what my build is doing without having to translate Java to English.

Right now YAML specs does 1/10th of the job that your company already offers in YAML via Bitbucket Pipelines. I want to not have to go to my operations team and tell them "Well yeah, you'll have to write/update a Class to construct our build process. See? CI is easy!"

Ant no point would I call the Bitbucket Pipelines YAML "Overly complex". It describes my builds in an extremely declarative way: perfect for operations to understand and debug. Hand them an imperative-driven Java Class and a stacktrace from the JVM? Goes straight back to the developers for all issues and I'm back to where I am now: Developers doing a lot of stuff that is not developing, which is what CI/CD is supposed to mitigate.

 

Thanks,

 

Ben

Like # people like this
Omar Herrera
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
March 6, 2018

+1

Simon Borger March 16, 2018

I completely agree with Benjamin. For instance, why is it not possible to execute a predefined command (executable) from YAML? I do not see how this would over complicate the syntax.

Mark Kewley March 16, 2018

@Simon Borger

Good luck, they don't reply after they've "answered" once, typical Atlassian support. Hoping to convince my company to move over to GitLab. Offers us everything that Bitbucket cloud offered plus encryption at rest. We've been using Bamboo/Bitbucket for years but I think they are falling behind with CI/CD. Pipelines was the right direction, just wish they offered that on Bamboo/Bitbucket server.

Like dmitriy likes this
Miroslaw Szajowski April 11, 2019

+1 on @Benjamin Kett opinion

Are there any updates to this issue?

Victor Debone
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 11, 2019

Hello everyone,

I see that you're actively using YAML or trying to do such. We are baking some new features that may make it easier for you to use YAML and we are looking to hear some more direct feedback from customers on that.

I hope there still time for you @Mark Kewley and @Benjamin Kett Also @Omar Herrera @Simon Borger and @Miroslaw Szajowski, if you all could reach me at vdebone@atlassian.com, you could make part of this conversation :) 

Victor

Benjamin Kett April 11, 2019

Victor and Miroslaw,

     We moved on from Bitbucket due to this issue and are now happily on Gitlab. Unfortunately since Bitbucket Cloud does not encrypt user data at rest we had to move to another self-hosted solution and Gitlab gave us all the CI features we were looking for.

Ben

Like Mark Kewley likes this
Mark Kewley April 11, 2019

Ben is correct,

We couldn't wait a full year or more for a solution so we moved away from Bamboo and Bitbucket onto Gitlab. I highly recommend Gitlab for those who are looking for a feature rich CI/CD solution that offers encryption at rest.

For my suggestion, look into what they are offering and add that to your solutions.

Mark

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events