diff --git a/pkg/apis/ark/v1/backup.go b/pkg/apis/ark/v1/backup.go index 2fe867f09..1d75dd30c 100644 --- a/pkg/apis/ark/v1/backup.go +++ b/pkg/apis/ark/v1/backup.go @@ -184,7 +184,8 @@ type VolumeBackupInfo struct { Iops *int64 `json:"iops,omitempty"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Backup is an Ark resource that respresents the capture of Kubernetes // cluster state at a point in time (API objects and associated volume state). @@ -196,6 +197,8 @@ type Backup struct { Status BackupStatus `json:"status,omitempty"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // BackupList is a list of Backups. type BackupList struct { metav1.TypeMeta `json:",inline"` diff --git a/pkg/apis/ark/v1/config.go b/pkg/apis/ark/v1/config.go index 28d65b864..fa0cec374 100644 --- a/pkg/apis/ark/v1/config.go +++ b/pkg/apis/ark/v1/config.go @@ -18,6 +18,8 @@ package v1 import metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ConfigList is a list of Configs. type ConfigList struct { metav1.TypeMeta `json:",inline"` @@ -26,7 +28,8 @@ type ConfigList struct { Items []Config `json:"items"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Config is an Ark resource that captures configuration information to be // used for running the Ark server. diff --git a/pkg/apis/ark/v1/doc.go b/pkg/apis/ark/v1/doc.go index 8614e0a97..843ad7bb0 100644 --- a/pkg/apis/ark/v1/doc.go +++ b/pkg/apis/ark/v1/doc.go @@ -14,6 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package + // Package v1 is the v1 version of the API. // +groupName=ark.heptio.com package v1 diff --git a/pkg/apis/ark/v1/download_request.go b/pkg/apis/ark/v1/download_request.go index eade2e8cc..7728d65d6 100644 --- a/pkg/apis/ark/v1/download_request.go +++ b/pkg/apis/ark/v1/download_request.go @@ -64,7 +64,8 @@ type DownloadRequestStatus struct { Expiration metav1.Time `json:"expiration"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // DownloadRequest is a request to download an artifact from backup object storage, such as a backup // log file. @@ -76,6 +77,8 @@ type DownloadRequest struct { Status DownloadRequestStatus `json:"status,omitempty"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // DownloadRequestList is a list of DownloadRequests. type DownloadRequestList struct { metav1.TypeMeta `json:",inline"` diff --git a/pkg/apis/ark/v1/restore.go b/pkg/apis/ark/v1/restore.go index 196532cc1..7f3e75f9f 100644 --- a/pkg/apis/ark/v1/restore.go +++ b/pkg/apis/ark/v1/restore.go @@ -118,7 +118,8 @@ type RestoreResult struct { Namespaces map[string][]string `json:"namespaces"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Restore is an Ark resource that represents the application of // resources from an Ark backup to a target Kubernetes cluster. @@ -130,6 +131,8 @@ type Restore struct { Status RestoreStatus `json:"status,omitempty"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // RestoreList is a list of Restores. type RestoreList struct { metav1.TypeMeta `json:",inline"` diff --git a/pkg/apis/ark/v1/schedule.go b/pkg/apis/ark/v1/schedule.go index 0d9071fc4..92b71f846 100644 --- a/pkg/apis/ark/v1/schedule.go +++ b/pkg/apis/ark/v1/schedule.go @@ -61,7 +61,8 @@ type ScheduleStatus struct { ValidationErrors []string `json:"validationErrors"` } -// +genclient=true +// +genclient +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Schedule is an Ark resource that represents a pre-scheduled or // periodic Backup that should be run. @@ -73,6 +74,8 @@ type Schedule struct { Status ScheduleStatus `json:"status,omitempty"` } +// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object + // ScheduleList is a list of Schedules. type ScheduleList struct { metav1.TypeMeta `json:",inline"`