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

Faster feedback on merges with pull request pipelines

Aneita Yang Atlassian Team Dec 11, 2018

Hey Atlassian community,

Aneita from the Bitbucket Pipelines team here. We're proud to announce that the highest voted feature request for Bitbucket Pipelines - running pipelines on pull request creation or updates - is now available for you to use!

You can now configure Pipelines to create a temporary merge containing the changes in the pull request and the destination branch, with the defined pipeline run on the merge result. This provides developers with faster feedback on possible breaking changes and gives reviewers more confidence in approving a pull request.

It's easy to configure Pipelines to run when a pull request is open by using the pull-requests keyword in your bitbucket-pipelines.yml file.

Ready to get started? Read our blog for more information and let the team know if you have any questions about the feature in a comment below.

Happy coding!

Aneita

Bitbucket PM

 

2 comments

When the target branch of any of the not yet closed pull requests changes (which is normally in a forward direction) then I don't see any re-triggering of the pull request pipelines which target that branch ... is this only me not seeing it or is this the current status quo of the implementation depth of the overall feature?

Aneita Yang Atlassian Team Dec 23, 2018

Hey Tom,

 

That's the intended behaviour of the feature. Pull request builds only run when the source branch is updated. Updates to the destination branch will not result in a new build running.

 

These builds don't act as gate-keeper builds, but if that is something that you're interested in, feel free to raise an open feature request for consideration. 

Thanks for adding this. It is indeed very useful for pending pull requests but I can't seem to make it work.

I've added the following to my development branches but new pull requests are **not** causing the pipeline to run.

pipelines:
  pull-requests:
    '**':
    - step:
        caches:
          - pip
        script:
          - /tools/clean-launch.sh tox --skip-missing-interpreters -e py27,py37 -- -qrf

My understanding that '**' should run on all new or updated pull requests but this is not happening. FWIW the pipeline log is at https://bitbucket.org/openpyxl/openpyxl/addon/pipelines/home#!/

While I do very much appreciate pipelines I do find the syntax a little challenging and, more importantly, the lack of the ability to do a "dry run" of the configuration frustrating. I can either edit the file online and try and make sense of the error messages, or work offline and hope that the file is valid.

Hey @CharlieC,

 

Thanks for reaching out. Can you please raise a support ticket so that we can look at your repository in more detail? Your pipelines configuration looks valid to me so we'll need to dig deeper into why it's not working. 

 

As for your suggestion about doing a 'dry run', I can definitely see the value in that. If that's something you're interested in, you can vote for our open feature request.

Actually, looking at your YML configuration again, you indentation seems to be off (although I'm not sure if that's a result of copying/pasting).

 

The "- step:" and everything below it needs to be further indented. 

Thanks for the note. I'll give it a try.

The use of whitespace in these files is confusing. I've attempted to keep the same structure as I have in the default part. Again this is not helped by not being able to test the configuration. Particularly in the case of pull requests I now have to wait for one to be created to see if it has any effect.

I increased the indentation but this did not cause the pipeline to run when a new pull request was submitted.

Aneita Yang Atlassian Team Jan 01, 2019

Hey @CharlieC, can you please raise a support ticket so that we can look at your repository in more detail? 

Comment

Log in or Sign up to comment
Community showcase
Published in Bitbucket Pipelines

Building a Bitbucket Pipe as a casual coder

...ipe.sh :  #!/bin/bash source "$(dirname "$0")/common.sh" enable_debug extra_args="" if [[ "${DEBUG}" == "true" ]]; then extra_args="--verbose" fi # mandatory variables R...

4,093 views 4 22
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