Newer
Older
title: "Replication / Recovery"
description: >-
This API allows replication and recovery of ZKAPAuthorizer internal state.
Replication is in a single direction from this single Tahoe-LAFS node to
the Tahoe-LAFS grid.
paths:
/storage-plugins/privatestorageio-zkapauthz-v1/recover:
post:
description: >-
This is only valid when ZKAPAuthorizer has no local state yet.
requestBody:
content:
application/json:
schema:
"$ref": "#/components/schemas/ReplicaConfiguration"
description: >-
Recovery from the replica has failed for some reason.
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
"409": # CONFLICT
description: >-
Recovery is not possible at this time because local state already
exists in the database. Recover into a new, empty ZKAPAuthorizer
installation only.
"404": # NOT FOUND
description: >-
Recovery from the replica has failed because the recovery data
cannot be retrieved using the given capability.
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
description: >-
Recovery from the replica has succeeded.
content:
application/json:
schema:
type: "object"
properties: {}
/storage-plugins/privatestorageio-zkapauthz-v1/replicate:
Get this node's replica configuration.
404: # NOT FOUND
description: >-
This node is not configuration for replication.
200: # OK
Information about replica configuration is available and included
in the response.
content:
application/json:
schema:
$ref: "#/components/schemas/ReplicaConfiguration"
Configure an on-grid replica.
Once a replica has been configured this node will keep that replica
up-to-date with local state changes.
The replication system is now configured.
A replica has not necessarily been created yet but ZKAPAuthorizer
will begin creating one now. The response includes the recovery
capability for that replica.
$ref: "#/components/schemas/ReplicaConfiguration"
The replication system was already configured.
The response includes the recovery capability for the replica that
is being maintained.
$ref: "#/components/schemas/ReplicaConfiguration"
components:
schemas:
Error:
type: "object"
properties:
details:
type: "string"
description: >-
A free-form text field which may give further details about
the failure.
ReplicaConfiguration:
type: "object"
properties:
recovery-capability:
type: "string"
description: >-
The Tahoe-LAFS read-only capability for the recovery data.
This is the capability which can be submitted in order to initiate
a recovery from the replica.
responses:
ErrorResponse:
description: >-
Something broken.
content:
application/json:
schema:
$ref: "#/components/schemas/Error"