Skip to content

Conversation

@cosmir17
Copy link
Contributor

@cosmir17 cosmir17 commented Nov 10, 2025

Closes : TPM-774

Summary

Automates creation of integration PRs when midnight-node publishes new releases.

Changes

Workflow (.github/workflows/auto-integrate-node-release.yaml):

  • Triggered by repository_dispatch from midnight-node or manual workflow_dispatch
  • Updates NODE_VERSION file to released version
  • Downloads metadata.scale from GitHub release assets
  • Runs cargo check and cargo test
  • Creates draft PR if build/test errors detected
  • Creates ready PR if build/test pass cleanly
  • Skips if integration branch already exists

Documentation (docs/automation/node-integration-automation.md):

  • Usage instructions for indexer team
  • Manual trigger fallback
  • Troubleshooting guide

Testing

  • Validated with actionlint (0 errors)
  • Formatted with prettier
  • Ready for manual workflow_dispatch testing

Related

  • Node PR:

Copy link
Collaborator

@hseeberger hseeberger left a comment

Choose a reason for hiding this comment

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

Does this PR also create the "node data", i.e. does it run generate-node-data.sh? If not, it needs to be extended.

@@ -0,0 +1,31 @@
# Node Integration Automation

**Jira**: [TPM-774](https://shielded.atlassian.net/browse/TPM-774)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Please remoce the Jira link which is not accessible for the community; remember, this is an open source project.


steps:
- name: Checkout indexer repository
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
Copy link
Collaborator

Choose a reason for hiding this comment

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

Does Dependabot update the comment (version number)? If not, please remove it.

- name: Check if branch already exists
id: check_branch
run: |
BRANCH="feat/integrate-node-${{ steps.version.outputs.node_version }}"
Copy link
Collaborator

Choose a reason for hiding this comment

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

Here comes a tricky question: Is this a feature? Or a dependency update? IMHO the answer depends ... once we support multiple node versions, e.g. 0.18 and 0.19, only supporting a new node version is a feature.

Also, do we want to automatically integrate with EVERY node release?

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.

3 participants