continueops_bco_component (Resource)
A component of a business continuity objective (an application, service or dataset) with its recovery targets: RTO, RPO, MTPD and impact tolerance.
Example Usage
resource "continueops_bco_component" "payments_api" {
bco_id = continueops_bco.payments.id
component_name = "payments-api"
criticality = "critical"
rto_hours = 4
rpo_hours = 0.25
}Schema
Required
component_name(String) Component name, 1-200 characters, no surrounding whitespace.
Optional
bco_id(String) Thecontinueops_bcothis component belongs to (lower-case UUID). Leave unset for a standalone component. Can be changed in place.cadence(String) How often the component is tested (free text, for examplequarterly), up to 64 characters.compliance_frameworks(Set of String) Compliance frameworks this component evidences. At most 50, each up to 64 characters.component_type(String) Kind of component (free text, for exampleapplication,database,service), 1-64 characters. Defaultapplication.criticality(String) Business criticality:low,medium,highorcritical.dependencies(Set of String) Names of what this component depends on. At most 200, each up to 200 characters.impact_tolerance_hours(Number) Impact tolerance (the FCA/PRA notion), in hours (0-100000, fractions allowed).mtpd_hours(Number) Maximum tolerable period of disruption, in hours (0-100000, fractions allowed).notes(String) Free-form notes, up to 8000 characters.objective_kind(String) How the component is measured:rto_rpo,checklist_completion,checklist_passorcustom_percent. Defaultrto_rpo.recovery_priority(Number) Recovery order relative to other components, 0-1000 (lower recovers first).rpo_hours(Number) Recovery point objective, in hours (0-100000, fractions allowed).rto_hours(Number) Recovery time objective, in hours (0-100000, fractions allowed).runbook_identifiers(Set of String) Identifiers of the runbook templates that recover this component. At most 200, each up to 200 characters.target_comparator(String) Comparator applied totarget_value(for example>=), up to 8 characters.target_label(String) Display label for the target, up to 200 characters.target_metric(String) Metric a custom objective is measured by, up to 200 characters.target_value(Number) Target value fortarget_metric.timeouts(Attributes) (see below for nested schema)
Read-Only
created_at(String) When the component was created (RFC 3339, UTC).id(String) Component id (UUID).updated_at(String) When the component last changed (RFC 3339, UTC).
Nested Schema for timeouts
Optional:
create(String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).delete(String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.read(String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.update(String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
Import
Import is supported using the following syntax:
In Terraform v1.5.0 and later, the import block can be used with the id attribute, for example:
import {
to = continueops_bco_component.example
id = "00000000-0000-4000-8000-000000000000"
}The terraform import command can be used, for example:
# Import by id (UUID), shown in the ContinueOps UI and returned by the API.
terraform import continueops_bco_component.example 00000000-0000-4000-8000-000000000000