Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Defining Conditional Steps

I want to run some steps only in particular cases.

My expectation would be like:

- step:
   name: some conditional step
   script:
     - echo "run only if the condition is true"
   when: <some condition>

       

2 answers

0 votes

At the moment, using exactly the syntax specified in the documentation results in an error that the yaml file is failing schema validation.  It says 

There is an error in your bitbucket-pipelines.yml at [pipelines > branches > master > 0 > step > condition]. 
To be precise: At least one condition is required

My step is defined as:

 - step: &codegen
name: Generate Protos
script:
- make ci_tools
- make proto_go
artifacts:
- golang/**
condition:
changesets:
includePaths:
- "proto/**/*.proto"
0 votes

Hi @Sascha Mowtschan

We don't have such configuration to set special conditions for a build to happen. 
Would you mind sharing what type of conditions you would test in the when clause?
Depending on what you share for those conditions I'll be able to open a feature request for this.

If you are attempting to avoid builds on certain commits you can use the "[skip ci]" token in their commit message. Commits with that token will not trigger builds.

Hi @Daniel Santos 

something like:

when: $(git diff --name-only --diff-filter=AMDR HEAD^ some-directory-or-file) != ""

 

Hi @Sascha Mowtschan

I've created the following feature request for this:

Please vote on this one and add yourself as a watcher to make sure you will have any updates from that ticket. Let me know if you have more comments or questions on this matter. =]

awesome! thank you!

I voted and added my self as a watcher. 

Like Daniel Santos likes this

That is great, you are welcome!

- step:
          name: path1 failing step
          script:
             - echo "failing path1"
             - exit 1
          condition:
              changesets:
                 includePaths:
                   - "path1/*"
                   - "path2/*"
Like # people like this

Hi @Alex Popa

Could you please share me the documents or more configuration for this condition step?

Many thanks,

NAT

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Confluence Cloud

🎨 Add some visual life to your templates

Hi Atlassian Community, My name is Avni Barman, and I am a Product Manager on the Confluence Cloud team. Based on feedback from you, we are giving admins more power to create templates that a...

229 views 4 9
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you