Documentation
¶
Overview ¶
Package config implements global configuration options.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
// Runtime provisioner to use (mock, unconfined, sandboxed).
Provisioner RuntimeProvisioner `yaml:"provisioner"`
// Paths to runtime bundles.
Paths []string `yaml:"paths"`
// Path to the sandbox binary (bubblewrap).
SandboxBinary string `yaml:"sandbox_binary"`
// Path to SGXS runtime loader binary (for SGX runtimes).
SGXLoader string `yaml:"sgx_loader"`
// The runtime environment (sgx, elf, auto).
Environment RuntimeEnvironment `yaml:"environment"`
// History pruner configuration.
Prune PruneConfig `yaml:"prune,omitempty"`
// Runtime ID -> local config.
RuntimeConfig map[string]interface{} `yaml:"config,omitempty"`
// Address(es) of sentry node(s) to connect to of the form [PubKey@]ip:port
// (where the PubKey@ part represents base64 encoded node TLS public key).
SentryAddresses []string `yaml:"sentry_addresses,omitempty"`
// Transaction pool configuration.
TxPool tpConfig.Config `yaml:"tx_pool,omitempty"`
// Number of epochs before runtime activation epoch when to start the runtime to warm it up and
// prepare any required attestations. Zero disables pre-warming.
PreWarmEpochs uint64 `yaml:"pre_warm_epochs,omitempty"`
}
Config is the runtime registry configuration structure.
func DefaultConfig ¶
func DefaultConfig() Config
DefaultConfig returns the default configuration settings.
type PruneConfig ¶
type PruneConfig struct {
// History pruner strategy.
Strategy string `yaml:"strategy"`
// History pruning interval.
Interval time.Duration `yaml:"interval"`
// Number of last rounds to keep.
NumKept uint64 `yaml:"num_kept"`
}
PruneConfig is the history pruner configuration structure.
type RuntimeEnvironment ¶
type RuntimeEnvironment string
RuntimeEnvironment is the runtime environment.
const ( // RuntimeEnvironmentSGX specifies to run the runtime in SGX. RuntimeEnvironmentSGX RuntimeEnvironment = "sgx" // RuntimeEnvironmentELF specifies to run the runtime in the OS address space. // // Use of this runtime environment is only allowed if DebugDontBlameOasis flag is set. RuntimeEnvironmentELF RuntimeEnvironment = "elf" // RuntimeEnvironmentAuto specifies to run the runtime in the most appropriate location. RuntimeEnvironmentAuto RuntimeEnvironment = "auto" )
type RuntimeProvisioner ¶
type RuntimeProvisioner string
RuntimeProvisioner is the runtime provisioner.
const ( // RuntimeProvisionerMock is the name of the mock runtime provisioner. // // Use of this provisioner is only allowed if DebugDontBlameOasis flag is set. RuntimeProvisionerMock RuntimeProvisioner = "mock" // RuntimeProvisionerUnconfined is the name of the unconfined runtime // provisioner that executes runtimes as regular processes without any // sandboxing. // // Use of this provisioner is only allowed if DebugDontBlameOasis flag is set. RuntimeProvisionerUnconfined RuntimeProvisioner = "unconfined" // RuntimeProvisionerSandboxed is the name of the sandboxed runtime // provisioner that executes runtimes as regular processes in a Linux // namespaces/cgroups/SECCOMP sandbox. RuntimeProvisionerSandboxed RuntimeProvisioner = "sandboxed" )
func (*RuntimeProvisioner) UnmarshalText ¶
func (m *RuntimeProvisioner) UnmarshalText(text []byte) error
UnmarshalText decodes a text marshaled runtime provisioner.
Click to show internal directories.
Click to hide internal directories.