generated from crossplane/upjet-provider-template
-
Notifications
You must be signed in to change notification settings - Fork 1
/
zz_integrationpipeline_types.go
executable file
·104 lines (84 loc) · 4.48 KB
/
zz_integrationpipeline_types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
// SPDX-FileCopyrightText: 2023 The Crossplane Authors <https://crossplane.io>
//
// SPDX-License-Identifier: Apache-2.0
/*
Copyright 2022 Upbound Inc.
*/
// Code generated by upjet. DO NOT EDIT.
package v1alpha1
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
v1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
)
type IntegrationPipelineInitParameters struct {
// (Boolean) Boolean value to enable your pipeline.
// Boolean value to enable your pipeline.
IsEnabled *bool `json:"isEnabled,omitempty" tf:"is_enabled,omitempty"`
}
type IntegrationPipelineObservation struct {
// (String) The ID of this resource.
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// (Boolean) Boolean value to enable your pipeline.
// Boolean value to enable your pipeline.
IsEnabled *bool `json:"isEnabled,omitempty" tf:"is_enabled,omitempty"`
}
type IntegrationPipelineParameters struct {
// (Boolean) Boolean value to enable your pipeline.
// Boolean value to enable your pipeline.
// +kubebuilder:validation:Optional
IsEnabled *bool `json:"isEnabled,omitempty" tf:"is_enabled,omitempty"`
}
// IntegrationPipelineSpec defines the desired state of IntegrationPipeline
type IntegrationPipelineSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider IntegrationPipelineParameters `json:"forProvider"`
// THIS IS A BETA FIELD. It will be honored
// unless the Management Policies feature flag is disabled.
// InitProvider holds the same fields as ForProvider, with the exception
// of Identifier and other resource reference fields. The fields that are
// in InitProvider are merged into ForProvider when the resource is created.
// The same fields are also added to the terraform ignore_changes hook, to
// avoid updating them after creation. This is useful for fields that are
// required on creation, but we do not desire to update them after creation,
// for example because of an external controller is managing them, like an
// autoscaler.
InitProvider IntegrationPipelineInitParameters `json:"initProvider,omitempty"`
}
// IntegrationPipelineStatus defines the observed state of IntegrationPipeline.
type IntegrationPipelineStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider IntegrationPipelineObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// +kubebuilder:subresource:status
// +kubebuilder:storageversion
// IntegrationPipeline is the Schema for the IntegrationPipelines API. Provides a Datadog Logs Pipeline API resource to manage the integrations. Integration pipelines are the pipelines that are automatically installed for your organization when sending the logs with specific sources. You don't need to maintain or update these types of pipelines. Keeping them as resources, however, allows you to manage the order of your pipelines by referencing them in your datadog_logs_pipeline_order resource. If you don't need the pipeline_order feature, this resource declaration can be omitted.
// +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status"
// +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status"
// +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name"
// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"
// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,datadog}
type IntegrationPipeline struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec IntegrationPipelineSpec `json:"spec"`
Status IntegrationPipelineStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// IntegrationPipelineList contains a list of IntegrationPipelines
type IntegrationPipelineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []IntegrationPipeline `json:"items"`
}
// Repository type metadata.
var (
IntegrationPipeline_Kind = "IntegrationPipeline"
IntegrationPipeline_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: IntegrationPipeline_Kind}.String()
IntegrationPipeline_KindAPIVersion = IntegrationPipeline_Kind + "." + CRDGroupVersion.String()
IntegrationPipeline_GroupVersionKind = CRDGroupVersion.WithKind(IntegrationPipeline_Kind)
)
func init() {
SchemeBuilder.Register(&IntegrationPipeline{}, &IntegrationPipelineList{})
}