Skip to content

feat(sdk): add nitro process manager#330

Merged
endersonmaia merged 4 commits intoprerelease/v2-alphafrom
feature/add-hivemind-process-manager
Sep 10, 2025
Merged

feat(sdk): add nitro process manager#330
endersonmaia merged 4 commits intoprerelease/v2-alphafrom
feature/add-hivemind-process-manager

Conversation

@endersonmaia
Copy link
Copy Markdown
Contributor

@endersonmaia endersonmaia commented Aug 27, 2025

This pull request introduces support for the Nitro runtime in the SDK Docker build, along with related configuration and setup improvements. The most important changes include adding a build stage for Nitro, copying Nitro binaries into the final image, and introducing service run scripts for Nitro components. Minor improvements to build reliability and environment variable management are also included.

Nitro runtime integration:

  • Added a new build stage for Nitro in packages/sdk/Dockerfile that fetches and builds the Nitro binaries from the specified version.
  • Copied the built nitro and nitroctl binaries from the Nitro build stage into the final Docker image.
  • Introduced a new NITRO_VERSION build argument in packages/sdk/docker-bake.hcl to control the Nitro version used.

Service setup for Nitro components:

  • Added run scripts for Nitro services (cartesi-rollups-advancer, cartesi-rollups-claimer, cartesi-rollups-evm-reader, cartesi-rollups-jsonrpc-api, cartesi-rollups-validator) in the packages/sdk/skel/etc/nitro/ directory to enable service execution in the container. [1] [2] [3] [4] [5]
  • Updated the Dockerfile to copy the skel/ directory into the image and set ownership appropriately for the cartesi user.

Build and environment improvements:

  • Improved shell script reliability in Dockerfile build steps by switching to set -e and set -eu where applicable. [1] [2]
  • Cleaned up duplicate Docker build arguments and removed unused ones.
  • Removed a redundant copy command for su-exec from the Dockerfile.

@endersonmaia endersonmaia self-assigned this Aug 27, 2025
@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Aug 27, 2025

⚠️ No Changeset found

Latest commit: 0b2b773

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

@endersonmaia endersonmaia requested review from Copilot and tuler August 27, 2025 18:40
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds the hivemind process manager to the @cartesi/sdk Docker image, enabling users to run multiple Cartesi rollups processes simultaneously using a simple Procfile configuration.

  • Added hivemind binary installation to the Docker build process
  • Configured hivemind version as a build argument for flexibility
  • Added changeset documenting the new feature as a minor version update

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
packages/sdk/docker-bake.hcl Added HIVEMIND_VERSION build argument (1.1.0)
packages/sdk/Dockerfile Added hivemind installer stage and binary copy to final image
.changeset/legal-hotels-change.md Added changeset for minor version bump

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@endersonmaia endersonmaia force-pushed the feature/add-hivemind-process-manager branch from b98716f to bbd6f28 Compare September 10, 2025 18:29
@endersonmaia endersonmaia changed the title feat(sdk): add hivemind process manager feat(sdk): add nitro process manager Sep 10, 2025
@endersonmaia endersonmaia force-pushed the feature/add-hivemind-process-manager branch from bbd6f28 to 0b2b773 Compare September 10, 2025 18:41
@endersonmaia endersonmaia merged commit 0b2c5cf into prerelease/v2-alpha Sep 10, 2025
7 checks passed
@endersonmaia endersonmaia deleted the feature/add-hivemind-process-manager branch September 10, 2025 19:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants