Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

go/runtime/registry: Simplify creation of provisioners #5975

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

peternose
Copy link
Contributor

@peternose peternose commented Dec 17, 2024

Trying to remove the bundle registry dependency from the createProvisioner function, as nodes should generally not have any bundles stored locally upon their initial startup.

These changes also decouple the creation of provisioners from TEE selection. Previously, only client nodes could choose the TEE in which a component would run. Now, node operators can specify the TEE for each component, provided the component supports the chosen TEE. If no TEE is specified, it is automatically selected, with TDX and SGX taking precedence over ELF.

How to configure nonSGX client:

runtime:
  paths: # Can be replaced with bundle repository url.
    - {{ runtime_orc_path }} 
  runtimes:
  - id: {{ runtime_id }}
    components:
    - id: ronl
      tee: none # Do not run in SGX or TDX!

How to configure SGX client:

runtime:
  paths: # Can be replaced with bundle repository url, if you also specify runtime ids.
    - {{ runtime_orc_path }}
  sgx_loader: /node/bin/oasis-core-runtime-loader

How to mock SGX:

runtime:
  paths: # Can be replaced with bundle repository url, if you also specify runtime ids.
    - {{ runtime_orc_path }}
  debug_mock_tee: true

Copy link

netlify bot commented Dec 17, 2024

Deploy Preview for oasisprotocol-oasis-core canceled.

Name Link
🔨 Latest commit 4dccda0
🔍 Latest deploy log https://app.netlify.com/sites/oasisprotocol-oasis-core/deploys/677e6f6a48821500081a6236

@peternose peternose force-pushed the peternose/trivial/simplify-create-provisioner branch 2 times, most recently from f241f9d to 6ab9c9e Compare December 17, 2024 03:01
Copy link

codecov bot commented Dec 17, 2024

Codecov Report

Attention: Patch coverage is 46.47887% with 38 lines in your changes missing coverage. Please review.

Project coverage is 65.31%. Comparing base (4aa7157) to head (4dccda0).

Files with missing lines Patch % Lines
go/runtime/config/config.go 11.11% 22 Missing and 2 partials ⚠️
go/runtime/registry/config.go 76.00% 3 Missing and 3 partials ⚠️
go/runtime/bundle/registry.go 72.72% 2 Missing and 1 partial ⚠️
go/runtime/registry/registry.go 33.33% 1 Missing and 1 partial ⚠️
go/runtime/host/composite/composite.go 50.00% 1 Missing ⚠️
go/runtime/host/sgx/sgx.go 0.00% 0 Missing and 1 partial ⚠️
go/runtime/host/tdx/qemu.go 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #5975      +/-   ##
==========================================
- Coverage   65.57%   65.31%   -0.26%     
==========================================
  Files         632      632              
  Lines       64840    64855      +15     
==========================================
- Hits        42517    42363     -154     
- Misses      17394    17537     +143     
- Partials     4929     4955      +26     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@ptrus
Copy link
Member

ptrus commented Dec 17, 2024

Do we run client with RuntimeEnvironmentELF and without DebugDontBlameOasis flag set?

Yes I believe so: For example, running a ParaTime client node for an SGX-enabled ParaTime like Cipher doesn't require having SGX on the ParaTime client node..

@peternose peternose marked this pull request as draft January 6, 2025 15:24
@peternose peternose force-pushed the peternose/trivial/simplify-create-provisioner branch 2 times, most recently from fe62fe7 to 40b7b6e Compare January 7, 2025 08:48
@peternose peternose force-pushed the peternose/trivial/simplify-create-provisioner branch from 40b7b6e to 8cd3f6f Compare January 8, 2025 04:00
@peternose peternose force-pushed the peternose/trivial/simplify-create-provisioner branch from 8cd3f6f to 4dccda0 Compare January 8, 2025 12:28
@peternose peternose marked this pull request as ready for review January 8, 2025 12:41
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