I have been successfully using the atlassian/trigger-pipeline:4.0.2 pipe to trigger and run multiple pipelines, waiting for success or failure. I have a "master build" that runs a list of pipelines in several other repos. My steps invoking the trigger specify WAIT: 'true'
The default pipelines are being triggered and typically take 1-3 minutes to run to completion. This has all been working fine.
I recently added a manual deployment step to some of the pipelines. Now the trigger-pipeline steps for the repos where I've added the manual deployment step to those pipelines never get's back a successful completion. The following lines repeat forever, even though I can verify the triggered pipeline has successfully completed:
INFO: Attempt number 22: Getting build info.
INFO: Attempt number 22: Build number 10 for MyBuild is IN_PROGRESS,
waiting for pipeline to finish...
The pipelines without the added deployment steps continue to work, but those with the manual deployment steps do not. Should this pipe support waiting for pipelines with manual deployment steps? For example, triggering the pipeline with this step never comes back as successful:
pipelines:
default:
- step:
caches:
- gradle
script:
- ./gradlew build
artifacts:
- dist/*.jar
- step:
name: Deploy to test
deployment: Test
trigger: manual
script:
- /deploy.sh
I am only expecting that the ./gradlew build step needs to complete successfully, and in this case the pipeline shows a status of Successful in the UI. However the trigger-pipeline pipe waits forever. I tried updating to use atlassian/trigger-pipeline:4.0.3 but that didn't help.
Looking at the api made to check status in the source code, if I make the api call
/repositories/{account}/{repo}/pipelines/{build_number}
for the completed pipeline with the manual deployment step, it returns:
"state": {"name": "IN_PROGRESS", "type": "pipeline_state_in_progress",
"stage": {"name": "PAUSED", "type": "pipeline_state_in_progress_paused"}}
I can't move the manual deployment step to another pipeline because it needs access to the artifact produced in the prior step.
Hi @Jay Seletz ,
new version of the pipe atlassian/trigger-pipeline:4.0.5 with fix is released!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey @Jay Seletz , thanks for such a detailed issue report. As it turns out, there is a bug in the current version of the trigger-pipeline. As a temporary workaround I suggest setting WAIT parameter to 'false' so the source build doesn't wait for the downstream with the manual step. We'll fix the bug asap and will notify you here.
As a side note, your upstream pipeline should continue to run when you trigger the manual step in your downstream build, but I guess this is not something that helps you.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks @Alexander Zhukov - I actually do need to wait. I have forked the trigger-pipeline and implemented a workaround to optionally allow paused pipelines to be considered successfully run if waiting. I look forward to being able to revert back to the official version once it's fixed, thanks!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Great! @Jay Seletz you're also welcome to contribute to the trigger-pipeline by creating a pull request with the changes to our trigger-pipeline repository.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.