Enum holochain_client::AdminRequest
source · [−]pub enum AdminRequest {
Show 25 variants
AddAdminInterfaces(Vec<AdminInterfaceConfig, Global>),
RegisterDna(Box<RegisterDnaPayload, Global>),
CreateCloneCell(Box<CreateCloneCellPayload, Global>),
InstallApp(Box<InstallAppPayload, Global>),
InstallAppBundle(Box<InstallAppBundlePayload, Global>),
UninstallApp {
installed_app_id: String,
},
ListDnas,
GenerateAgentPubKey,
ListCellIds,
ListEnabledApps,
ListActiveApps,
ListApps {
status_filter: Option<AppStatusFilter>,
},
EnableApp {
installed_app_id: String,
},
ActivateApp {
installed_app_id: String,
},
DisableApp {
installed_app_id: String,
},
DeactivateApp {
installed_app_id: String,
},
StartApp {
installed_app_id: String,
},
AttachAppInterface {
port: Option<u16>,
},
ListAppInterfaces,
DumpState {
cell_id: Box<CellId, Global>,
},
DumpFullState {
cell_id: Box<CellId, Global>,
dht_ops_cursor: Option<u64>,
},
DumpNetworkMetrics {
dna_hash: Option<HoloHash<Dna>>,
},
AddAgentInfo {
agent_infos: Vec<AgentInfoSigned, Global>,
},
RequestAgentInfo {
cell_id: Option<CellId>,
},
AddRecords {
cell_id: CellId,
truncate: bool,
validate: bool,
records: Vec<Record, Global>,
},
}
Expand description
Represents the available conductor functions to call over an admin interface.
Enum variants follow a general convention of verb_noun
as opposed to
the noun_verb
of responses.
Errors
Returns an AdminResponse::Error
with a reason why the request failed.
Variants
AddAdminInterfaces(Vec<AdminInterfaceConfig, Global>)
Set up and register one or more new admin interfaces as specified by a list of configurations.
Returns
RegisterDna(Box<RegisterDnaPayload, Global>)
Register a DNA for later app installation.
Stores the given DNA into the Holochain DNA database and returns the hash of it.
Returns
CreateCloneCell(Box<CreateCloneCellPayload, Global>)
Clone a DNA (in the biological sense), thus creating a new Cell
.
Using the provided, already-registered DNA, create a new DNA with a unique ID and the specified properties, create a new cell from this cloned DNA, and add the cell to the specified app.
Returns
InstallApp(Box<InstallAppPayload, Global>)
Install an app from a list of DNA paths.
Triggers genesis to be run on all cells and to be stored.
An app is intended for use by
one and only one agent and for that reason it takes an AgentPubKey
and
installs all the DNAs with that AgentPubKey
forming new Cells.
See InstallAppPayload
for full details on the configuration.
Note that the new app will not be enabled automatically after installation
and can be enabled by calling EnableApp
.
Returns
InstallAppBundle(Box<InstallAppBundlePayload, Global>)
Install an app using an AppBundle
.
Triggers genesis to be run on all Cells and to be stored.
An app is intended for use by
one and only one Agent and for that reason it takes an AgentPubKey
and
installs all the DNAs with that AgentPubKey
, forming new cells.
See InstallAppBundlePayload
for full details on the configuration.
Note that the new app will not be enabled automatically after installation
and can be enabled by calling EnableApp
.
Returns
UninstallApp
Fields
installed_app_id: String
The app ID to uninstall
Uninstalls the app specified by argument installed_app_id
from the conductor.
The app will be removed from the list of installed apps, and any cells which were referenced only by this app will be disabled and removed, clearing up any persisted data. Cells which are still referenced by other installed apps will not be removed.
Returns
ListDnas
GenerateAgentPubKey
ListCellIds
ListEnabledApps
ListActiveApps
alias for ListEnabledApps
ListApps
Fields
status_filter: Option<AppStatusFilter>
An optional status to filter the list of apps by
List the apps and their information that are installed in the conductor.
If status_filter
is Some(_)
, it will return only the apps with the specified status.
Returns
EnableApp
Fields
installed_app_id: String
The app ID to enable
Changes the specified app from a disabled to an enabled state in the conductor.
It is likely to want to call this after calling AdminRequest::InstallApp
, since a freshly
installed app is not enabled automatically. When an app is enabled,
zomes can be called and it will be loaded on a reboot of the conductor.
Returns
ActivateApp
Fields
installed_app_id: String
alias for EnableApp
alias for EnableApp
DisableApp
Fields
installed_app_id: String
The app ID to disable
Changes the specified app from an enabled to a disabled state in the conductor.
When an app is disabled, zome calls can no longer be made, and the app will not be loaded on a reboot of the conductor.
Returns
DeactivateApp
Fields
installed_app_id: String
alias for DisableApp
alias for DisableApp
StartApp
Fields
installed_app_id: String
The app ID to (re)start
AttachAppInterface
Open up a new websocket for processing AppRequest
s.
Any active app will be callable via the attached app interface.
Returns
AdminResponse::AppInterfaceAttached
Arguments
Optionally a port
parameter can be passed to this request. If it is None
,
a free port is chosen by the conductor.
The response will contain the port chosen by the conductor if None
was passed.
ListAppInterfaces
List all the app interfaces currently attached with AttachAppInterface
.
Returns
AdminResponse::AppInterfacesListed
, a list of websocket ports that can
process AppRequest
s.
DumpState
Dump the state of the cell specified by argument cell_id
,
including its chain, as a string containing JSON.
Returns
DumpFullState
Fields
Dump the full state of the Cell specified by argument cell_id
,
including its chain and DHT shard, as a string containing JSON.
Warning: this API call is subject to change, and will not be available to hApps. This is meant to be used by introspection tooling.
Note that the response to this call can be very big, as it’s requesting for the full database of the cell.
Also note that while DHT ops about private entries will be returned (like StoreRecord
),
the entry in itself will be missing, as it’s not actually stored publicly in the DHT shard.
Returns
DumpNetworkMetrics
Fields
dna_hash: Option<HoloHash<Dna>>
If set, limits the metrics dumped to a single DNA hash space.
AddAgentInfo
Add a list of agents to this conductor’s peer store.
This is a way of shortcutting peer discovery and is useful for testing.
It is also helpful if you know other agents on the network and they can send you their agent info.
Returns
RequestAgentInfo
Fields
cell_id: Option<CellId>
Optionally choose the agent info of a specific cell.
Request the [AgentInfoSigned
] stored in this conductor’s
peer store.
You can:
- Get all agent info by leaving
cell_id
toNone
. - Get a specific agent info by setting the
cell_id
.
This is how you can send your agent info to another agent. It is also useful for testing across networks.
Returns
AddRecords
Fields
truncate: bool
If this is true then all records in the source chain will be removed before the new records are inserted. Warning: this cannot be undone. Use with care!
If this is false
, then the records will be appended to the end
of the source chain.
validate: bool
If this is true
, then the records will be validated before insertion.
This is much slower but is useful for verifying the chain is valid.
If this is false
, then records will be inserted as is.
This could lead to an invalid chain.
Insert [Record
]s into the source chain of the [CellId
].
All records must be authored and signed by the same agent.
The DnaFile
(but not necessarily the cell) must already be installed
on this conductor.
Care is needed when using this command as it can result in an invalid chain. Additionally, if conflicting source chain records are inserted on different nodes, then the chain will be forked.
If an invalid or forked chain is inserted and then pushed to the DHT, it can’t be undone.
Note that the cell does not need to exist to run this command. It is possible to insert records into a source chain before the cell is created. This can be used to restore from backup.
If the cell is installed, it is best to call AdminRequest::DisableApp
before running this command, as otherwise the chain head may move.
If truncate
is true, the chain head is not checked and any new
records will be lost.
Returns
Trait Implementations
sourceimpl Debug for AdminRequest
impl Debug for AdminRequest
sourceimpl<'de> Deserialize<'de> for AdminRequest
impl<'de> Deserialize<'de> for AdminRequest
sourcefn deserialize<__D>(
__deserializer: __D
) -> Result<AdminRequest, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<AdminRequest, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Serialize for AdminRequest
impl Serialize for AdminRequest
sourcefn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
sourceimpl TryFrom<&AdminRequest> for SerializedBytes
impl TryFrom<&AdminRequest> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcefn try_from(t: &AdminRequest) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(t: &AdminRequest) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
sourceimpl TryFrom<AdminRequest> for SerializedBytes
impl TryFrom<AdminRequest> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcefn try_from(t: AdminRequest) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(t: AdminRequest) -> Result<SerializedBytes, SerializedBytesError>
Performs the conversion.
sourceimpl TryFrom<SerializedBytes> for AdminRequest
impl TryFrom<SerializedBytes> for AdminRequest
type Error = SerializedBytesError
type Error = SerializedBytesError
The type returned in the event of a conversion error.
sourcefn try_from(sb: SerializedBytes) -> Result<AdminRequest, SerializedBytesError>
fn try_from(sb: SerializedBytes) -> Result<AdminRequest, SerializedBytesError>
Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for AdminRequest
impl Send for AdminRequest
impl Sync for AdminRequest
impl Unpin for AdminRequest
impl UnwindSafe for AdminRequest
Blanket Implementations
impl<T> Any for T where
T: Any + ?Sized,
impl<T> Any for T where
T: Any + ?Sized,
fn type_id_compat(&self) -> TypeId
fn type_id_compat(&self) -> TypeId
TODO: once 1.33.0 is the minimum supported compiler version, remove Any::type_id_compat and use StdAny::type_id instead. https://github.com/rust-lang/rust/issues/27745 Read more
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
impl<T> FutureExt for T
impl<T> FutureExt for T
fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more