ArangoBackupPolicy Custom Resource

The ArangoBackupPolicy represents schedule definition for creating ArangoBackup Custom Resources by operator.This deployment specification is a CustomResource followinga CustomResourceDefinition created by the operator.

Examples:

Create schedule for all deployments

  1. apiVersion: "backup.arangodb.com/v1alpha"
  2. kind: "ArangoBackupPolicy"
  3. metadata:
  4. name: "example-arangodb-backup-policy"
  5. spec:
  6. schedule: "*/15 * * * *"

Action:

Create an ArangoBackup Custom Resource for each ArangoBackup every 15 minutes

Create schedule for selected deployments

  1. apiVersion: "backup.arangodb.com/v1alpha"
  2. kind: "ArangoBackupPolicy"
  3. metadata:
  4. name: "example-arangodb-backup-policy"
  5. spec:
  6. schedule: "*/15 * * * *"
  7. selector:
  8. matchLabels:
  9. labelName: "labelValue"

Action:

Create an ArangoBackup Custom Resource for selected ArangoBackup every 15 minutes

Create schedule for all deployments and upload

  1. apiVersion: "backup.arangodb.com/v1alpha"
  2. kind: "ArangoBackupPolicy"
  3. metadata:
  4. name: "example-arangodb-backup-policy"
  5. spec:
  6. schedule: "*/15 * * * * "
  7. template:
  8. upload:
  9. repositoryURL: "s3:/..."
  10. credentialsSecretName: "secret-name"

Create an ArangoBackup Custom Resource for each ArangoBackup every 15 minutes and upload to repositoryURL

ArangoBackup Custom Resource Spec:

  1. apiVersion: "backup.arangodb.com/v1alpha"
  2. kind: "ArangoBackupPolicy"
  3. metadata:
  4. name: "example-arangodb-backup-policy"
  5. spec:
  6. schedule: "*/15 * * * * "
  7. selector:
  8. matchLabels:
  9. labelName: "labelValue"
  10. matchExpressions: []
  11. template:
  12. options:
  13. timeout: 3
  14. force: true
  15. upload:
  16. repositoryURL: "s3:/..."
  17. credentialsSecretName: "secret-name"
  18. status:
  19. scheduled: "time"
  20. message: "message"

spec: Object

Spec of the ArangoBackupPolicy Custom Resource

Required: true

Default: {}

spec.schedule: String

Schedule definition. Parser from https://godoc.org/github.com/robfig/cron

Required: true

Default: “”

spec.selector: Object

Selector definition for selecting matching ArangoBackup Custom Resources. Parser from https://godoc.org/k8s.io/apimachinery/pkg/apis/meta/v1#LabelSelector

Required: false

Default: {}

spec.template: ArangoBackupTemplate

Template for the ArangoBackup Custom Resource

Required: false

Default: {}

spec.template.options: ArangoBackup - spec.options

ArangoBackup options

Required: false

Default: {}

spec.template.upload: ArangoBackup - spec.upload

ArangoBackup upload configuration

Required: false

Default: {}

status: Object

Status of the ArangoBackupPolicy Custom Resource managed by operator

Required: true

Default: {}

status.scheduled: TimeStamp

Next scheduled time in UTC

Required: true

Default: “”

status.message: String

Message from the operator in case of failure - schedule not valid, ArangoBackupPolicy not valid

Required: false

Default: “”