Skip to content

control_plane

Structs

  • ControlPlaneClient - Authenticated Control Plane requests for one saved login.
  • ResolvedAgent - An Agent as the Control Plane resolved it.
  • StartedRun - A started run: its identity, its one Sidecar identity, and the

Enums


firma_login::control_plane::ControlPlaneClient

Section titled “firma_login::control_plane::ControlPlaneClient”

Struct

Authenticated Control Plane requests for one saved login.

Methods:

  • fn close_run(self: & mut Self, run_id: RunId, outcome: CloseOutcome) -> Result<RecordedOutcome, ControlPlaneError> - Closes run_id as outcome and returns what the Control Plane
  • fn new(store: ConnectionStore) -> Self - Uses store as the single source of access.
  • fn drop_connections(self: & mut Self) - Drops the HTTP connections and keeps the session with its access
  • fn renew_access(self: & mut Self) -> Result<(), ControlPlaneError> - Renews the access token now when it is about to expire, so that a
  • fn resolve_agent(self: & mut Self, handle: &AgentHandle) -> Result<ResolvedAgent, ControlPlaneError> - Resolves the active Agent with handle in the login’s Workspace.
  • fn start_run(self: & mut Self, handle: &AgentHandle, generation: &str) -> Result<StartedRun, ControlPlaneError> - Starts a run of the Agent handle at the configuration

firma_login::control_plane::ControlPlaneError

Section titled “firma_login::control_plane::ControlPlaneError”

Enum

Why a Control Plane request did not produce its answer.

No variant carries a token or free server-supplied text: a problem code is shown only once it parsed as a short machine name.

Variants:

  • Session(crate::SessionError) - The saved login could not provide access.
  • Unauthorized - The Control Plane refused the access token.
  • AccessDenied - The Membership may not use Agents in this Workspace.
  • RunNotClosable - A human login cannot close a machine-owned run.
  • AgentNotFound(firma_identifiers::AgentHandle) - No active Agent has the handle in this Workspace.
  • Refused{ status: reqwest::StatusCode, code: String, request_id: Option<uuid::Uuid> } - The Control Plane refused the request with a code this firma has no
  • IncompatibleServer - The Control Plane speaks another contract version or sent an
  • AuthorityTransportUnsupported - The Authority is reachable only over a transport this firma does not
  • Unavailable{ status: reqwest::StatusCode, request_id: Option<uuid::Uuid> } - The Control Plane could not answer now.
  • Transport(reqwest::Error) - The request could not be built or delivered.

Trait Implementations:

  • Display
    • fn fmt(self: &Self, __formatter: & mut ::core::fmt::Formatter) -> ::core::fmt::Result
  • Debug
    • fn fmt(self: &Self, f: & mut $crate::fmt::Formatter) -> $crate::fmt::Result
  • From
    • fn from(source: SessionError) -> Self
  • Error
    • fn source(self: &Self) -> ::core::option::Option<&dyn ::thiserror::__private21::Error>

Struct

An Agent as the Control Plane resolved it.

Fields:

  • agent_id: firma_identifiers::AgentId - The Agent’s identity.
  • handle: firma_identifiers::AgentHandle - The handle it was resolved by.
  • name: String - Display name chosen by a Member; any text, so escape it before
  • profile_id: firma_config_loader::AgentProfile - The canonical OpenFirma Agent profile the Control Plane names.
  • policy_set_id: String - The Policy Set the Agent runs under; unvalidated.
  • generation: String - Opaque, unordered; changes whenever the configuration changes.
  • workspace_id: firma_identifiers::WorkspaceId - The Workspace the request was answered for.
  • authority_grpc_uri: url::Url - Where a Sidecar reaches the Authority’s gRPC services: https to
  • capability_public_key: [u8; 32] - The Workspace’s Ed25519 capability verifying key, raw.

Trait Implementations:

  • Debug
    • fn fmt(self: &Self, f: & mut $crate::fmt::Formatter) -> $crate::fmt::Result

Struct

A started run: its identity, its one Sidecar identity, and the runtime credential that authenticates it.

Fields:

  • run_id: firma_identifiers::RunId - The run the Control Plane created.
  • sidecar_id: firma_identifiers::SidecarId - The Sidecar identity issued for this run alone.
  • credential: secrecy::SecretString - The runtime bearer, shown by the Control Plane exactly once; Debug

Trait Implementations:

  • Debug
    • fn fmt(self: &Self, f: & mut $crate::fmt::Formatter) -> $crate::fmt::Result