Skip to content

Trigger infra deployment job update#4727

Open
denis-chernov-smartcontract wants to merge 5 commits intomainfrom
DS/add-streams-for-trigger-infra-deployment-job
Open

Trigger infra deployment job update#4727
denis-chernov-smartcontract wants to merge 5 commits intomainfrom
DS/add-streams-for-trigger-infra-deployment-job

Conversation

@denis-chernov-smartcontract
Copy link
Contributor

@denis-chernov-smartcontract denis-chernov-smartcontract commented Mar 11, 2026

Description

Updated deploy so infra dispatch waits on streams build when needed, without blocking when streams is off.
image

What changed in deploy.yml

  • Added release-options and build-publish-streams to deploy.needs.
  • Replaced deploy.if with a guarded condition:
    • always() to prevent auto-skip when optional upstream jobs are skipped.
    • requires changed adapters.
    • requires build-publish success.
    • if streams is enabled, also requires build-publish-streams success.

@changeset-bot
Copy link

changeset-bot bot commented Mar 11, 2026

⚠️ No Changeset found

Latest commit: 91b04ad

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

- build-publish
if: needs.calculate-changes.outputs.adapter-list != '{"adapter":[]}'
- build-publish-streams
if: >
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a comment here explaining exactly why we need always()? Which job might be skipped and why do we still want to run this if it was skipped?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added

--json number \
--jq '.[0].number // empty')
--json number,title \
--jq ".[] | select(.title == \"Release $BUMPED_VERSION\") | .number")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does this change do and why is it needed?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In my initial implementation, I was utilizing the gh pr list --search command, which uses GitHub's search API, which has eventual consistency — there's a delay between when a PR is created and when it becomes searchable.
New code uses the REST API (not the search API) and is immediately consistent.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a comment explaining this so someone doesn't accidentally change it back to use the search API in the future?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add to the PR description what problem we have today that this PR is trying to solve? Is something not working? Did something go wrong? Do we anticipate something might not work under which conditions?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added an image to illustrate the change.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm specifically asking about the "why" rather than the "what". That's why I asked these question:
What problem do we have today that this PR is trying to solve? Is something not working? Did something go wrong? Do we anticipate something might not work under which conditions?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants