Skip to main content

Crate bestool_canopy

Crate bestool_canopy 

Source

Modules§

registration
Single, machine-bound, encrypted store for this host’s canopy enrollment.

Structs§

BackupCredentials
credential_process-shaped creds returned by POST /backup-credentials.
BackupCredentialsRequest
Body for POST /backup-credentials.
BackupReport
Body for POST /backup-report.
BackupTarget
The S3 repo target returned by GET /backup-target.
CanopyClient
HTTP client with auth configured for talking to a canopy server.
CapabilitiesRequest
Body for POST /backup-capabilities: the backup types this server can run.
ContainerCreds
Creds in the ECS container-credentials shape kopia’s minio-go provider polls for: note Token (not SessionToken), and Expiration as RFC3339 Z.
NewEvent
Payload for posting to POST /events on a canopy server.
Redacted
Wraps a sensitive value so its Debug output doesn’t leak the contents.

Enums§

Outcome
Outcome of a reported backup/restore run.
Purpose
Why a credential was issued / a run executed.
Severity
Severities accepted by the canopy /events API.
TargetOutcome
Result of GET /backup-target: a live target, or the benign dormant state (the device is not yet authorised for backups — 412/409).

Constants§

CERT_RENEW_AFTER
How long to wait between scheduled cert renewals.
DEFAULT_CANOPY_URL
TAILSCALE_URL
Base URL for the tailscale-internal canopy endpoint.

Functions§

client_builder
A reqwest::ClientBuilder carrying the bestool user_agent for version.
device_identity
Build a short-lived self-signed client certificate from a P-256 device key PEM and wrap it as a reqwest mTLS [Identity].
tailscale_client
Probe the canopy tailnet endpoint, returning a client routed to it if reachable.
user_agent
Browser-style user-agent string, e.g. bestool/1.2.3 (Linux 7.0.9 Arch Linux; x86_64).

Type Aliases§

ClientBuilderFactory
Factory producing the base reqwest::ClientBuilder for canopy’s clients.