diff --git a/docs/API_ref.md b/docs/API_ref.md index add0a87e90..bc12817b54 100644 --- a/docs/API_ref.md +++ b/docs/API_ref.md @@ -1,78 +1,86 @@

API References

-### DataProtectionApplicationSpec +### [DataProtectionApplicationSpec](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#DataProtectionApplicationSpec) | Property | Type | Description | |----------------------|-----------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------| -| BackupLocations | [] BackupLocation | BackupLocations defines the list of desired configuration to use for BackupStorageLocations | -| SnapshotLocations | [] SnapshotLocation | SnapshotLocations defines the list of desired configuration to use for VolumeSnapshotLocations | -| UnsupportedOverrides | map [ UnsupportedImageKey ] string | UnsupportedOverrides can be used to override the deployed dependent images for development | -| PodAnnotations | map [ string ] string | Used to add annotations to pods deployed by operator | -| PodDnsPolicy | [corev1.DNSPolicy] ( https://pkg.go.dev/k8s.io/api/core/v1#DNSPolicy) | DNSPolicy defines how a pod's DNS will be configured. | -| PodDnsConfig | [corev1.PodDNSConfig] ( https://pkg.go.dev/k8s.io/api/core/v1#PodDNSConfig) | PodDNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. | -| BackupImages | *bool | BackupImages is used to specify whether you want to deploy a registry for enabling backup and restore of images | -| Configuration | *ApplicationConfig | Configuration is used to configure the data protection application's server config. | -| Features | *Features | Features defines the configuration for the DPA to enable the tech preview features | - -### BackupLocation +| backupLocations | [] [BackupLocation](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#BackupLocation) | BackupLocations defines the list of desired configuration to use for BackupStorageLocations | +| snapshotLocations | [] [SnapshotLocation](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#SnapshotLocation) | SnapshotLocations defines the list of desired configuration to use for VolumeSnapshotLocations | +| unsupportedOverrides | map [ [UnsupportedImageKey](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#UnsupportedImageKey) ] [string](https://pkg.go.dev/builtin#string) | UnsupportedOverrides can be used to override the deployed dependent images for development. Options are `veleroImageFqin`, `awsPluginImageFqin`, `openshiftPluginImageFqin`, `azurePluginImageFqin`, `gcpPluginImageFqin`, `csiPluginImageFqin`, `dataMoverImageFqin`, `resticRestoreImageFqin`, `kubevirtPluginImageFqin`, and `operator-type` | +| podAnnotations | map [ [string](https://pkg.go.dev/builtin#string) ] [string](https://pkg.go.dev/builtin#string) | Used to add annotations to pods deployed by operator | +| podDnsPolicy | [corev1.DNSPolicy] ( https://pkg.go.dev/k8s.io/api/core/v1#DNSPolicy) | DNSPolicy defines how a pod's DNS will be configured. | +| podDnsConfig | [corev1.PodDNSConfig] ( https://pkg.go.dev/k8s.io/api/core/v1#PodDNSConfig) | PodDNSConfig defines the DNS parameters of a pod in addition to those generated from DNSPolicy. | +| backupImages | *[bool](https://pkg.go.dev/builtin#bool) | BackupImages is used to specify whether you want to deploy a registry for enabling backup and restore of images | +| configuration | *[ApplicationConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#ApplicationConfig) | Configuration is used to configure the data protection application's server config. | +| features | *[Features](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#Features) | Features defines the configuration for the DPA to enable the tech preview features | + +### [BackupLocation](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#BackupLocation) | Property | Type | Description | |----------|---------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------| -| name | metav1. ObjectMeta | | -| velero | [*velero.BackupStorageLocationSpec](https://velero.io/docs/v1.6/api-types/backupstoragelocation/) | Location to store volume snapshots. For further details, see [here] ( config/bsl_and_vsl.md). | +| name | [metav1.ObjectMeta](https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#ObjectMeta) | | +| velero | [*velero.BackupStorageLocationSpec](https://velero.io/docs/v1.9/api-types/backupstoragelocation/) | Location to store volume snapshots. For further details, see [here] ( config/bsl_and_vsl.md). | -### VolumeSnapshot +### [SnapshotLocation](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#SnapshotLocation) | Property | Type | Description | |----------|-----------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------| -| name | metav1. ObjectMeta | | -| velero | [*velero.VolumeSnapshotLocationSpec](https://velero.io/docs/v1.6/api-types/volumesnapshotlocation/) | Location to store volume snapshots. For further details, see [here] ( config/bsl_and_vsl.md). | +| name | [metav1.ObjectMeta](https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#ObjectMeta) | | +| velero | [*velero.VolumeSnapshotLocationSpec](https://velero.io/docs/v1.9/api-types/volumesnapshotlocation/) | Location to store volume snapshots. For further details, see [here] ( config/bsl_and_vsl.md). | -### ApplicationConfig (DataProtectionApplicationSpec.Configuration) +### [ApplicationConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#ApplicationConfig) | Property | Type | Description | |----------|---------------|------------------------------------------------------| -| velero | *VeleroConfig | This defines the configuration for the Velero server | -| restic | *resticConfig | This defines the configuration for the Restic server | +| velero | *[VeleroConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#VeleroConfig) | This defines the configuration for the Velero server | +| restic | *[ResticConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#ResticConfig) | This defines the configuration for the Restic server | -### VeleroConfig +### [VeleroConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#VeleroConfig) | Property | Type | Description | |---------------------------------|-------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| featureFlags | [] string | FeatureFlags defines the list of features to enable for Velero instance | -| defaultPlugins | [] string | Five types of default Velero plugins can be installed: `AWS` , `GCP` , `Azure` and `OpenShift` , and `CSI` . See [here] ( config/plugins.md) for further information. | -| customPlugins | map [string]interface{} | Used for installation of custom Velero plugins. See [here] ( config/plugins.md) for further information. | -| restoreResourcesVersionPriority | string | RestoreResourceVersionPriority represents a configmap that will be created if defined for use in conjunction with `EnableAPIGroupVersions` feature flag. Defining this field automatically add EnableAPIGroupVersions to the velero server feature flag | -| noDefaultBackupLocation | bool | If you need to install Velero without a default backup storage location NoDefaultBackupLocation flag is required for confirmation | -| podConfig | *PodConfig | Velero Pod specific configuration | -| logLevel | string | Velero server’s log level (default info, use debug for the most logging). Valid options are error, warn, warning, info, debug, trace | +| featureFlags | [] [string](https://pkg.go.dev/builtin#string) | FeatureFlags defines the list of features to enable for Velero instance | +| defaultPlugins | [] [string](https://pkg.go.dev/builtin#string) | Five types of default Velero plugins can be installed: `AWS` , `GCP` , `Azure` and `OpenShift` , and `CSI` . See [here] ( config/plugins.md) for further information. | +| customPlugins | [][CustomPlugin](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#CustomPlugin) | Used for installation of custom Velero plugins. See [here] ( config/plugins.md) for further information. | +| restoreResourcesVersionPriority | [string](https://pkg.go.dev/builtin#string) | RestoreResourceVersionPriority represents a configmap that will be created if defined for use in conjunction with `EnableAPIGroupVersions` feature flag. Defining this field automatically add EnableAPIGroupVersions to the velero server feature flag | +| noDefaultBackupLocation | [bool](https://pkg.go.dev/builtin#bool) | If you need to install Velero without a default backup storage location NoDefaultBackupLocation flag is required for confirmation | +| podConfig | *[PodConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#PodConfig) | Velero Pod specific configuration | +| logLevel | [string](https://pkg.go.dev/builtin#string) | Velero server’s log level (default info, use debug for the most logging). Valid options are trace, debug, info, warning, error, fatal, or panic | -### ResticConfig +### [CustomPlugin](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#CustomPlugin) | Property | Type | Description | |--------------------|------------|-----------------------------------------------------------------------------| -| enable | *bool | Enables backup/restore using Restic. If set to false, snapshots are needed. | -| supplementalGroups | []int64 | SupplementalGroups defines the linux groups to be applied to the Restic Pod | -| timeout | string | Timeout defines the Restic timeout, default value is 1h | -| PodConfig | *PodConfig | Restic Pod specific configuration | +| name | [string](https://pkg.go.dev/builtin#string) | Name of custom plugin | +| image | [string](https://pkg.go.dev/builtin#string) | Image of custom plugin | -### PodConfig +### [ResticConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#ResticConfig) + +| Property | Type | Description | +|--------------------|------------|-----------------------------------------------------------------------------| +| enable | *[bool](https://pkg.go.dev/builtin#bool) | Enables backup/restore using Restic. If set to false, snapshots are needed. | +| supplementalGroups | [][int64](https://pkg.go.dev/builtin#int64) | SupplementalGroups defines the linux groups to be applied to the Restic Pod | +| timeout | [string](https://pkg.go.dev/builtin#string) | Timeout defines the Restic timeout, default value is 1h | +| PodConfig | *[PodConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#PodConfig) | Restic Pod specific configuration | + +### [PodConfig](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#PodConfig) | Property | Type | Description | |---------------------|-------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------| -| nodeSelector | map [ string ] string | NodeSelector defines the nodeSelector to be supplied to Velero/Restic podSpec | -| tolerations | [[]corev1. Toleration](https://pkg.go.dev/k8s.io/api/core/v1#Toleration) | Tolerations defines the list of tolerations to be applied to Velero Deployment/Restic daemonset | +| labels | map [ [string](https://pkg.go.dev/builtin#string) ] [string](https://pkg.go.dev/builtin#string) | Labels to add to pods | +| nodeSelector | map [ [string](https://pkg.go.dev/builtin#string) ] [string](https://pkg.go.dev/builtin#string) | NodeSelector defines the nodeSelector to be supplied to Velero/Restic podSpec | +| tolerations | [][corev1.Toleration](https://pkg.go.dev/k8s.io/api/core/v1#Toleration) | Tolerations defines the list of tolerations to be applied to Velero Deployment/Restic daemonset | | resourceAllocations | [corev1.ResourceRequirements](https://pkg.go.dev/k8s.io/api/core/v1#ResourceRequirements) | Set specific resource `limits` and `requests` for the Velero/Restic pods. For more information, go [here] ( config/resource_req_limits.md). | -### Features +### [Features](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#Features) | Property | Type | Description | |-----------|-----------|-------------------------------------------------------------------------------------------------------------------------------------------| -| DataMover | DataMover | DataMover defines the various config for DPA data mover | +| dataMover | [DataMover](https://pkg.go.dev/github.com/openshift/oadp-operator@v0.0.0-20220727202820-c5f87df8fafd/api/v1alpha1#DataMover) | DataMover defines the various config for DPA data mover | ### DataMover | Property | Type | Description | |------------|------|-------------------------------------------------------------------------------------------------------------------------------| -| Enable | bool | Enable is used to specify whether you want to deploy the volume snapshot mover controller and a modified csi datamover plugin | -| Credential | *corev1.SecretKeySelector | User supplied Restic Secret name for DataMover | | +| enable | [bool](https://pkg.go.dev/builtin#bool) | Enable is used to specify whether you want to deploy the volume snapshot mover controller and a modified csi datamover plugin | +| credentialName | [string](https://pkg.go.dev/builtin#string) | User supplied Restic Secret name for DataMover | | See also [![Go Reference](https://pkg.go.dev/badge/github.com/openshift/oadp-operator.svg)](https://pkg.go.dev/github.com/openshift/oadp-operator) for a deeper dive.