diff --git a/apis/automation/v1beta1/zz_generated_terraformed.go b/apis/automation/v1beta1/zz_generated_terraformed.go index f293e38d9..e5deab471 100755 --- a/apis/automation/v1beta1/zz_generated_terraformed.go +++ b/apis/automation/v1beta1/zz_generated_terraformed.go @@ -77,6 +77,7 @@ func (tr *Account) LateInitialize(attrs []byte) (bool, error) { return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") } opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + opts = append(opts, resource.WithNameFilter("Encryption")) li := resource.NewGenericLateInitializer(opts...) return li.LateInitialize(&tr.Spec.ForProvider, params) diff --git a/apis/operationalinsights/v1beta1/zz_generated.deepcopy.go b/apis/operationalinsights/v1beta1/zz_generated.deepcopy.go index 81f91c3af..a86dab031 100644 --- a/apis/operationalinsights/v1beta1/zz_generated.deepcopy.go +++ b/apis/operationalinsights/v1beta1/zz_generated.deepcopy.go @@ -14,6 +14,1110 @@ import ( runtime "k8s.io/apimachinery/pkg/runtime" ) +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataExportRule) DeepCopyInto(out *LogAnalyticsDataExportRule) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataExportRule. +func (in *LogAnalyticsDataExportRule) DeepCopy() *LogAnalyticsDataExportRule { + if in == nil { + return nil + } + out := new(LogAnalyticsDataExportRule) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsDataExportRule) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataExportRuleList) DeepCopyInto(out *LogAnalyticsDataExportRuleList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LogAnalyticsDataExportRule, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataExportRuleList. +func (in *LogAnalyticsDataExportRuleList) DeepCopy() *LogAnalyticsDataExportRuleList { + if in == nil { + return nil + } + out := new(LogAnalyticsDataExportRuleList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsDataExportRuleList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataExportRuleObservation) DeepCopyInto(out *LogAnalyticsDataExportRuleObservation) { + *out = *in + if in.ExportRuleID != nil { + in, out := &in.ExportRuleID, &out.ExportRuleID + *out = new(string) + **out = **in + } + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataExportRuleObservation. +func (in *LogAnalyticsDataExportRuleObservation) DeepCopy() *LogAnalyticsDataExportRuleObservation { + if in == nil { + return nil + } + out := new(LogAnalyticsDataExportRuleObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataExportRuleParameters) DeepCopyInto(out *LogAnalyticsDataExportRuleParameters) { + *out = *in + if in.DestinationResourceID != nil { + in, out := &in.DestinationResourceID, &out.DestinationResourceID + *out = new(string) + **out = **in + } + if in.DestinationResourceIDRef != nil { + in, out := &in.DestinationResourceIDRef, &out.DestinationResourceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.DestinationResourceIDSelector != nil { + in, out := &in.DestinationResourceIDSelector, &out.DestinationResourceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Enabled != nil { + in, out := &in.Enabled, &out.Enabled + *out = new(bool) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.TableNames != nil { + in, out := &in.TableNames, &out.TableNames + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.WorkspaceResourceID != nil { + in, out := &in.WorkspaceResourceID, &out.WorkspaceResourceID + *out = new(string) + **out = **in + } + if in.WorkspaceResourceIDRef != nil { + in, out := &in.WorkspaceResourceIDRef, &out.WorkspaceResourceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceResourceIDSelector != nil { + in, out := &in.WorkspaceResourceIDSelector, &out.WorkspaceResourceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataExportRuleParameters. +func (in *LogAnalyticsDataExportRuleParameters) DeepCopy() *LogAnalyticsDataExportRuleParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsDataExportRuleParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataExportRuleSpec) DeepCopyInto(out *LogAnalyticsDataExportRuleSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataExportRuleSpec. +func (in *LogAnalyticsDataExportRuleSpec) DeepCopy() *LogAnalyticsDataExportRuleSpec { + if in == nil { + return nil + } + out := new(LogAnalyticsDataExportRuleSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataExportRuleStatus) DeepCopyInto(out *LogAnalyticsDataExportRuleStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataExportRuleStatus. +func (in *LogAnalyticsDataExportRuleStatus) DeepCopy() *LogAnalyticsDataExportRuleStatus { + if in == nil { + return nil + } + out := new(LogAnalyticsDataExportRuleStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsEvent) DeepCopyInto(out *LogAnalyticsDataSourceWindowsEvent) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsEvent. +func (in *LogAnalyticsDataSourceWindowsEvent) DeepCopy() *LogAnalyticsDataSourceWindowsEvent { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsEvent) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsDataSourceWindowsEvent) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsEventList) DeepCopyInto(out *LogAnalyticsDataSourceWindowsEventList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LogAnalyticsDataSourceWindowsEvent, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsEventList. +func (in *LogAnalyticsDataSourceWindowsEventList) DeepCopy() *LogAnalyticsDataSourceWindowsEventList { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsEventList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsDataSourceWindowsEventList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsEventObservation) DeepCopyInto(out *LogAnalyticsDataSourceWindowsEventObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsEventObservation. +func (in *LogAnalyticsDataSourceWindowsEventObservation) DeepCopy() *LogAnalyticsDataSourceWindowsEventObservation { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsEventObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsEventParameters) DeepCopyInto(out *LogAnalyticsDataSourceWindowsEventParameters) { + *out = *in + if in.EventLogName != nil { + in, out := &in.EventLogName, &out.EventLogName + *out = new(string) + **out = **in + } + if in.EventTypes != nil { + in, out := &in.EventTypes, &out.EventTypes + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceName != nil { + in, out := &in.WorkspaceName, &out.WorkspaceName + *out = new(string) + **out = **in + } + if in.WorkspaceNameRef != nil { + in, out := &in.WorkspaceNameRef, &out.WorkspaceNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceNameSelector != nil { + in, out := &in.WorkspaceNameSelector, &out.WorkspaceNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsEventParameters. +func (in *LogAnalyticsDataSourceWindowsEventParameters) DeepCopy() *LogAnalyticsDataSourceWindowsEventParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsEventParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsEventSpec) DeepCopyInto(out *LogAnalyticsDataSourceWindowsEventSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsEventSpec. +func (in *LogAnalyticsDataSourceWindowsEventSpec) DeepCopy() *LogAnalyticsDataSourceWindowsEventSpec { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsEventSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsEventStatus) DeepCopyInto(out *LogAnalyticsDataSourceWindowsEventStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsEventStatus. +func (in *LogAnalyticsDataSourceWindowsEventStatus) DeepCopy() *LogAnalyticsDataSourceWindowsEventStatus { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsEventStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounter) DeepCopyInto(out *LogAnalyticsDataSourceWindowsPerformanceCounter) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsPerformanceCounter. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounter) DeepCopy() *LogAnalyticsDataSourceWindowsPerformanceCounter { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsPerformanceCounter) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounter) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterList) DeepCopyInto(out *LogAnalyticsDataSourceWindowsPerformanceCounterList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LogAnalyticsDataSourceWindowsPerformanceCounter, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsPerformanceCounterList. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterList) DeepCopy() *LogAnalyticsDataSourceWindowsPerformanceCounterList { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsPerformanceCounterList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterObservation) DeepCopyInto(out *LogAnalyticsDataSourceWindowsPerformanceCounterObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsPerformanceCounterObservation. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterObservation) DeepCopy() *LogAnalyticsDataSourceWindowsPerformanceCounterObservation { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsPerformanceCounterObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterParameters) DeepCopyInto(out *LogAnalyticsDataSourceWindowsPerformanceCounterParameters) { + *out = *in + if in.CounterName != nil { + in, out := &in.CounterName, &out.CounterName + *out = new(string) + **out = **in + } + if in.InstanceName != nil { + in, out := &in.InstanceName, &out.InstanceName + *out = new(string) + **out = **in + } + if in.IntervalSeconds != nil { + in, out := &in.IntervalSeconds, &out.IntervalSeconds + *out = new(float64) + **out = **in + } + if in.ObjectName != nil { + in, out := &in.ObjectName, &out.ObjectName + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceName != nil { + in, out := &in.WorkspaceName, &out.WorkspaceName + *out = new(string) + **out = **in + } + if in.WorkspaceNameRef != nil { + in, out := &in.WorkspaceNameRef, &out.WorkspaceNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceNameSelector != nil { + in, out := &in.WorkspaceNameSelector, &out.WorkspaceNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsPerformanceCounterParameters. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterParameters) DeepCopy() *LogAnalyticsDataSourceWindowsPerformanceCounterParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsPerformanceCounterParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterSpec) DeepCopyInto(out *LogAnalyticsDataSourceWindowsPerformanceCounterSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsPerformanceCounterSpec. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterSpec) DeepCopy() *LogAnalyticsDataSourceWindowsPerformanceCounterSpec { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsPerformanceCounterSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterStatus) DeepCopyInto(out *LogAnalyticsDataSourceWindowsPerformanceCounterStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsDataSourceWindowsPerformanceCounterStatus. +func (in *LogAnalyticsDataSourceWindowsPerformanceCounterStatus) DeepCopy() *LogAnalyticsDataSourceWindowsPerformanceCounterStatus { + if in == nil { + return nil + } + out := new(LogAnalyticsDataSourceWindowsPerformanceCounterStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedService) DeepCopyInto(out *LogAnalyticsLinkedService) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedService. +func (in *LogAnalyticsLinkedService) DeepCopy() *LogAnalyticsLinkedService { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedService) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsLinkedService) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedServiceList) DeepCopyInto(out *LogAnalyticsLinkedServiceList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LogAnalyticsLinkedService, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedServiceList. +func (in *LogAnalyticsLinkedServiceList) DeepCopy() *LogAnalyticsLinkedServiceList { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedServiceList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsLinkedServiceList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedServiceObservation) DeepCopyInto(out *LogAnalyticsLinkedServiceObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedServiceObservation. +func (in *LogAnalyticsLinkedServiceObservation) DeepCopy() *LogAnalyticsLinkedServiceObservation { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedServiceObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedServiceParameters) DeepCopyInto(out *LogAnalyticsLinkedServiceParameters) { + *out = *in + if in.ReadAccessID != nil { + in, out := &in.ReadAccessID, &out.ReadAccessID + *out = new(string) + **out = **in + } + if in.ReadAccessIDRef != nil { + in, out := &in.ReadAccessIDRef, &out.ReadAccessIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ReadAccessIDSelector != nil { + in, out := &in.ReadAccessIDSelector, &out.ReadAccessIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceID != nil { + in, out := &in.WorkspaceID, &out.WorkspaceID + *out = new(string) + **out = **in + } + if in.WorkspaceIDRef != nil { + in, out := &in.WorkspaceIDRef, &out.WorkspaceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceIDSelector != nil { + in, out := &in.WorkspaceIDSelector, &out.WorkspaceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.WriteAccessID != nil { + in, out := &in.WriteAccessID, &out.WriteAccessID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedServiceParameters. +func (in *LogAnalyticsLinkedServiceParameters) DeepCopy() *LogAnalyticsLinkedServiceParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedServiceParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedServiceSpec) DeepCopyInto(out *LogAnalyticsLinkedServiceSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedServiceSpec. +func (in *LogAnalyticsLinkedServiceSpec) DeepCopy() *LogAnalyticsLinkedServiceSpec { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedServiceSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedServiceStatus) DeepCopyInto(out *LogAnalyticsLinkedServiceStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedServiceStatus. +func (in *LogAnalyticsLinkedServiceStatus) DeepCopy() *LogAnalyticsLinkedServiceStatus { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedServiceStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedStorageAccount) DeepCopyInto(out *LogAnalyticsLinkedStorageAccount) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedStorageAccount. +func (in *LogAnalyticsLinkedStorageAccount) DeepCopy() *LogAnalyticsLinkedStorageAccount { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedStorageAccount) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsLinkedStorageAccount) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedStorageAccountList) DeepCopyInto(out *LogAnalyticsLinkedStorageAccountList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LogAnalyticsLinkedStorageAccount, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedStorageAccountList. +func (in *LogAnalyticsLinkedStorageAccountList) DeepCopy() *LogAnalyticsLinkedStorageAccountList { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedStorageAccountList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsLinkedStorageAccountList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedStorageAccountObservation) DeepCopyInto(out *LogAnalyticsLinkedStorageAccountObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedStorageAccountObservation. +func (in *LogAnalyticsLinkedStorageAccountObservation) DeepCopy() *LogAnalyticsLinkedStorageAccountObservation { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedStorageAccountObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedStorageAccountParameters) DeepCopyInto(out *LogAnalyticsLinkedStorageAccountParameters) { + *out = *in + if in.DataSourceType != nil { + in, out := &in.DataSourceType, &out.DataSourceType + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.StorageAccountIds != nil { + in, out := &in.StorageAccountIds, &out.StorageAccountIds + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.StorageAccountIdsRefs != nil { + in, out := &in.StorageAccountIdsRefs, &out.StorageAccountIdsRefs + *out = make([]v1.Reference, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.StorageAccountIdsSelector != nil { + in, out := &in.StorageAccountIdsSelector, &out.StorageAccountIdsSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceResourceID != nil { + in, out := &in.WorkspaceResourceID, &out.WorkspaceResourceID + *out = new(string) + **out = **in + } + if in.WorkspaceResourceIDRef != nil { + in, out := &in.WorkspaceResourceIDRef, &out.WorkspaceResourceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceResourceIDSelector != nil { + in, out := &in.WorkspaceResourceIDSelector, &out.WorkspaceResourceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedStorageAccountParameters. +func (in *LogAnalyticsLinkedStorageAccountParameters) DeepCopy() *LogAnalyticsLinkedStorageAccountParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedStorageAccountParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedStorageAccountSpec) DeepCopyInto(out *LogAnalyticsLinkedStorageAccountSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedStorageAccountSpec. +func (in *LogAnalyticsLinkedStorageAccountSpec) DeepCopy() *LogAnalyticsLinkedStorageAccountSpec { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedStorageAccountSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsLinkedStorageAccountStatus) DeepCopyInto(out *LogAnalyticsLinkedStorageAccountStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsLinkedStorageAccountStatus. +func (in *LogAnalyticsLinkedStorageAccountStatus) DeepCopy() *LogAnalyticsLinkedStorageAccountStatus { + if in == nil { + return nil + } + out := new(LogAnalyticsLinkedStorageAccountStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSavedSearch) DeepCopyInto(out *LogAnalyticsSavedSearch) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSavedSearch. +func (in *LogAnalyticsSavedSearch) DeepCopy() *LogAnalyticsSavedSearch { + if in == nil { + return nil + } + out := new(LogAnalyticsSavedSearch) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsSavedSearch) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSavedSearchList) DeepCopyInto(out *LogAnalyticsSavedSearchList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LogAnalyticsSavedSearch, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSavedSearchList. +func (in *LogAnalyticsSavedSearchList) DeepCopy() *LogAnalyticsSavedSearchList { + if in == nil { + return nil + } + out := new(LogAnalyticsSavedSearchList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsSavedSearchList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSavedSearchObservation) DeepCopyInto(out *LogAnalyticsSavedSearchObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSavedSearchObservation. +func (in *LogAnalyticsSavedSearchObservation) DeepCopy() *LogAnalyticsSavedSearchObservation { + if in == nil { + return nil + } + out := new(LogAnalyticsSavedSearchObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSavedSearchParameters) DeepCopyInto(out *LogAnalyticsSavedSearchParameters) { + *out = *in + if in.Category != nil { + in, out := &in.Category, &out.Category + *out = new(string) + **out = **in + } + if in.DisplayName != nil { + in, out := &in.DisplayName, &out.DisplayName + *out = new(string) + **out = **in + } + if in.FunctionAlias != nil { + in, out := &in.FunctionAlias, &out.FunctionAlias + *out = new(string) + **out = **in + } + if in.FunctionParameters != nil { + in, out := &in.FunctionParameters, &out.FunctionParameters + *out = make([]*string, len(*in)) + for i := range *in { + if (*in)[i] != nil { + in, out := &(*in)[i], &(*out)[i] + *out = new(string) + **out = **in + } + } + } + if in.LogAnalyticsWorkspaceID != nil { + in, out := &in.LogAnalyticsWorkspaceID, &out.LogAnalyticsWorkspaceID + *out = new(string) + **out = **in + } + if in.LogAnalyticsWorkspaceIDRef != nil { + in, out := &in.LogAnalyticsWorkspaceIDRef, &out.LogAnalyticsWorkspaceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.LogAnalyticsWorkspaceIDSelector != nil { + in, out := &in.LogAnalyticsWorkspaceIDSelector, &out.LogAnalyticsWorkspaceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Query != nil { + in, out := &in.Query, &out.Query + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSavedSearchParameters. +func (in *LogAnalyticsSavedSearchParameters) DeepCopy() *LogAnalyticsSavedSearchParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsSavedSearchParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSavedSearchSpec) DeepCopyInto(out *LogAnalyticsSavedSearchSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSavedSearchSpec. +func (in *LogAnalyticsSavedSearchSpec) DeepCopy() *LogAnalyticsSavedSearchSpec { + if in == nil { + return nil + } + out := new(LogAnalyticsSavedSearchSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSavedSearchStatus) DeepCopyInto(out *LogAnalyticsSavedSearchStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSavedSearchStatus. +func (in *LogAnalyticsSavedSearchStatus) DeepCopy() *LogAnalyticsSavedSearchStatus { + if in == nil { + return nil + } + out := new(LogAnalyticsSavedSearchStatus) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Workspace) DeepCopyInto(out *Workspace) { *out = *in diff --git a/apis/operationalinsights/v1beta1/zz_generated.managed.go b/apis/operationalinsights/v1beta1/zz_generated.managed.go index a44d2f9e3..8d61a319b 100644 --- a/apis/operationalinsights/v1beta1/zz_generated.managed.go +++ b/apis/operationalinsights/v1beta1/zz_generated.managed.go @@ -7,6 +7,402 @@ package v1beta1 import xpv1 "github.com/crossplane/crossplane-runtime/apis/common/v1" +// GetCondition of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetProviderConfigReference of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +/* +GetProviderReference of this LogAnalyticsDataExportRule. +Deprecated: Use GetProviderConfigReference. +*/ +func (mg *LogAnalyticsDataExportRule) GetProviderReference() *xpv1.Reference { + return mg.Spec.ProviderReference +} + +// GetPublishConnectionDetailsTo of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetProviderConfigReference of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +/* +SetProviderReference of this LogAnalyticsDataExportRule. +Deprecated: Use SetProviderConfigReference. +*/ +func (mg *LogAnalyticsDataExportRule) SetProviderReference(r *xpv1.Reference) { + mg.Spec.ProviderReference = r +} + +// SetPublishConnectionDetailsTo of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} + +// GetCondition of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetProviderConfigReference of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +/* +GetProviderReference of this LogAnalyticsDataSourceWindowsEvent. +Deprecated: Use GetProviderConfigReference. +*/ +func (mg *LogAnalyticsDataSourceWindowsEvent) GetProviderReference() *xpv1.Reference { + return mg.Spec.ProviderReference +} + +// GetPublishConnectionDetailsTo of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetProviderConfigReference of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +/* +SetProviderReference of this LogAnalyticsDataSourceWindowsEvent. +Deprecated: Use SetProviderConfigReference. +*/ +func (mg *LogAnalyticsDataSourceWindowsEvent) SetProviderReference(r *xpv1.Reference) { + mg.Spec.ProviderReference = r +} + +// SetPublishConnectionDetailsTo of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} + +// GetCondition of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetProviderConfigReference of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +/* +GetProviderReference of this LogAnalyticsDataSourceWindowsPerformanceCounter. +Deprecated: Use GetProviderConfigReference. +*/ +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetProviderReference() *xpv1.Reference { + return mg.Spec.ProviderReference +} + +// GetPublishConnectionDetailsTo of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetProviderConfigReference of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +/* +SetProviderReference of this LogAnalyticsDataSourceWindowsPerformanceCounter. +Deprecated: Use SetProviderConfigReference. +*/ +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetProviderReference(r *xpv1.Reference) { + mg.Spec.ProviderReference = r +} + +// SetPublishConnectionDetailsTo of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} + +// GetCondition of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetProviderConfigReference of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +/* +GetProviderReference of this LogAnalyticsLinkedService. +Deprecated: Use GetProviderConfigReference. +*/ +func (mg *LogAnalyticsLinkedService) GetProviderReference() *xpv1.Reference { + return mg.Spec.ProviderReference +} + +// GetPublishConnectionDetailsTo of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetProviderConfigReference of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +/* +SetProviderReference of this LogAnalyticsLinkedService. +Deprecated: Use SetProviderConfigReference. +*/ +func (mg *LogAnalyticsLinkedService) SetProviderReference(r *xpv1.Reference) { + mg.Spec.ProviderReference = r +} + +// SetPublishConnectionDetailsTo of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} + +// GetCondition of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetProviderConfigReference of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +/* +GetProviderReference of this LogAnalyticsLinkedStorageAccount. +Deprecated: Use GetProviderConfigReference. +*/ +func (mg *LogAnalyticsLinkedStorageAccount) GetProviderReference() *xpv1.Reference { + return mg.Spec.ProviderReference +} + +// GetPublishConnectionDetailsTo of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetProviderConfigReference of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +/* +SetProviderReference of this LogAnalyticsLinkedStorageAccount. +Deprecated: Use SetProviderConfigReference. +*/ +func (mg *LogAnalyticsLinkedStorageAccount) SetProviderReference(r *xpv1.Reference) { + mg.Spec.ProviderReference = r +} + +// SetPublishConnectionDetailsTo of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} + +// GetCondition of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetProviderConfigReference of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +/* +GetProviderReference of this LogAnalyticsSavedSearch. +Deprecated: Use GetProviderConfigReference. +*/ +func (mg *LogAnalyticsSavedSearch) GetProviderReference() *xpv1.Reference { + return mg.Spec.ProviderReference +} + +// GetPublishConnectionDetailsTo of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetProviderConfigReference of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +/* +SetProviderReference of this LogAnalyticsSavedSearch. +Deprecated: Use SetProviderConfigReference. +*/ +func (mg *LogAnalyticsSavedSearch) SetProviderReference(r *xpv1.Reference) { + mg.Spec.ProviderReference = r +} + +// SetPublishConnectionDetailsTo of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} + // GetCondition of this Workspace. func (mg *Workspace) GetCondition(ct xpv1.ConditionType) xpv1.Condition { return mg.Status.GetCondition(ct) diff --git a/apis/operationalinsights/v1beta1/zz_generated.managedlist.go b/apis/operationalinsights/v1beta1/zz_generated.managedlist.go index 1ffdd3eac..f013bf426 100644 --- a/apis/operationalinsights/v1beta1/zz_generated.managedlist.go +++ b/apis/operationalinsights/v1beta1/zz_generated.managedlist.go @@ -7,6 +7,60 @@ package v1beta1 import resource "github.com/crossplane/crossplane-runtime/pkg/resource" +// GetItems of this LogAnalyticsDataExportRuleList. +func (l *LogAnalyticsDataExportRuleList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} + +// GetItems of this LogAnalyticsDataSourceWindowsEventList. +func (l *LogAnalyticsDataSourceWindowsEventList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} + +// GetItems of this LogAnalyticsDataSourceWindowsPerformanceCounterList. +func (l *LogAnalyticsDataSourceWindowsPerformanceCounterList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} + +// GetItems of this LogAnalyticsLinkedServiceList. +func (l *LogAnalyticsLinkedServiceList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} + +// GetItems of this LogAnalyticsLinkedStorageAccountList. +func (l *LogAnalyticsLinkedStorageAccountList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} + +// GetItems of this LogAnalyticsSavedSearchList. +func (l *LogAnalyticsSavedSearchList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} + // GetItems of this WorkspaceList. func (l *WorkspaceList) GetItems() []resource.Managed { items := make([]resource.Managed, len(l.Items)) diff --git a/apis/operationalinsights/v1beta1/zz_generated.resolvers.go b/apis/operationalinsights/v1beta1/zz_generated.resolvers.go index eb05d7503..4dae3a353 100644 --- a/apis/operationalinsights/v1beta1/zz_generated.resolvers.go +++ b/apis/operationalinsights/v1beta1/zz_generated.resolvers.go @@ -9,10 +9,299 @@ import ( "context" reference "github.com/crossplane/crossplane-runtime/pkg/reference" errors "github.com/pkg/errors" - v1beta1 "github.com/upbound/provider-azure/apis/azure/v1beta1" + v1beta12 "github.com/upbound/provider-azure/apis/automation/v1beta1" + v1beta11 "github.com/upbound/provider-azure/apis/azure/v1beta1" + rconfig "github.com/upbound/provider-azure/apis/rconfig" + v1beta1 "github.com/upbound/provider-azure/apis/storage/v1beta1" + resource "github.com/upbound/upjet/pkg/resource" client "sigs.k8s.io/controller-runtime/pkg/client" ) +// ResolveReferences of this LogAnalyticsDataExportRule. +func (mg *LogAnalyticsDataExportRule) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.DestinationResourceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.DestinationResourceIDRef, + Selector: mg.Spec.ForProvider.DestinationResourceIDSelector, + To: reference.To{ + List: &v1beta1.AccountList{}, + Managed: &v1beta1.Account{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.DestinationResourceID") + } + mg.Spec.ForProvider.DestinationResourceID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.DestinationResourceIDRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ResourceGroupName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ResourceGroupNameRef, + Selector: mg.Spec.ForProvider.ResourceGroupNameSelector, + To: reference.To{ + List: &v1beta11.ResourceGroupList{}, + Managed: &v1beta11.ResourceGroup{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ResourceGroupName") + } + mg.Spec.ForProvider.ResourceGroupName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ResourceGroupNameRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WorkspaceResourceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.WorkspaceResourceIDRef, + Selector: mg.Spec.ForProvider.WorkspaceResourceIDSelector, + To: reference.To{ + List: &WorkspaceList{}, + Managed: &Workspace{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.WorkspaceResourceID") + } + mg.Spec.ForProvider.WorkspaceResourceID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.WorkspaceResourceIDRef = rsp.ResolvedReference + + return nil +} + +// ResolveReferences of this LogAnalyticsDataSourceWindowsEvent. +func (mg *LogAnalyticsDataSourceWindowsEvent) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ResourceGroupName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ResourceGroupNameRef, + Selector: mg.Spec.ForProvider.ResourceGroupNameSelector, + To: reference.To{ + List: &v1beta11.ResourceGroupList{}, + Managed: &v1beta11.ResourceGroup{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ResourceGroupName") + } + mg.Spec.ForProvider.ResourceGroupName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ResourceGroupNameRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WorkspaceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.WorkspaceNameRef, + Selector: mg.Spec.ForProvider.WorkspaceNameSelector, + To: reference.To{ + List: &WorkspaceList{}, + Managed: &Workspace{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.WorkspaceName") + } + mg.Spec.ForProvider.WorkspaceName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.WorkspaceNameRef = rsp.ResolvedReference + + return nil +} + +// ResolveReferences of this LogAnalyticsDataSourceWindowsPerformanceCounter. +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ResourceGroupName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ResourceGroupNameRef, + Selector: mg.Spec.ForProvider.ResourceGroupNameSelector, + To: reference.To{ + List: &v1beta11.ResourceGroupList{}, + Managed: &v1beta11.ResourceGroup{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ResourceGroupName") + } + mg.Spec.ForProvider.ResourceGroupName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ResourceGroupNameRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WorkspaceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.WorkspaceNameRef, + Selector: mg.Spec.ForProvider.WorkspaceNameSelector, + To: reference.To{ + List: &WorkspaceList{}, + Managed: &Workspace{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.WorkspaceName") + } + mg.Spec.ForProvider.WorkspaceName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.WorkspaceNameRef = rsp.ResolvedReference + + return nil +} + +// ResolveReferences of this LogAnalyticsLinkedService. +func (mg *LogAnalyticsLinkedService) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ReadAccessID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.ReadAccessIDRef, + Selector: mg.Spec.ForProvider.ReadAccessIDSelector, + To: reference.To{ + List: &v1beta12.AccountList{}, + Managed: &v1beta12.Account{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ReadAccessID") + } + mg.Spec.ForProvider.ReadAccessID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ReadAccessIDRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ResourceGroupName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ResourceGroupNameRef, + Selector: mg.Spec.ForProvider.ResourceGroupNameSelector, + To: reference.To{ + List: &v1beta11.ResourceGroupList{}, + Managed: &v1beta11.ResourceGroup{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ResourceGroupName") + } + mg.Spec.ForProvider.ResourceGroupName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ResourceGroupNameRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WorkspaceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.WorkspaceIDRef, + Selector: mg.Spec.ForProvider.WorkspaceIDSelector, + To: reference.To{ + List: &WorkspaceList{}, + Managed: &Workspace{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.WorkspaceID") + } + mg.Spec.ForProvider.WorkspaceID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.WorkspaceIDRef = rsp.ResolvedReference + + return nil +} + +// ResolveReferences of this LogAnalyticsLinkedStorageAccount. +func (mg *LogAnalyticsLinkedStorageAccount) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var mrsp reference.MultiResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ResourceGroupName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ResourceGroupNameRef, + Selector: mg.Spec.ForProvider.ResourceGroupNameSelector, + To: reference.To{ + List: &v1beta11.ResourceGroupList{}, + Managed: &v1beta11.ResourceGroup{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ResourceGroupName") + } + mg.Spec.ForProvider.ResourceGroupName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ResourceGroupNameRef = rsp.ResolvedReference + + mrsp, err = r.ResolveMultiple(ctx, reference.MultiResolutionRequest{ + CurrentValues: reference.FromPtrValues(mg.Spec.ForProvider.StorageAccountIds), + Extract: rconfig.ExtractResourceID(), + References: mg.Spec.ForProvider.StorageAccountIdsRefs, + Selector: mg.Spec.ForProvider.StorageAccountIdsSelector, + To: reference.To{ + List: &v1beta1.AccountList{}, + Managed: &v1beta1.Account{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.StorageAccountIds") + } + mg.Spec.ForProvider.StorageAccountIds = reference.ToPtrValues(mrsp.ResolvedValues) + mg.Spec.ForProvider.StorageAccountIdsRefs = mrsp.ResolvedReferences + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WorkspaceResourceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.WorkspaceResourceIDRef, + Selector: mg.Spec.ForProvider.WorkspaceResourceIDSelector, + To: reference.To{ + List: &WorkspaceList{}, + Managed: &Workspace{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.WorkspaceResourceID") + } + mg.Spec.ForProvider.WorkspaceResourceID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.WorkspaceResourceIDRef = rsp.ResolvedReference + + return nil +} + +// ResolveReferences of this LogAnalyticsSavedSearch. +func (mg *LogAnalyticsSavedSearch) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.LogAnalyticsWorkspaceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.LogAnalyticsWorkspaceIDRef, + Selector: mg.Spec.ForProvider.LogAnalyticsWorkspaceIDSelector, + To: reference.To{ + List: &WorkspaceList{}, + Managed: &Workspace{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.LogAnalyticsWorkspaceID") + } + mg.Spec.ForProvider.LogAnalyticsWorkspaceID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.LogAnalyticsWorkspaceIDRef = rsp.ResolvedReference + + return nil +} + // ResolveReferences of this Workspace. func (mg *Workspace) ResolveReferences(ctx context.Context, c client.Reader) error { r := reference.NewAPIResolver(c, mg) @@ -26,8 +315,8 @@ func (mg *Workspace) ResolveReferences(ctx context.Context, c client.Reader) err Reference: mg.Spec.ForProvider.ResourceGroupNameRef, Selector: mg.Spec.ForProvider.ResourceGroupNameSelector, To: reference.To{ - List: &v1beta1.ResourceGroupList{}, - Managed: &v1beta1.ResourceGroup{}, + List: &v1beta11.ResourceGroupList{}, + Managed: &v1beta11.ResourceGroup{}, }, }) if err != nil { diff --git a/apis/operationalinsights/v1beta1/zz_generated_terraformed.go b/apis/operationalinsights/v1beta1/zz_generated_terraformed.go index 1d863d126..381f4660c 100755 --- a/apis/operationalinsights/v1beta1/zz_generated_terraformed.go +++ b/apis/operationalinsights/v1beta1/zz_generated_terraformed.go @@ -13,6 +13,450 @@ import ( "github.com/upbound/upjet/pkg/resource/json" ) +// GetTerraformResourceType returns Terraform resource type for this LogAnalyticsDataExportRule +func (mg *LogAnalyticsDataExportRule) GetTerraformResourceType() string { + return "azurerm_log_analytics_data_export_rule" +} + +// GetConnectionDetailsMapping for this LogAnalyticsDataExportRule +func (tr *LogAnalyticsDataExportRule) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this LogAnalyticsDataExportRule +func (tr *LogAnalyticsDataExportRule) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this LogAnalyticsDataExportRule +func (tr *LogAnalyticsDataExportRule) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this LogAnalyticsDataExportRule +func (tr *LogAnalyticsDataExportRule) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this LogAnalyticsDataExportRule +func (tr *LogAnalyticsDataExportRule) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this LogAnalyticsDataExportRule +func (tr *LogAnalyticsDataExportRule) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// LateInitialize this LogAnalyticsDataExportRule using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *LogAnalyticsDataExportRule) LateInitialize(attrs []byte) (bool, error) { + params := &LogAnalyticsDataExportRuleParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *LogAnalyticsDataExportRule) GetTerraformSchemaVersion() int { + return 1 +} + +// GetTerraformResourceType returns Terraform resource type for this LogAnalyticsDataSourceWindowsEvent +func (mg *LogAnalyticsDataSourceWindowsEvent) GetTerraformResourceType() string { + return "azurerm_log_analytics_datasource_windows_event" +} + +// GetConnectionDetailsMapping for this LogAnalyticsDataSourceWindowsEvent +func (tr *LogAnalyticsDataSourceWindowsEvent) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this LogAnalyticsDataSourceWindowsEvent +func (tr *LogAnalyticsDataSourceWindowsEvent) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this LogAnalyticsDataSourceWindowsEvent +func (tr *LogAnalyticsDataSourceWindowsEvent) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this LogAnalyticsDataSourceWindowsEvent +func (tr *LogAnalyticsDataSourceWindowsEvent) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this LogAnalyticsDataSourceWindowsEvent +func (tr *LogAnalyticsDataSourceWindowsEvent) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this LogAnalyticsDataSourceWindowsEvent +func (tr *LogAnalyticsDataSourceWindowsEvent) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// LateInitialize this LogAnalyticsDataSourceWindowsEvent using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *LogAnalyticsDataSourceWindowsEvent) LateInitialize(attrs []byte) (bool, error) { + params := &LogAnalyticsDataSourceWindowsEventParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *LogAnalyticsDataSourceWindowsEvent) GetTerraformSchemaVersion() int { + return 1 +} + +// GetTerraformResourceType returns Terraform resource type for this LogAnalyticsDataSourceWindowsPerformanceCounter +func (mg *LogAnalyticsDataSourceWindowsPerformanceCounter) GetTerraformResourceType() string { + return "azurerm_log_analytics_datasource_windows_performance_counter" +} + +// GetConnectionDetailsMapping for this LogAnalyticsDataSourceWindowsPerformanceCounter +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this LogAnalyticsDataSourceWindowsPerformanceCounter +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this LogAnalyticsDataSourceWindowsPerformanceCounter +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this LogAnalyticsDataSourceWindowsPerformanceCounter +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this LogAnalyticsDataSourceWindowsPerformanceCounter +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this LogAnalyticsDataSourceWindowsPerformanceCounter +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// LateInitialize this LogAnalyticsDataSourceWindowsPerformanceCounter using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) LateInitialize(attrs []byte) (bool, error) { + params := &LogAnalyticsDataSourceWindowsPerformanceCounterParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *LogAnalyticsDataSourceWindowsPerformanceCounter) GetTerraformSchemaVersion() int { + return 1 +} + +// GetTerraformResourceType returns Terraform resource type for this LogAnalyticsLinkedService +func (mg *LogAnalyticsLinkedService) GetTerraformResourceType() string { + return "azurerm_log_analytics_linked_service" +} + +// GetConnectionDetailsMapping for this LogAnalyticsLinkedService +func (tr *LogAnalyticsLinkedService) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this LogAnalyticsLinkedService +func (tr *LogAnalyticsLinkedService) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this LogAnalyticsLinkedService +func (tr *LogAnalyticsLinkedService) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this LogAnalyticsLinkedService +func (tr *LogAnalyticsLinkedService) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this LogAnalyticsLinkedService +func (tr *LogAnalyticsLinkedService) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this LogAnalyticsLinkedService +func (tr *LogAnalyticsLinkedService) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// LateInitialize this LogAnalyticsLinkedService using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *LogAnalyticsLinkedService) LateInitialize(attrs []byte) (bool, error) { + params := &LogAnalyticsLinkedServiceParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *LogAnalyticsLinkedService) GetTerraformSchemaVersion() int { + return 0 +} + +// GetTerraformResourceType returns Terraform resource type for this LogAnalyticsLinkedStorageAccount +func (mg *LogAnalyticsLinkedStorageAccount) GetTerraformResourceType() string { + return "azurerm_log_analytics_linked_storage_account" +} + +// GetConnectionDetailsMapping for this LogAnalyticsLinkedStorageAccount +func (tr *LogAnalyticsLinkedStorageAccount) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this LogAnalyticsLinkedStorageAccount +func (tr *LogAnalyticsLinkedStorageAccount) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this LogAnalyticsLinkedStorageAccount +func (tr *LogAnalyticsLinkedStorageAccount) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this LogAnalyticsLinkedStorageAccount +func (tr *LogAnalyticsLinkedStorageAccount) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this LogAnalyticsLinkedStorageAccount +func (tr *LogAnalyticsLinkedStorageAccount) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this LogAnalyticsLinkedStorageAccount +func (tr *LogAnalyticsLinkedStorageAccount) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// LateInitialize this LogAnalyticsLinkedStorageAccount using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *LogAnalyticsLinkedStorageAccount) LateInitialize(attrs []byte) (bool, error) { + params := &LogAnalyticsLinkedStorageAccountParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *LogAnalyticsLinkedStorageAccount) GetTerraformSchemaVersion() int { + return 1 +} + +// GetTerraformResourceType returns Terraform resource type for this LogAnalyticsSavedSearch +func (mg *LogAnalyticsSavedSearch) GetTerraformResourceType() string { + return "azurerm_log_analytics_saved_search" +} + +// GetConnectionDetailsMapping for this LogAnalyticsSavedSearch +func (tr *LogAnalyticsSavedSearch) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this LogAnalyticsSavedSearch +func (tr *LogAnalyticsSavedSearch) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this LogAnalyticsSavedSearch +func (tr *LogAnalyticsSavedSearch) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this LogAnalyticsSavedSearch +func (tr *LogAnalyticsSavedSearch) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this LogAnalyticsSavedSearch +func (tr *LogAnalyticsSavedSearch) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this LogAnalyticsSavedSearch +func (tr *LogAnalyticsSavedSearch) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// LateInitialize this LogAnalyticsSavedSearch using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *LogAnalyticsSavedSearch) LateInitialize(attrs []byte) (bool, error) { + params := &LogAnalyticsSavedSearchParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *LogAnalyticsSavedSearch) GetTerraformSchemaVersion() int { + return 1 +} + // GetTerraformResourceType returns Terraform resource type for this Workspace func (mg *Workspace) GetTerraformResourceType() string { return "azurerm_log_analytics_workspace" diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go new file mode 100755 index 000000000..fc3fd8710 --- /dev/null +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go @@ -0,0 +1,124 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +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 LogAnalyticsDataExportRuleObservation struct { + + // The ID of the created Data Export Rule. + ExportRuleID *string `json:"exportRuleId,omitempty" tf:"export_rule_id,omitempty"` + + // The ID of the Log Analytics Data Export Rule. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type LogAnalyticsDataExportRuleParameters struct { + + // The destination resource ID. It should be a storage account, an event hub namespace or an event hub. If the destination is an event hub namespace, an event hub would be created for each table automatically. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/storage/v1beta1.Account + // +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + DestinationResourceID *string `json:"destinationResourceId,omitempty" tf:"destination_resource_id,omitempty"` + + // Reference to a Account in storage to populate destinationResourceId. + // +kubebuilder:validation:Optional + DestinationResourceIDRef *v1.Reference `json:"destinationResourceIdRef,omitempty" tf:"-"` + + // Selector for a Account in storage to populate destinationResourceId. + // +kubebuilder:validation:Optional + DestinationResourceIDSelector *v1.Selector `json:"destinationResourceIdSelector,omitempty" tf:"-"` + + // Is this Log Analytics Data Export Rule enabled? Possible values include true or false. Defaults to false. + // +kubebuilder:validation:Optional + Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` + + // The name of the Resource Group where the Log Analytics Data Export should exist. Changing this forces a new Log Analytics Data Export Rule to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup + // +kubebuilder:validation:Optional + ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"` + + // Reference to a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"` + + // Selector for a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` + + // A list of table names to export to the destination resource, for example: ["Heartbeat", "SecurityEvent"]. + // +kubebuilder:validation:Required + TableNames []*string `json:"tableNames" tf:"table_names,omitempty"` + + // The resource ID of the workspace. Changing this forces a new Log Analytics Data Export Rule to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace + // +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + WorkspaceResourceID *string `json:"workspaceResourceId,omitempty" tf:"workspace_resource_id,omitempty"` + + // Reference to a Workspace in operationalinsights to populate workspaceResourceId. + // +kubebuilder:validation:Optional + WorkspaceResourceIDRef *v1.Reference `json:"workspaceResourceIdRef,omitempty" tf:"-"` + + // Selector for a Workspace in operationalinsights to populate workspaceResourceId. + // +kubebuilder:validation:Optional + WorkspaceResourceIDSelector *v1.Selector `json:"workspaceResourceIdSelector,omitempty" tf:"-"` +} + +// LogAnalyticsDataExportRuleSpec defines the desired state of LogAnalyticsDataExportRule +type LogAnalyticsDataExportRuleSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider LogAnalyticsDataExportRuleParameters `json:"forProvider"` +} + +// LogAnalyticsDataExportRuleStatus defines the observed state of LogAnalyticsDataExportRule. +type LogAnalyticsDataExportRuleStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider LogAnalyticsDataExportRuleObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsDataExportRule is the Schema for the LogAnalyticsDataExportRules API. Manages a log analytics Data Export Rule. +// +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:subresource:status +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure} +type LogAnalyticsDataExportRule struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec LogAnalyticsDataExportRuleSpec `json:"spec"` + Status LogAnalyticsDataExportRuleStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsDataExportRuleList contains a list of LogAnalyticsDataExportRules +type LogAnalyticsDataExportRuleList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []LogAnalyticsDataExportRule `json:"items"` +} + +// Repository type metadata. +var ( + LogAnalyticsDataExportRule_Kind = "LogAnalyticsDataExportRule" + LogAnalyticsDataExportRule_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: LogAnalyticsDataExportRule_Kind}.String() + LogAnalyticsDataExportRule_KindAPIVersion = LogAnalyticsDataExportRule_Kind + "." + CRDGroupVersion.String() + LogAnalyticsDataExportRule_GroupVersionKind = CRDGroupVersion.WithKind(LogAnalyticsDataExportRule_Kind) +) + +func init() { + SchemeBuilder.Register(&LogAnalyticsDataExportRule{}, &LogAnalyticsDataExportRuleList{}) +} diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go new file mode 100755 index 000000000..8f20596c1 --- /dev/null +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go @@ -0,0 +1,106 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +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 LogAnalyticsDataSourceWindowsEventObservation struct { + + // The ID of the Log Analytics Windows Event DataSource. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type LogAnalyticsDataSourceWindowsEventParameters struct { + + // Specifies the name of the Windows Event Log to collect events from. + // +kubebuilder:validation:Required + EventLogName *string `json:"eventLogName" tf:"event_log_name,omitempty"` + + // Specifies an array of event types applied to the specified event log. Possible values include Error, Warning and Information. + // +kubebuilder:validation:Required + EventTypes []*string `json:"eventTypes" tf:"event_types,omitempty"` + + // The name of the Resource Group where the Log Analytics Windows Event DataSource should exist. Changing this forces a new Log Analytics Windows Event DataSource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup + // +kubebuilder:validation:Optional + ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"` + + // Reference to a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"` + + // Selector for a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` + + // The name of the Log Analytics Workspace where the Log Analytics Windows Event DataSource should exist. Changing this forces a new Log Analytics Windows Event DataSource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace + // +kubebuilder:validation:Optional + WorkspaceName *string `json:"workspaceName,omitempty" tf:"workspace_name,omitempty"` + + // Reference to a Workspace in operationalinsights to populate workspaceName. + // +kubebuilder:validation:Optional + WorkspaceNameRef *v1.Reference `json:"workspaceNameRef,omitempty" tf:"-"` + + // Selector for a Workspace in operationalinsights to populate workspaceName. + // +kubebuilder:validation:Optional + WorkspaceNameSelector *v1.Selector `json:"workspaceNameSelector,omitempty" tf:"-"` +} + +// LogAnalyticsDataSourceWindowsEventSpec defines the desired state of LogAnalyticsDataSourceWindowsEvent +type LogAnalyticsDataSourceWindowsEventSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider LogAnalyticsDataSourceWindowsEventParameters `json:"forProvider"` +} + +// LogAnalyticsDataSourceWindowsEventStatus defines the observed state of LogAnalyticsDataSourceWindowsEvent. +type LogAnalyticsDataSourceWindowsEventStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider LogAnalyticsDataSourceWindowsEventObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsDataSourceWindowsEvent is the Schema for the LogAnalyticsDataSourceWindowsEvents API. Manages a Log Analytics Windows Event DataSource. +// +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:subresource:status +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure} +type LogAnalyticsDataSourceWindowsEvent struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec LogAnalyticsDataSourceWindowsEventSpec `json:"spec"` + Status LogAnalyticsDataSourceWindowsEventStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsDataSourceWindowsEventList contains a list of LogAnalyticsDataSourceWindowsEvents +type LogAnalyticsDataSourceWindowsEventList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []LogAnalyticsDataSourceWindowsEvent `json:"items"` +} + +// Repository type metadata. +var ( + LogAnalyticsDataSourceWindowsEvent_Kind = "LogAnalyticsDataSourceWindowsEvent" + LogAnalyticsDataSourceWindowsEvent_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: LogAnalyticsDataSourceWindowsEvent_Kind}.String() + LogAnalyticsDataSourceWindowsEvent_KindAPIVersion = LogAnalyticsDataSourceWindowsEvent_Kind + "." + CRDGroupVersion.String() + LogAnalyticsDataSourceWindowsEvent_GroupVersionKind = CRDGroupVersion.WithKind(LogAnalyticsDataSourceWindowsEvent_Kind) +) + +func init() { + SchemeBuilder.Register(&LogAnalyticsDataSourceWindowsEvent{}, &LogAnalyticsDataSourceWindowsEventList{}) +} diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go new file mode 100755 index 000000000..a0eb11001 --- /dev/null +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go @@ -0,0 +1,114 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +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 LogAnalyticsDataSourceWindowsPerformanceCounterObservation struct { + + // The ID of the Log Analytics Windows Performance Counter DataSource. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type LogAnalyticsDataSourceWindowsPerformanceCounterParameters struct { + + // The friendly name of the performance counter. + // +kubebuilder:validation:Required + CounterName *string `json:"counterName" tf:"counter_name,omitempty"` + + // The name of the virtual machine instance to which the Windows Performance Counter DataSource be applied. Specify a * will apply to all instances. + // +kubebuilder:validation:Required + InstanceName *string `json:"instanceName" tf:"instance_name,omitempty"` + + // The time of sample interval in seconds. Supports values between 10 and 2147483647. + // +kubebuilder:validation:Required + IntervalSeconds *float64 `json:"intervalSeconds" tf:"interval_seconds,omitempty"` + + // The object name of the Log Analytics Windows Performance Counter DataSource. + // +kubebuilder:validation:Required + ObjectName *string `json:"objectName" tf:"object_name,omitempty"` + + // The name of the Resource Group where the Log Analytics Windows Performance Counter DataSource should exist. Changing this forces a new Log Analytics Windows Performance Counter DataSource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup + // +kubebuilder:validation:Optional + ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"` + + // Reference to a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"` + + // Selector for a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` + + // The name of the Log Analytics Workspace where the Log Analytics Windows Performance Counter DataSource should exist. Changing this forces a new Log Analytics Windows Performance Counter DataSource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace + // +kubebuilder:validation:Optional + WorkspaceName *string `json:"workspaceName,omitempty" tf:"workspace_name,omitempty"` + + // Reference to a Workspace in operationalinsights to populate workspaceName. + // +kubebuilder:validation:Optional + WorkspaceNameRef *v1.Reference `json:"workspaceNameRef,omitempty" tf:"-"` + + // Selector for a Workspace in operationalinsights to populate workspaceName. + // +kubebuilder:validation:Optional + WorkspaceNameSelector *v1.Selector `json:"workspaceNameSelector,omitempty" tf:"-"` +} + +// LogAnalyticsDataSourceWindowsPerformanceCounterSpec defines the desired state of LogAnalyticsDataSourceWindowsPerformanceCounter +type LogAnalyticsDataSourceWindowsPerformanceCounterSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider LogAnalyticsDataSourceWindowsPerformanceCounterParameters `json:"forProvider"` +} + +// LogAnalyticsDataSourceWindowsPerformanceCounterStatus defines the observed state of LogAnalyticsDataSourceWindowsPerformanceCounter. +type LogAnalyticsDataSourceWindowsPerformanceCounterStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider LogAnalyticsDataSourceWindowsPerformanceCounterObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsDataSourceWindowsPerformanceCounter is the Schema for the LogAnalyticsDataSourceWindowsPerformanceCounters API. Manages a Log Analytics (formally Operational Insights) Windows Performance Counter DataSource. +// +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:subresource:status +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure} +type LogAnalyticsDataSourceWindowsPerformanceCounter struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec LogAnalyticsDataSourceWindowsPerformanceCounterSpec `json:"spec"` + Status LogAnalyticsDataSourceWindowsPerformanceCounterStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsDataSourceWindowsPerformanceCounterList contains a list of LogAnalyticsDataSourceWindowsPerformanceCounters +type LogAnalyticsDataSourceWindowsPerformanceCounterList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []LogAnalyticsDataSourceWindowsPerformanceCounter `json:"items"` +} + +// Repository type metadata. +var ( + LogAnalyticsDataSourceWindowsPerformanceCounter_Kind = "LogAnalyticsDataSourceWindowsPerformanceCounter" + LogAnalyticsDataSourceWindowsPerformanceCounter_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: LogAnalyticsDataSourceWindowsPerformanceCounter_Kind}.String() + LogAnalyticsDataSourceWindowsPerformanceCounter_KindAPIVersion = LogAnalyticsDataSourceWindowsPerformanceCounter_Kind + "." + CRDGroupVersion.String() + LogAnalyticsDataSourceWindowsPerformanceCounter_GroupVersionKind = CRDGroupVersion.WithKind(LogAnalyticsDataSourceWindowsPerformanceCounter_Kind) +) + +func init() { + SchemeBuilder.Register(&LogAnalyticsDataSourceWindowsPerformanceCounter{}, &LogAnalyticsDataSourceWindowsPerformanceCounterList{}) +} diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go new file mode 100755 index 000000000..a31c965d6 --- /dev/null +++ b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go @@ -0,0 +1,120 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +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 LogAnalyticsLinkedServiceObservation struct { + + // The Log Analytics Linked Service ID. + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // The generated name of the Linked Service. The format for this attribute is always /(e.g. workspace1/Automation or workspace1/Cluster) + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type LogAnalyticsLinkedServiceParameters struct { + + // The ID of the readable Resource that will be linked to the workspace. This should be used for linking to an Automation Account resource. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/automation/v1beta1.Account + // +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + ReadAccessID *string `json:"readAccessId,omitempty" tf:"read_access_id,omitempty"` + + // Reference to a Account in automation to populate readAccessId. + // +kubebuilder:validation:Optional + ReadAccessIDRef *v1.Reference `json:"readAccessIdRef,omitempty" tf:"-"` + + // Selector for a Account in automation to populate readAccessId. + // +kubebuilder:validation:Optional + ReadAccessIDSelector *v1.Selector `json:"readAccessIdSelector,omitempty" tf:"-"` + + // The name of the resource group in which the Log Analytics Linked Service is created. Changing this forces a new resource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup + // +kubebuilder:validation:Optional + ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"` + + // Reference to a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"` + + // Selector for a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` + + // The ID of the Log Analytics Workspace that will contain the Log Analytics Linked Service resource. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace + // +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` + + // Reference to a Workspace in operationalinsights to populate workspaceId. + // +kubebuilder:validation:Optional + WorkspaceIDRef *v1.Reference `json:"workspaceIdRef,omitempty" tf:"-"` + + // Selector for a Workspace in operationalinsights to populate workspaceId. + // +kubebuilder:validation:Optional + WorkspaceIDSelector *v1.Selector `json:"workspaceIdSelector,omitempty" tf:"-"` + + // The ID of the writable Resource that will be linked to the workspace. This should be used for linking to a Log Analytics Cluster resource. + // +kubebuilder:validation:Optional + WriteAccessID *string `json:"writeAccessId,omitempty" tf:"write_access_id,omitempty"` +} + +// LogAnalyticsLinkedServiceSpec defines the desired state of LogAnalyticsLinkedService +type LogAnalyticsLinkedServiceSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider LogAnalyticsLinkedServiceParameters `json:"forProvider"` +} + +// LogAnalyticsLinkedServiceStatus defines the observed state of LogAnalyticsLinkedService. +type LogAnalyticsLinkedServiceStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider LogAnalyticsLinkedServiceObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsLinkedService is the Schema for the LogAnalyticsLinkedServices API. Manages a Log Analytics Linked Service. +// +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:subresource:status +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure} +type LogAnalyticsLinkedService struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec LogAnalyticsLinkedServiceSpec `json:"spec"` + Status LogAnalyticsLinkedServiceStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsLinkedServiceList contains a list of LogAnalyticsLinkedServices +type LogAnalyticsLinkedServiceList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []LogAnalyticsLinkedService `json:"items"` +} + +// Repository type metadata. +var ( + LogAnalyticsLinkedService_Kind = "LogAnalyticsLinkedService" + LogAnalyticsLinkedService_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: LogAnalyticsLinkedService_Kind}.String() + LogAnalyticsLinkedService_KindAPIVersion = LogAnalyticsLinkedService_Kind + "." + CRDGroupVersion.String() + LogAnalyticsLinkedService_GroupVersionKind = CRDGroupVersion.WithKind(LogAnalyticsLinkedService_Kind) +) + +func init() { + SchemeBuilder.Register(&LogAnalyticsLinkedService{}, &LogAnalyticsLinkedServiceList{}) +} diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go new file mode 100755 index 000000000..d042f153b --- /dev/null +++ b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go @@ -0,0 +1,117 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +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 LogAnalyticsLinkedStorageAccountObservation struct { + + // The ID of the Log Analytics Linked Storage Account. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type LogAnalyticsLinkedStorageAccountParameters struct { + + // The data source type which should be used for this Log Analytics Linked Storage Account. Possible values are CustomLogs, AzureWatson, Query, Ingestion and Alerts. Changing this forces a new Log Analytics Linked Storage Account to be created. + // +kubebuilder:validation:Required + DataSourceType *string `json:"dataSourceType" tf:"data_source_type,omitempty"` + + // The name of the Resource Group where the Log Analytics Linked Storage Account should exist. Changing this forces a new Log Analytics Linked Storage Account to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup + // +kubebuilder:validation:Optional + ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"` + + // Reference to a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"` + + // Selector for a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` + + // The storage account resource ids to be linked. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/storage/v1beta1.Account + // +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID() + // +kubebuilder:validation:Optional + StorageAccountIds []*string `json:"storageAccountIds,omitempty" tf:"storage_account_ids,omitempty"` + + // References to Account in storage to populate storageAccountIds. + // +kubebuilder:validation:Optional + StorageAccountIdsRefs []v1.Reference `json:"storageAccountIdsRefs,omitempty" tf:"-"` + + // Selector for a list of Account in storage to populate storageAccountIds. + // +kubebuilder:validation:Optional + StorageAccountIdsSelector *v1.Selector `json:"storageAccountIdsSelector,omitempty" tf:"-"` + + // The resource ID of the Log Analytics Workspace. Changing this forces a new Log Analytics Linked Storage Account to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace + // +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + WorkspaceResourceID *string `json:"workspaceResourceId,omitempty" tf:"workspace_resource_id,omitempty"` + + // Reference to a Workspace in operationalinsights to populate workspaceResourceId. + // +kubebuilder:validation:Optional + WorkspaceResourceIDRef *v1.Reference `json:"workspaceResourceIdRef,omitempty" tf:"-"` + + // Selector for a Workspace in operationalinsights to populate workspaceResourceId. + // +kubebuilder:validation:Optional + WorkspaceResourceIDSelector *v1.Selector `json:"workspaceResourceIdSelector,omitempty" tf:"-"` +} + +// LogAnalyticsLinkedStorageAccountSpec defines the desired state of LogAnalyticsLinkedStorageAccount +type LogAnalyticsLinkedStorageAccountSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider LogAnalyticsLinkedStorageAccountParameters `json:"forProvider"` +} + +// LogAnalyticsLinkedStorageAccountStatus defines the observed state of LogAnalyticsLinkedStorageAccount. +type LogAnalyticsLinkedStorageAccountStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider LogAnalyticsLinkedStorageAccountObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsLinkedStorageAccount is the Schema for the LogAnalyticsLinkedStorageAccounts API. Manages a Log Analytics Linked Storage Account. +// +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:subresource:status +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure} +type LogAnalyticsLinkedStorageAccount struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec LogAnalyticsLinkedStorageAccountSpec `json:"spec"` + Status LogAnalyticsLinkedStorageAccountStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsLinkedStorageAccountList contains a list of LogAnalyticsLinkedStorageAccounts +type LogAnalyticsLinkedStorageAccountList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []LogAnalyticsLinkedStorageAccount `json:"items"` +} + +// Repository type metadata. +var ( + LogAnalyticsLinkedStorageAccount_Kind = "LogAnalyticsLinkedStorageAccount" + LogAnalyticsLinkedStorageAccount_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: LogAnalyticsLinkedStorageAccount_Kind}.String() + LogAnalyticsLinkedStorageAccount_KindAPIVersion = LogAnalyticsLinkedStorageAccount_Kind + "." + CRDGroupVersion.String() + LogAnalyticsLinkedStorageAccount_GroupVersionKind = CRDGroupVersion.WithKind(LogAnalyticsLinkedStorageAccount_Kind) +) + +func init() { + SchemeBuilder.Register(&LogAnalyticsLinkedStorageAccount{}, &LogAnalyticsLinkedStorageAccountList{}) +} diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go new file mode 100755 index 000000000..22c4f54ce --- /dev/null +++ b/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go @@ -0,0 +1,110 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +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 LogAnalyticsSavedSearchObservation struct { + + // The Log Analytics Saved Search ID. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type LogAnalyticsSavedSearchParameters struct { + + // The category that the Saved Search will be listed under. Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + Category *string `json:"category" tf:"category,omitempty"` + + // The name that Saved Search will be displayed as. Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + DisplayName *string `json:"displayName" tf:"display_name,omitempty"` + + // The function alias if the query serves as a function. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional + FunctionAlias *string `json:"functionAlias,omitempty" tf:"function_alias,omitempty"` + + // The function parameters if the query serves as a function. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional + FunctionParameters []*string `json:"functionParameters,omitempty" tf:"function_parameters,omitempty"` + + // Specifies the ID of the Log Analytics Workspace that the Saved Search will be associated with. Changing this forces a new resource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace + // +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` + + // Reference to a Workspace in operationalinsights to populate logAnalyticsWorkspaceId. + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceIDRef *v1.Reference `json:"logAnalyticsWorkspaceIdRef,omitempty" tf:"-"` + + // Selector for a Workspace in operationalinsights to populate logAnalyticsWorkspaceId. + // +kubebuilder:validation:Optional + LogAnalyticsWorkspaceIDSelector *v1.Selector `json:"logAnalyticsWorkspaceIdSelector,omitempty" tf:"-"` + + // The query expression for the saved search. Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + Query *string `json:"query" tf:"query,omitempty"` + + // A mapping of tags which should be assigned to the Logs Analytics Saved Search. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + +// LogAnalyticsSavedSearchSpec defines the desired state of LogAnalyticsSavedSearch +type LogAnalyticsSavedSearchSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider LogAnalyticsSavedSearchParameters `json:"forProvider"` +} + +// LogAnalyticsSavedSearchStatus defines the observed state of LogAnalyticsSavedSearch. +type LogAnalyticsSavedSearchStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider LogAnalyticsSavedSearchObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsSavedSearch is the Schema for the LogAnalyticsSavedSearchs API. Manages a Log Analytics (formally Operational Insights) Saved Search. +// +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:subresource:status +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure} +type LogAnalyticsSavedSearch struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec LogAnalyticsSavedSearchSpec `json:"spec"` + Status LogAnalyticsSavedSearchStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsSavedSearchList contains a list of LogAnalyticsSavedSearchs +type LogAnalyticsSavedSearchList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []LogAnalyticsSavedSearch `json:"items"` +} + +// Repository type metadata. +var ( + LogAnalyticsSavedSearch_Kind = "LogAnalyticsSavedSearch" + LogAnalyticsSavedSearch_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: LogAnalyticsSavedSearch_Kind}.String() + LogAnalyticsSavedSearch_KindAPIVersion = LogAnalyticsSavedSearch_Kind + "." + CRDGroupVersion.String() + LogAnalyticsSavedSearch_GroupVersionKind = CRDGroupVersion.WithKind(LogAnalyticsSavedSearch_Kind) +) + +func init() { + SchemeBuilder.Register(&LogAnalyticsSavedSearch{}, &LogAnalyticsSavedSearchList{}) +} diff --git a/apis/operationsmanagement/v1beta1/zz_generated.deepcopy.go b/apis/operationsmanagement/v1beta1/zz_generated.deepcopy.go new file mode 100644 index 000000000..4d3294f69 --- /dev/null +++ b/apis/operationsmanagement/v1beta1/zz_generated.deepcopy.go @@ -0,0 +1,277 @@ +//go:build !ignore_autogenerated +// +build !ignore_autogenerated + +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by controller-gen. DO NOT EDIT. + +package v1beta1 + +import ( + "github.com/crossplane/crossplane-runtime/apis/common/v1" + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSolution) DeepCopyInto(out *LogAnalyticsSolution) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSolution. +func (in *LogAnalyticsSolution) DeepCopy() *LogAnalyticsSolution { + if in == nil { + return nil + } + out := new(LogAnalyticsSolution) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsSolution) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSolutionList) DeepCopyInto(out *LogAnalyticsSolutionList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]LogAnalyticsSolution, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSolutionList. +func (in *LogAnalyticsSolutionList) DeepCopy() *LogAnalyticsSolutionList { + if in == nil { + return nil + } + out := new(LogAnalyticsSolutionList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *LogAnalyticsSolutionList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSolutionObservation) DeepCopyInto(out *LogAnalyticsSolutionObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]PlanObservation, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSolutionObservation. +func (in *LogAnalyticsSolutionObservation) DeepCopy() *LogAnalyticsSolutionObservation { + if in == nil { + return nil + } + out := new(LogAnalyticsSolutionObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSolutionParameters) DeepCopyInto(out *LogAnalyticsSolutionParameters) { + *out = *in + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Plan != nil { + in, out := &in.Plan, &out.Plan + *out = make([]PlanParameters, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.SolutionName != nil { + in, out := &in.SolutionName, &out.SolutionName + *out = new(string) + **out = **in + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } + if in.WorkspaceName != nil { + in, out := &in.WorkspaceName, &out.WorkspaceName + *out = new(string) + **out = **in + } + if in.WorkspaceNameRef != nil { + in, out := &in.WorkspaceNameRef, &out.WorkspaceNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceNameSelector != nil { + in, out := &in.WorkspaceNameSelector, &out.WorkspaceNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceResourceID != nil { + in, out := &in.WorkspaceResourceID, &out.WorkspaceResourceID + *out = new(string) + **out = **in + } + if in.WorkspaceResourceIDRef != nil { + in, out := &in.WorkspaceResourceIDRef, &out.WorkspaceResourceIDRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.WorkspaceResourceIDSelector != nil { + in, out := &in.WorkspaceResourceIDSelector, &out.WorkspaceResourceIDSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSolutionParameters. +func (in *LogAnalyticsSolutionParameters) DeepCopy() *LogAnalyticsSolutionParameters { + if in == nil { + return nil + } + out := new(LogAnalyticsSolutionParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSolutionSpec) DeepCopyInto(out *LogAnalyticsSolutionSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSolutionSpec. +func (in *LogAnalyticsSolutionSpec) DeepCopy() *LogAnalyticsSolutionSpec { + if in == nil { + return nil + } + out := new(LogAnalyticsSolutionSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *LogAnalyticsSolutionStatus) DeepCopyInto(out *LogAnalyticsSolutionStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogAnalyticsSolutionStatus. +func (in *LogAnalyticsSolutionStatus) DeepCopy() *LogAnalyticsSolutionStatus { + if in == nil { + return nil + } + out := new(LogAnalyticsSolutionStatus) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PlanObservation) DeepCopyInto(out *PlanObservation) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanObservation. +func (in *PlanObservation) DeepCopy() *PlanObservation { + if in == nil { + return nil + } + out := new(PlanObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PlanParameters) DeepCopyInto(out *PlanParameters) { + *out = *in + if in.Product != nil { + in, out := &in.Product, &out.Product + *out = new(string) + **out = **in + } + if in.PromotionCode != nil { + in, out := &in.PromotionCode, &out.PromotionCode + *out = new(string) + **out = **in + } + if in.Publisher != nil { + in, out := &in.Publisher, &out.Publisher + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanParameters. +func (in *PlanParameters) DeepCopy() *PlanParameters { + if in == nil { + return nil + } + out := new(PlanParameters) + in.DeepCopyInto(out) + return out +} diff --git a/apis/operationsmanagement/v1beta1/zz_generated.managed.go b/apis/operationsmanagement/v1beta1/zz_generated.managed.go new file mode 100644 index 000000000..d83ba7ffe --- /dev/null +++ b/apis/operationsmanagement/v1beta1/zz_generated.managed.go @@ -0,0 +1,74 @@ +/* +Copyright 2022 Upbound Inc. +*/ +// Code generated by angryjet. DO NOT EDIT. + +package v1beta1 + +import xpv1 "github.com/crossplane/crossplane-runtime/apis/common/v1" + +// GetCondition of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetProviderConfigReference of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +/* +GetProviderReference of this LogAnalyticsSolution. +Deprecated: Use GetProviderConfigReference. +*/ +func (mg *LogAnalyticsSolution) GetProviderReference() *xpv1.Reference { + return mg.Spec.ProviderReference +} + +// GetPublishConnectionDetailsTo of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetProviderConfigReference of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +/* +SetProviderReference of this LogAnalyticsSolution. +Deprecated: Use SetProviderConfigReference. +*/ +func (mg *LogAnalyticsSolution) SetProviderReference(r *xpv1.Reference) { + mg.Spec.ProviderReference = r +} + +// SetPublishConnectionDetailsTo of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} diff --git a/apis/operationsmanagement/v1beta1/zz_generated.managedlist.go b/apis/operationsmanagement/v1beta1/zz_generated.managedlist.go new file mode 100644 index 000000000..a26288718 --- /dev/null +++ b/apis/operationsmanagement/v1beta1/zz_generated.managedlist.go @@ -0,0 +1,17 @@ +/* +Copyright 2022 Upbound Inc. +*/ +// Code generated by angryjet. DO NOT EDIT. + +package v1beta1 + +import resource "github.com/crossplane/crossplane-runtime/pkg/resource" + +// GetItems of this LogAnalyticsSolutionList. +func (l *LogAnalyticsSolutionList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} diff --git a/apis/operationsmanagement/v1beta1/zz_generated.resolvers.go b/apis/operationsmanagement/v1beta1/zz_generated.resolvers.go new file mode 100644 index 000000000..0deeff28d --- /dev/null +++ b/apis/operationsmanagement/v1beta1/zz_generated.resolvers.go @@ -0,0 +1,74 @@ +/* +Copyright 2022 Upbound Inc. +*/ +// Code generated by angryjet. DO NOT EDIT. + +package v1beta1 + +import ( + "context" + reference "github.com/crossplane/crossplane-runtime/pkg/reference" + errors "github.com/pkg/errors" + v1beta1 "github.com/upbound/provider-azure/apis/azure/v1beta1" + v1beta11 "github.com/upbound/provider-azure/apis/operationalinsights/v1beta1" + resource "github.com/upbound/upjet/pkg/resource" + client "sigs.k8s.io/controller-runtime/pkg/client" +) + +// ResolveReferences of this LogAnalyticsSolution. +func (mg *LogAnalyticsSolution) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ResourceGroupName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ResourceGroupNameRef, + Selector: mg.Spec.ForProvider.ResourceGroupNameSelector, + To: reference.To{ + List: &v1beta1.ResourceGroupList{}, + Managed: &v1beta1.ResourceGroup{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ResourceGroupName") + } + mg.Spec.ForProvider.ResourceGroupName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ResourceGroupNameRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WorkspaceName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.WorkspaceNameRef, + Selector: mg.Spec.ForProvider.WorkspaceNameSelector, + To: reference.To{ + List: &v1beta11.WorkspaceList{}, + Managed: &v1beta11.Workspace{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.WorkspaceName") + } + mg.Spec.ForProvider.WorkspaceName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.WorkspaceNameRef = rsp.ResolvedReference + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.WorkspaceResourceID), + Extract: resource.ExtractResourceID(), + Reference: mg.Spec.ForProvider.WorkspaceResourceIDRef, + Selector: mg.Spec.ForProvider.WorkspaceResourceIDSelector, + To: reference.To{ + List: &v1beta11.WorkspaceList{}, + Managed: &v1beta11.Workspace{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.WorkspaceResourceID") + } + mg.Spec.ForProvider.WorkspaceResourceID = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.WorkspaceResourceIDRef = rsp.ResolvedReference + + return nil +} diff --git a/apis/operationsmanagement/v1beta1/zz_generated_terraformed.go b/apis/operationsmanagement/v1beta1/zz_generated_terraformed.go new file mode 100755 index 000000000..2f54c573b --- /dev/null +++ b/apis/operationsmanagement/v1beta1/zz_generated_terraformed.go @@ -0,0 +1,88 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +import ( + "github.com/pkg/errors" + + "github.com/upbound/upjet/pkg/resource" + "github.com/upbound/upjet/pkg/resource/json" +) + +// GetTerraformResourceType returns Terraform resource type for this LogAnalyticsSolution +func (mg *LogAnalyticsSolution) GetTerraformResourceType() string { + return "azurerm_log_analytics_solution" +} + +// GetConnectionDetailsMapping for this LogAnalyticsSolution +func (tr *LogAnalyticsSolution) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this LogAnalyticsSolution +func (tr *LogAnalyticsSolution) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this LogAnalyticsSolution +func (tr *LogAnalyticsSolution) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this LogAnalyticsSolution +func (tr *LogAnalyticsSolution) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this LogAnalyticsSolution +func (tr *LogAnalyticsSolution) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this LogAnalyticsSolution +func (tr *LogAnalyticsSolution) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// LateInitialize this LogAnalyticsSolution using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *LogAnalyticsSolution) LateInitialize(attrs []byte) (bool, error) { + params := &LogAnalyticsSolutionParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *LogAnalyticsSolution) GetTerraformSchemaVersion() int { + return 1 +} diff --git a/apis/operationsmanagement/v1beta1/zz_groupversion_info.go b/apis/operationsmanagement/v1beta1/zz_groupversion_info.go new file mode 100755 index 000000000..f7cd47ee8 --- /dev/null +++ b/apis/operationsmanagement/v1beta1/zz_groupversion_info.go @@ -0,0 +1,32 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +// +kubebuilder:object:generate=true +// +groupName=operationsmanagement.azure.upbound.io +// +versionName=v1beta1 +package v1beta1 + +import ( + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/scheme" +) + +// Package type metadata. +const ( + CRDGroup = "operationsmanagement.azure.upbound.io" + CRDVersion = "v1beta1" +) + +var ( + // CRDGroupVersion is the API Group Version used to register the objects + CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion} + + // SchemeBuilder is used to add go types to the GroupVersionKind scheme + SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion} + + // AddToScheme adds the types in this group-version to the given scheme. + AddToScheme = SchemeBuilder.AddToScheme +) diff --git a/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go b/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go new file mode 100755 index 000000000..1c155dbc4 --- /dev/null +++ b/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go @@ -0,0 +1,149 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +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 LogAnalyticsSolutionObservation struct { + ID *string `json:"id,omitempty" tf:"id,omitempty"` + + // A plan block as documented below. + // +kubebuilder:validation:Required + Plan []PlanObservation `json:"plan,omitempty" tf:"plan,omitempty"` +} + +type LogAnalyticsSolutionParameters struct { + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + Location *string `json:"location" tf:"location,omitempty"` + + // A plan block as documented below. + // +kubebuilder:validation:Required + Plan []PlanParameters `json:"plan" tf:"plan,omitempty"` + + // The name of the resource group in which the Log Analytics solution is created. Changing this forces a new resource to be created. Note: The solution and its related workspace can only exist in the same resource group. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup + // +kubebuilder:validation:Optional + ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"` + + // Reference to a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"` + + // Selector for a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` + + // Specifies the name of the solution to be deployed. See here for options.Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + SolutionName *string `json:"solutionName" tf:"solution_name,omitempty"` + + // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` + + // The full name of the Log Analytics workspace with which the solution will be linked. Changing this forces a new resource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace + // +kubebuilder:validation:Optional + WorkspaceName *string `json:"workspaceName,omitempty" tf:"workspace_name,omitempty"` + + // Reference to a Workspace in operationalinsights to populate workspaceName. + // +kubebuilder:validation:Optional + WorkspaceNameRef *v1.Reference `json:"workspaceNameRef,omitempty" tf:"-"` + + // Selector for a Workspace in operationalinsights to populate workspaceName. + // +kubebuilder:validation:Optional + WorkspaceNameSelector *v1.Selector `json:"workspaceNameSelector,omitempty" tf:"-"` + + // The full resource ID of the Log Analytics workspace with which the solution will be linked. Changing this forces a new resource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/operationalinsights/v1beta1.Workspace + // +crossplane:generate:reference:extractor=github.com/upbound/upjet/pkg/resource.ExtractResourceID() + // +kubebuilder:validation:Optional + WorkspaceResourceID *string `json:"workspaceResourceId,omitempty" tf:"workspace_resource_id,omitempty"` + + // Reference to a Workspace in operationalinsights to populate workspaceResourceId. + // +kubebuilder:validation:Optional + WorkspaceResourceIDRef *v1.Reference `json:"workspaceResourceIdRef,omitempty" tf:"-"` + + // Selector for a Workspace in operationalinsights to populate workspaceResourceId. + // +kubebuilder:validation:Optional + WorkspaceResourceIDSelector *v1.Selector `json:"workspaceResourceIdSelector,omitempty" tf:"-"` +} + +type PlanObservation struct { + Name *string `json:"name,omitempty" tf:"name,omitempty"` +} + +type PlanParameters struct { + + // The product name of the solution. For example OMSGallery/Containers. Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + Product *string `json:"product" tf:"product,omitempty"` + + // A promotion code to be used with the solution. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional + PromotionCode *string `json:"promotionCode,omitempty" tf:"promotion_code,omitempty"` + + // The publisher of the solution. For example Microsoft. Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + Publisher *string `json:"publisher" tf:"publisher,omitempty"` +} + +// LogAnalyticsSolutionSpec defines the desired state of LogAnalyticsSolution +type LogAnalyticsSolutionSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider LogAnalyticsSolutionParameters `json:"forProvider"` +} + +// LogAnalyticsSolutionStatus defines the observed state of LogAnalyticsSolution. +type LogAnalyticsSolutionStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider LogAnalyticsSolutionObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsSolution is the Schema for the LogAnalyticsSolutions API. Manages a Log Analytics (formally Operational Insights) Solution. +// +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:subresource:status +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure} +type LogAnalyticsSolution struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec LogAnalyticsSolutionSpec `json:"spec"` + Status LogAnalyticsSolutionStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// LogAnalyticsSolutionList contains a list of LogAnalyticsSolutions +type LogAnalyticsSolutionList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []LogAnalyticsSolution `json:"items"` +} + +// Repository type metadata. +var ( + LogAnalyticsSolution_Kind = "LogAnalyticsSolution" + LogAnalyticsSolution_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: LogAnalyticsSolution_Kind}.String() + LogAnalyticsSolution_KindAPIVersion = LogAnalyticsSolution_Kind + "." + CRDGroupVersion.String() + LogAnalyticsSolution_GroupVersionKind = CRDGroupVersion.WithKind(LogAnalyticsSolution_Kind) +) + +func init() { + SchemeBuilder.Register(&LogAnalyticsSolution{}, &LogAnalyticsSolutionList{}) +} diff --git a/apis/portal/v1beta1/zz_dashboard_types.go b/apis/portal/v1beta1/zz_dashboard_types.go new file mode 100755 index 000000000..052d976a0 --- /dev/null +++ b/apis/portal/v1beta1/zz_dashboard_types.go @@ -0,0 +1,101 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +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 DashboardObservation struct { + + // The ID of the Dashboard. + ID *string `json:"id,omitempty" tf:"id,omitempty"` +} + +type DashboardParameters struct { + + // JSON data representing dashboard body. See above for details on how to obtain this from the Portal. + // +kubebuilder:validation:Optional + DashboardProperties *string `json:"dashboardProperties,omitempty" tf:"dashboard_properties,omitempty"` + + // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + Location *string `json:"location" tf:"location,omitempty"` + + // Specifies the name of the Shared Dashboard. Changing this forces a new resource to be created. + // +kubebuilder:validation:Required + Name *string `json:"name" tf:"name,omitempty"` + + // The name of the resource group in which to create the dashboard. Changing this forces a new resource to be created. + // +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup + // +kubebuilder:validation:Optional + ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"` + + // Reference to a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"` + + // Selector for a ResourceGroup in azure to populate resourceGroupName. + // +kubebuilder:validation:Optional + ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` + + // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional + Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` +} + +// DashboardSpec defines the desired state of Dashboard +type DashboardSpec struct { + v1.ResourceSpec `json:",inline"` + ForProvider DashboardParameters `json:"forProvider"` +} + +// DashboardStatus defines the observed state of Dashboard. +type DashboardStatus struct { + v1.ResourceStatus `json:",inline"` + AtProvider DashboardObservation `json:"atProvider,omitempty"` +} + +// +kubebuilder:object:root=true + +// Dashboard is the Schema for the Dashboards API. Manages a shared dashboard in the Azure Portal. +// +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:subresource:status +// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure} +type Dashboard struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec DashboardSpec `json:"spec"` + Status DashboardStatus `json:"status,omitempty"` +} + +// +kubebuilder:object:root=true + +// DashboardList contains a list of Dashboards +type DashboardList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []Dashboard `json:"items"` +} + +// Repository type metadata. +var ( + Dashboard_Kind = "Dashboard" + Dashboard_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: Dashboard_Kind}.String() + Dashboard_KindAPIVersion = Dashboard_Kind + "." + CRDGroupVersion.String() + Dashboard_GroupVersionKind = CRDGroupVersion.WithKind(Dashboard_Kind) +) + +func init() { + SchemeBuilder.Register(&Dashboard{}, &DashboardList{}) +} diff --git a/apis/portal/v1beta1/zz_generated.deepcopy.go b/apis/portal/v1beta1/zz_generated.deepcopy.go new file mode 100644 index 000000000..9b0f99251 --- /dev/null +++ b/apis/portal/v1beta1/zz_generated.deepcopy.go @@ -0,0 +1,188 @@ +//go:build !ignore_autogenerated +// +build !ignore_autogenerated + +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by controller-gen. DO NOT EDIT. + +package v1beta1 + +import ( + "github.com/crossplane/crossplane-runtime/apis/common/v1" + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Dashboard) DeepCopyInto(out *Dashboard) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ObjectMeta.DeepCopyInto(&out.ObjectMeta) + in.Spec.DeepCopyInto(&out.Spec) + in.Status.DeepCopyInto(&out.Status) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dashboard. +func (in *Dashboard) DeepCopy() *Dashboard { + if in == nil { + return nil + } + out := new(Dashboard) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *Dashboard) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DashboardList) DeepCopyInto(out *DashboardList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]Dashboard, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardList. +func (in *DashboardList) DeepCopy() *DashboardList { + if in == nil { + return nil + } + out := new(DashboardList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *DashboardList) DeepCopyObject() runtime.Object { + if c := in.DeepCopy(); c != nil { + return c + } + return nil +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DashboardObservation) DeepCopyInto(out *DashboardObservation) { + *out = *in + if in.ID != nil { + in, out := &in.ID, &out.ID + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardObservation. +func (in *DashboardObservation) DeepCopy() *DashboardObservation { + if in == nil { + return nil + } + out := new(DashboardObservation) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DashboardParameters) DeepCopyInto(out *DashboardParameters) { + *out = *in + if in.DashboardProperties != nil { + in, out := &in.DashboardProperties, &out.DashboardProperties + *out = new(string) + **out = **in + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.ResourceGroupName != nil { + in, out := &in.ResourceGroupName, &out.ResourceGroupName + *out = new(string) + **out = **in + } + if in.ResourceGroupNameRef != nil { + in, out := &in.ResourceGroupNameRef, &out.ResourceGroupNameRef + *out = new(v1.Reference) + (*in).DeepCopyInto(*out) + } + if in.ResourceGroupNameSelector != nil { + in, out := &in.ResourceGroupNameSelector, &out.ResourceGroupNameSelector + *out = new(v1.Selector) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]*string, len(*in)) + for key, val := range *in { + var outVal *string + if val == nil { + (*out)[key] = nil + } else { + in, out := &val, &outVal + *out = new(string) + **out = **in + } + (*out)[key] = outVal + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardParameters. +func (in *DashboardParameters) DeepCopy() *DashboardParameters { + if in == nil { + return nil + } + out := new(DashboardParameters) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DashboardSpec) DeepCopyInto(out *DashboardSpec) { + *out = *in + in.ResourceSpec.DeepCopyInto(&out.ResourceSpec) + in.ForProvider.DeepCopyInto(&out.ForProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardSpec. +func (in *DashboardSpec) DeepCopy() *DashboardSpec { + if in == nil { + return nil + } + out := new(DashboardSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DashboardStatus) DeepCopyInto(out *DashboardStatus) { + *out = *in + in.ResourceStatus.DeepCopyInto(&out.ResourceStatus) + in.AtProvider.DeepCopyInto(&out.AtProvider) +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardStatus. +func (in *DashboardStatus) DeepCopy() *DashboardStatus { + if in == nil { + return nil + } + out := new(DashboardStatus) + in.DeepCopyInto(out) + return out +} diff --git a/apis/portal/v1beta1/zz_generated.managed.go b/apis/portal/v1beta1/zz_generated.managed.go new file mode 100644 index 000000000..58b8ffdb5 --- /dev/null +++ b/apis/portal/v1beta1/zz_generated.managed.go @@ -0,0 +1,74 @@ +/* +Copyright 2022 Upbound Inc. +*/ +// Code generated by angryjet. DO NOT EDIT. + +package v1beta1 + +import xpv1 "github.com/crossplane/crossplane-runtime/apis/common/v1" + +// GetCondition of this Dashboard. +func (mg *Dashboard) GetCondition(ct xpv1.ConditionType) xpv1.Condition { + return mg.Status.GetCondition(ct) +} + +// GetDeletionPolicy of this Dashboard. +func (mg *Dashboard) GetDeletionPolicy() xpv1.DeletionPolicy { + return mg.Spec.DeletionPolicy +} + +// GetProviderConfigReference of this Dashboard. +func (mg *Dashboard) GetProviderConfigReference() *xpv1.Reference { + return mg.Spec.ProviderConfigReference +} + +/* +GetProviderReference of this Dashboard. +Deprecated: Use GetProviderConfigReference. +*/ +func (mg *Dashboard) GetProviderReference() *xpv1.Reference { + return mg.Spec.ProviderReference +} + +// GetPublishConnectionDetailsTo of this Dashboard. +func (mg *Dashboard) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo { + return mg.Spec.PublishConnectionDetailsTo +} + +// GetWriteConnectionSecretToReference of this Dashboard. +func (mg *Dashboard) GetWriteConnectionSecretToReference() *xpv1.SecretReference { + return mg.Spec.WriteConnectionSecretToReference +} + +// SetConditions of this Dashboard. +func (mg *Dashboard) SetConditions(c ...xpv1.Condition) { + mg.Status.SetConditions(c...) +} + +// SetDeletionPolicy of this Dashboard. +func (mg *Dashboard) SetDeletionPolicy(r xpv1.DeletionPolicy) { + mg.Spec.DeletionPolicy = r +} + +// SetProviderConfigReference of this Dashboard. +func (mg *Dashboard) SetProviderConfigReference(r *xpv1.Reference) { + mg.Spec.ProviderConfigReference = r +} + +/* +SetProviderReference of this Dashboard. +Deprecated: Use SetProviderConfigReference. +*/ +func (mg *Dashboard) SetProviderReference(r *xpv1.Reference) { + mg.Spec.ProviderReference = r +} + +// SetPublishConnectionDetailsTo of this Dashboard. +func (mg *Dashboard) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo) { + mg.Spec.PublishConnectionDetailsTo = r +} + +// SetWriteConnectionSecretToReference of this Dashboard. +func (mg *Dashboard) SetWriteConnectionSecretToReference(r *xpv1.SecretReference) { + mg.Spec.WriteConnectionSecretToReference = r +} diff --git a/apis/portal/v1beta1/zz_generated.managedlist.go b/apis/portal/v1beta1/zz_generated.managedlist.go new file mode 100644 index 000000000..0a9ffde57 --- /dev/null +++ b/apis/portal/v1beta1/zz_generated.managedlist.go @@ -0,0 +1,17 @@ +/* +Copyright 2022 Upbound Inc. +*/ +// Code generated by angryjet. DO NOT EDIT. + +package v1beta1 + +import resource "github.com/crossplane/crossplane-runtime/pkg/resource" + +// GetItems of this DashboardList. +func (l *DashboardList) GetItems() []resource.Managed { + items := make([]resource.Managed, len(l.Items)) + for i := range l.Items { + items[i] = &l.Items[i] + } + return items +} diff --git a/apis/portal/v1beta1/zz_generated.resolvers.go b/apis/portal/v1beta1/zz_generated.resolvers.go new file mode 100644 index 000000000..ee772d6e1 --- /dev/null +++ b/apis/portal/v1beta1/zz_generated.resolvers.go @@ -0,0 +1,40 @@ +/* +Copyright 2022 Upbound Inc. +*/ +// Code generated by angryjet. DO NOT EDIT. + +package v1beta1 + +import ( + "context" + reference "github.com/crossplane/crossplane-runtime/pkg/reference" + errors "github.com/pkg/errors" + v1beta1 "github.com/upbound/provider-azure/apis/azure/v1beta1" + client "sigs.k8s.io/controller-runtime/pkg/client" +) + +// ResolveReferences of this Dashboard. +func (mg *Dashboard) ResolveReferences(ctx context.Context, c client.Reader) error { + r := reference.NewAPIResolver(c, mg) + + var rsp reference.ResolutionResponse + var err error + + rsp, err = r.Resolve(ctx, reference.ResolutionRequest{ + CurrentValue: reference.FromPtrValue(mg.Spec.ForProvider.ResourceGroupName), + Extract: reference.ExternalName(), + Reference: mg.Spec.ForProvider.ResourceGroupNameRef, + Selector: mg.Spec.ForProvider.ResourceGroupNameSelector, + To: reference.To{ + List: &v1beta1.ResourceGroupList{}, + Managed: &v1beta1.ResourceGroup{}, + }, + }) + if err != nil { + return errors.Wrap(err, "mg.Spec.ForProvider.ResourceGroupName") + } + mg.Spec.ForProvider.ResourceGroupName = reference.ToPtrValue(rsp.ResolvedValue) + mg.Spec.ForProvider.ResourceGroupNameRef = rsp.ResolvedReference + + return nil +} diff --git a/apis/portal/v1beta1/zz_generated_terraformed.go b/apis/portal/v1beta1/zz_generated_terraformed.go new file mode 100755 index 000000000..562e38c21 --- /dev/null +++ b/apis/portal/v1beta1/zz_generated_terraformed.go @@ -0,0 +1,88 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package v1beta1 + +import ( + "github.com/pkg/errors" + + "github.com/upbound/upjet/pkg/resource" + "github.com/upbound/upjet/pkg/resource/json" +) + +// GetTerraformResourceType returns Terraform resource type for this Dashboard +func (mg *Dashboard) GetTerraformResourceType() string { + return "azurerm_portal_dashboard" +} + +// GetConnectionDetailsMapping for this Dashboard +func (tr *Dashboard) GetConnectionDetailsMapping() map[string]string { + return nil +} + +// GetObservation of this Dashboard +func (tr *Dashboard) GetObservation() (map[string]any, error) { + o, err := json.TFParser.Marshal(tr.Status.AtProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(o, &base) +} + +// SetObservation for this Dashboard +func (tr *Dashboard) SetObservation(obs map[string]any) error { + p, err := json.TFParser.Marshal(obs) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Status.AtProvider) +} + +// GetID returns ID of underlying Terraform resource of this Dashboard +func (tr *Dashboard) GetID() string { + if tr.Status.AtProvider.ID == nil { + return "" + } + return *tr.Status.AtProvider.ID +} + +// GetParameters of this Dashboard +func (tr *Dashboard) GetParameters() (map[string]any, error) { + p, err := json.TFParser.Marshal(tr.Spec.ForProvider) + if err != nil { + return nil, err + } + base := map[string]any{} + return base, json.TFParser.Unmarshal(p, &base) +} + +// SetParameters for this Dashboard +func (tr *Dashboard) SetParameters(params map[string]any) error { + p, err := json.TFParser.Marshal(params) + if err != nil { + return err + } + return json.TFParser.Unmarshal(p, &tr.Spec.ForProvider) +} + +// LateInitialize this Dashboard using its observed tfState. +// returns True if there are any spec changes for the resource. +func (tr *Dashboard) LateInitialize(attrs []byte) (bool, error) { + params := &DashboardParameters{} + if err := json.TFParser.Unmarshal(attrs, params); err != nil { + return false, errors.Wrap(err, "failed to unmarshal Terraform state parameters for late-initialization") + } + opts := []resource.GenericLateInitializerOption{resource.WithZeroValueJSONOmitEmptyFilter(resource.CNameWildcard)} + + li := resource.NewGenericLateInitializer(opts...) + return li.LateInitialize(&tr.Spec.ForProvider, params) +} + +// GetTerraformSchemaVersion returns the associated Terraform schema version +func (tr *Dashboard) GetTerraformSchemaVersion() int { + return 0 +} diff --git a/apis/portal/v1beta1/zz_groupversion_info.go b/apis/portal/v1beta1/zz_groupversion_info.go new file mode 100755 index 000000000..b4a796956 --- /dev/null +++ b/apis/portal/v1beta1/zz_groupversion_info.go @@ -0,0 +1,32 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +// +kubebuilder:object:generate=true +// +groupName=portal.azure.upbound.io +// +versionName=v1beta1 +package v1beta1 + +import ( + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/scheme" +) + +// Package type metadata. +const ( + CRDGroup = "portal.azure.upbound.io" + CRDVersion = "v1beta1" +) + +var ( + // CRDGroupVersion is the API Group Version used to register the objects + CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion} + + // SchemeBuilder is used to add go types to the GroupVersionKind scheme + SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion} + + // AddToScheme adds the types in this group-version to the given scheme. + AddToScheme = SchemeBuilder.AddToScheme +) diff --git a/apis/zz_register.go b/apis/zz_register.go index d7cede251..d2662d27a 100755 --- a/apis/zz_register.go +++ b/apis/zz_register.go @@ -53,6 +53,8 @@ import ( v1beta1network "github.com/upbound/provider-azure/apis/network/v1beta1" v1beta1notificationhubs "github.com/upbound/provider-azure/apis/notificationhubs/v1beta1" v1beta1operationalinsights "github.com/upbound/provider-azure/apis/operationalinsights/v1beta1" + v1beta1operationsmanagement "github.com/upbound/provider-azure/apis/operationsmanagement/v1beta1" + v1beta1portal "github.com/upbound/provider-azure/apis/portal/v1beta1" v1beta1powerbidedicated "github.com/upbound/provider-azure/apis/powerbidedicated/v1beta1" v1beta1purview "github.com/upbound/provider-azure/apis/purview/v1beta1" v1beta1recoveryservices "github.com/upbound/provider-azure/apis/recoveryservices/v1beta1" @@ -115,6 +117,8 @@ func init() { v1beta1network.SchemeBuilder.AddToScheme, v1beta1notificationhubs.SchemeBuilder.AddToScheme, v1beta1operationalinsights.SchemeBuilder.AddToScheme, + v1beta1operationsmanagement.SchemeBuilder.AddToScheme, + v1beta1portal.SchemeBuilder.AddToScheme, v1beta1powerbidedicated.SchemeBuilder.AddToScheme, v1beta1purview.SchemeBuilder.AddToScheme, v1beta1recoveryservices.SchemeBuilder.AddToScheme, diff --git a/config/automation/config.go b/config/automation/config.go new file mode 100644 index 000000000..ebc4c07a2 --- /dev/null +++ b/config/automation/config.go @@ -0,0 +1,30 @@ +/* +Copyright 2021 The Crossplane Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package automation + +import ( + "github.com/upbound/upjet/pkg/config" +) + +// Configure configures automation group +func Configure(p *config.Provider) { + p.AddResourceConfigurator("azurerm_automation_account", func(r *config.Resource) { + r.LateInitializer = config.LateInitializer{ + IgnoredFields: []string{"encryption"}, + } + }) +} diff --git a/config/externalname.go b/config/externalname.go index 460e45b3f..cf9e123cf 100644 --- a/config/externalname.go +++ b/config/externalname.go @@ -304,6 +304,27 @@ var ExternalNameConfigs = map[string]config.ExternalName{ // operationalinsights "azurerm_log_analytics_workspace": config.TemplatedStringAsIdentifier("name", "/subscriptions/{{ .setup.configuration.subscription_id }}/resourceGroups/{{ .parameters.resource_group_name }}/providers/Microsoft.OperationalInsights/workspaces/{{ .external_name }}"), + // Log Analytics Data Export Rule can be imported using the resource id + // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/workspaces/workspace1/dataExports/dataExport1 + "azurerm_log_analytics_data_export_rule": config.TemplatedStringAsIdentifier("name", "{{ .parameters.workspace_resource_id }}/dataExports/{{ .external_name }}"), + // Log Analytics Windows Event DataSources can be imported using the resource id + // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/workspaces/workspace1/dataSources/datasource1 + "azurerm_log_analytics_datasource_windows_event": config.TemplatedStringAsIdentifier("name", "/subscriptions/{{ .setup.configuration.subscription_id }}/resourceGroups/{{ .parameters.resource_group_name }}/providers/Microsoft.OperationalInsights/workspaces/{{ .parameters.workspace_name }}/dataSources/{{ .external_name }}"), + // Log Analytics Windows Performance Counter DataSources can be imported using the resource id + // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/workspaces/workspace1/dataSources/datasource1 + "azurerm_log_analytics_datasource_windows_performance_counter": config.TemplatedStringAsIdentifier("name", "/subscriptions/{{ .setup.configuration.subscription_id }}/resourceGroups/{{ .parameters.resource_group_name }}/providers/Microsoft.OperationalInsights/workspaces/{{ .parameters.workspace_name }}/dataSources/{{ .external_name }}"), + // Log Analytics Workspaces can be imported using the resource id + // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.OperationalInsights/workspaces/workspace1/linkedServices/Automation + "azurerm_log_analytics_linked_service": config.TemplatedStringAsIdentifier("", "{{ .parameters.workspace_id }}/linkedServices/{{ .external_name }}"), + // Log Analytics Linked Storage Accounts can be imported using the resource id + // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/workspaces/workspace1/linkedStorageAccounts/{dataSourceType} + "azurerm_log_analytics_linked_storage_account": config.IdentifierFromProvider, + // Log Analytics Saved Searches can be imported using the resource id + // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.OperationalInsights/workspaces/workspace1/savedSearches/search1 + "azurerm_log_analytics_saved_search": config.TemplatedStringAsIdentifier("name", "{{ .parameters.log_analytics_workspace_id }}/savedSearches/{{ .external_name }}"), + // Log Analytics Solutions can be imported using the resource id + // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.OperationsManagement/solutions/solution1 + "azurerm_log_analytics_solution": config.IdentifierFromProvider, // insights "azurerm_application_insights": config.TemplatedStringAsIdentifier("name", "/subscriptions/{{ .setup.configuration.subscription_id }}/resourceGroups/{{ .parameters.resource_group_name }}/providers/Microsoft.Insights/components/{{ .external_name }}"), @@ -770,6 +791,12 @@ var ExternalNameConfigs = map[string]config.ExternalName{ // Data Factory Azure-SSIS Integration Runtimes can be imported using the resource id // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example/providers/Microsoft.DataFactory/factories/example/integrationruntimes/example "azurerm_data_factory_integration_runtime_azure_ssis": config.TemplatedStringAsIdentifier("name", "{{ .parameters.data_factory_id }}/integrationruntimes/{{ .external_name }}"), + + // portal + // + // Dashboards can be imported using the resource id + // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Portal/dashboards/00000000-0000-0000-0000-000000000000 + "azurerm_portal_dashboard": config.IdentifierFromProvider, } func keyVaultURLIDConf(resourceType string) config.ExternalName { diff --git a/config/externalnamenottested.go b/config/externalnamenottested.go index 32cfe953e..d07191a72 100644 --- a/config/externalnamenottested.go +++ b/config/externalnamenottested.go @@ -321,33 +321,9 @@ var ExternalNameNotTestedConfigs = map[string]config.ExternalName{ // Log Analytics Cluster Customer Managed Keys can be imported using the resource id // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/clusters/cluster1 "azurerm_log_analytics_cluster_customer_managed_key": config.TemplatedStringAsIdentifier("", "{{ .parameters.log_analytics_cluster_id }}"), - // Log Analytics Data Export Rule can be imported using the resource id - // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/workspaces/workspace1/dataExports/dataExport1 - "azurerm_log_analytics_data_export_rule": config.TemplatedStringAsIdentifier("name", "{{ .parameters.workspace_resource_id }}/dataExports/{{ .external_name }}"), - // Log Analytics Windows Event DataSources can be imported using the resource id - // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/workspaces/workspace1/dataSources/datasource1 - "azurerm_log_analytics_datasource_windows_event": config.TemplatedStringAsIdentifier("name", "/subscriptions/{{ .setup.configuration.subscription_id }}/resourceGroups/{{ .parameters.resource_group_name }}/providers/Microsoft.OperationalInsights/workspaces/{{ .parameters.workspace_name }}/dataSources/{{ .external_name }}"), - // Log Analytics Windows Performance Counter DataSources can be imported using the resource id - // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/workspaces/workspace1/dataSources/datasource1 - "azurerm_log_analytics_datasource_windows_performance_counter": config.TemplatedStringAsIdentifier("name", "/subscriptions/{{ .setup.configuration.subscription_id }}/resourceGroups/{{ .parameters.resource_group_name }}/providers/Microsoft.OperationalInsights/workspaces/{{ .parameters.workspace_name }}/dataSources/{{ .external_name }}"), - // Log Analytics Workspaces can be imported using the resource id - // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.OperationalInsights/workspaces/workspace1/linkedServices/Automation - "azurerm_log_analytics_linked_service": config.TemplatedStringAsIdentifier("", "{{ .parameters.workspace_id }}/linkedServices/{{ .external_name }}"), - // Log Analytics Linked Storage Accounts can be imported using the resource id - // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.OperationalInsights/workspaces/workspace1/linkedStorageAccounts/{dataSourceType} - "azurerm_log_analytics_linked_storage_account": config.TemplatedStringAsIdentifier("", "{{ .parameters.workspace_resource_id }}/linkedStorageAccounts/{{ .external_name }}"), - // Log Analytics Saved Searches can be imported using the resource id - // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.OperationalInsights/workspaces/workspace1/savedSearches/search1 - "azurerm_log_analytics_saved_search": config.TemplatedStringAsIdentifier("name", "{{ .parameters.log_analytics_workspace_id }}/savedSearches/{{ .external_name }}"), - // Log Analytics Solutions can be imported using the resource id - // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.OperationsManagement/solutions/solution1 - "azurerm_log_analytics_solution": config.TemplatedStringAsIdentifier("solution_name", "/subscriptions/{{ .setup.configuration.subscription_id }}/resourceGroups/{{ .parameters.resource_group_name }}/providers/Microsoft.OperationsManagement/solutions/{{ .external_name }}"), // portal // - // Dashboards can be imported using the resource id - // /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Portal/dashboards/00000000-0000-0000-0000-000000000000 - "azurerm_portal_dashboard": config.IdentifierFromProvider, // Portal Tenant Configurations can be imported using the resource id // /providers/Microsoft.Portal/tenantConfigurations/default "azurerm_portal_tenant_configuration": config.IdentifierFromProvider, diff --git a/config/operationalinsights/config.go b/config/operationalinsights/config.go index e0ce97044..170223351 100644 --- a/config/operationalinsights/config.go +++ b/config/operationalinsights/config.go @@ -17,6 +17,8 @@ limitations under the License. package operationalinsights import ( + "github.com/upbound/provider-azure/apis/rconfig" + "github.com/upbound/upjet/pkg/config" ) @@ -25,4 +27,11 @@ func Configure(p *config.Provider) { p.AddResourceConfigurator("azurerm_log_analytics_workspace", func(r *config.Resource) { r.Kind = "Workspace" }) + + p.AddResourceConfigurator("azurerm_log_analytics_linked_storage_account", func(r *config.Resource) { + r.References["storage_account_ids"] = config.Reference{ + Type: "github.com/upbound/provider-azure/apis/storage/v1beta1.Account", + Extractor: rconfig.ExtractResourceIDFuncPath, + } + }) } diff --git a/config/provider.go b/config/provider.go index 6b2b9a9df..1a1a369a0 100644 --- a/config/provider.go +++ b/config/provider.go @@ -26,6 +26,7 @@ import ( "github.com/upbound/provider-azure/config/alertsmanagement" "github.com/upbound/provider-azure/config/apimanagement" "github.com/upbound/provider-azure/config/authorization" + "github.com/upbound/provider-azure/config/automation" "github.com/upbound/provider-azure/config/base" "github.com/upbound/provider-azure/config/cache" "github.com/upbound/provider-azure/config/common" @@ -183,6 +184,7 @@ func GetProvider() *tjconfig.Provider { consumption.Configure, streamanalytics.Configure, costmanagement.Configure, + automation.Configure, } { configure(pc) } diff --git a/examples-generated/operationalinsights/loganalyticsdataexportrule.yaml b/examples-generated/operationalinsights/loganalyticsdataexportrule.yaml new file mode 100644 index 000000000..0d20696a0 --- /dev/null +++ b/examples-generated/operationalinsights/loganalyticsdataexportrule.yaml @@ -0,0 +1,77 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsDataExportRule +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdataexportrule + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + destinationResourceIdSelector: + matchLabels: + testing.upbound.io/example-name: example + enabled: true + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + tableNames: + - Heartbeat + workspaceResourceIdSelector: + matchLabels: + testing.upbound.io/example-name: example + +--- + +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdataexportrule + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + retentionInDays: 30 + sku: PerGB2018 + +--- + +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdataexportrule + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + +--- + +apiVersion: storage.azure.upbound.io/v1beta1 +kind: Account +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdataexportrule + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + accountReplicationType: LRS + accountTier: Standard + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + +--- + diff --git a/examples-generated/operationalinsights/loganalyticsdatasourcewindowsevent.yaml b/examples-generated/operationalinsights/loganalyticsdatasourcewindowsevent.yaml new file mode 100644 index 000000000..5ad6cd31c --- /dev/null +++ b/examples-generated/operationalinsights/loganalyticsdatasourcewindowsevent.yaml @@ -0,0 +1,54 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsDataSourceWindowsEvent +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsevent + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + eventLogName: Application + eventTypes: + - Error + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + workspaceNameSelector: + matchLabels: + testing.upbound.io/example-name: example + +--- + +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsevent + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + sku: PerGB2018 + +--- + +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsevent + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + +--- + diff --git a/examples-generated/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml b/examples-generated/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml new file mode 100644 index 000000000..c4a9adb67 --- /dev/null +++ b/examples-generated/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml @@ -0,0 +1,55 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsDataSourceWindowsPerformanceCounter +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsperformancecounter + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + counterName: CPU + instanceName: '*' + intervalSeconds: 10 + objectName: CPU + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + workspaceNameSelector: + matchLabels: + testing.upbound.io/example-name: example + +--- + +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsperformancecounter + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + sku: PerGB2018 + +--- + +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsperformancecounter + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + +--- + diff --git a/examples-generated/operationalinsights/loganalyticslinkedservice.yaml b/examples-generated/operationalinsights/loganalyticslinkedservice.yaml new file mode 100644 index 000000000..be0aaa33c --- /dev/null +++ b/examples-generated/operationalinsights/loganalyticslinkedservice.yaml @@ -0,0 +1,75 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsLinkedService +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedservice + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + readAccessIdSelector: + matchLabels: + testing.upbound.io/example-name: example + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + workspaceIdSelector: + matchLabels: + testing.upbound.io/example-name: example + +--- + +apiVersion: automation.azure.upbound.io/v1beta1 +kind: Account +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedservice + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + skuName: Basic + tags: + environment: development + +--- + +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedservice + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + retentionInDays: 30 + sku: PerGB2018 + +--- + +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedservice + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + +--- + diff --git a/examples-generated/operationalinsights/loganalyticslinkedstorageaccount.yaml b/examples-generated/operationalinsights/loganalyticslinkedstorageaccount.yaml new file mode 100644 index 000000000..51965a6e9 --- /dev/null +++ b/examples-generated/operationalinsights/loganalyticslinkedstorageaccount.yaml @@ -0,0 +1,73 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsLinkedStorageAccount +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedstorageaccount + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + dataSourceType: CustomLogs + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + storageAccountIdsRefs: + - name: example + workspaceResourceIdSelector: + matchLabels: + testing.upbound.io/example-name: example + +--- + +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedstorageaccount + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + sku: PerGB2018 + +--- + +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedstorageaccount + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + +--- + +apiVersion: storage.azure.upbound.io/v1beta1 +kind: Account +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedstorageaccount + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + accountReplicationType: GRS + accountTier: Standard + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + +--- + diff --git a/examples-generated/operationalinsights/loganalyticssavedsearch.yaml b/examples-generated/operationalinsights/loganalyticssavedsearch.yaml new file mode 100644 index 000000000..55d976fb4 --- /dev/null +++ b/examples-generated/operationalinsights/loganalyticssavedsearch.yaml @@ -0,0 +1,52 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsSavedSearch +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticssavedsearch + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + category: exampleCategory + displayName: exampleDisplayName + logAnalyticsWorkspaceIdSelector: + matchLabels: + testing.upbound.io/example-name: example + query: exampleQuery + +--- + +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticssavedsearch + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + retentionInDays: 30 + sku: PerGB2018 + +--- + +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticssavedsearch + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + +--- + diff --git a/examples-generated/operationsmanagement/loganalyticssolution.yaml b/examples-generated/operationsmanagement/loganalyticssolution.yaml new file mode 100644 index 000000000..e5e39f66f --- /dev/null +++ b/examples-generated/operationsmanagement/loganalyticssolution.yaml @@ -0,0 +1,59 @@ +apiVersion: operationsmanagement.azure.upbound.io/v1beta1 +kind: LogAnalyticsSolution +metadata: + annotations: + meta.upbound.io/example-id: operationsmanagement/v1beta1/loganalyticssolution + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + plan: + - product: OMSGallery/ContainerInsights + publisher: Microsoft + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + solutionName: ContainerInsights + workspaceNameSelector: + matchLabels: + testing.upbound.io/example-name: example + workspaceResourceIdSelector: + matchLabels: + testing.upbound.io/example-name: example + +--- + +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationsmanagement/v1beta1/loganalyticssolution + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + sku: PerGB2018 + +--- + +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationsmanagement/v1beta1/loganalyticssolution + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + +--- + diff --git a/examples-generated/portal/dashboard.yaml b/examples-generated/portal/dashboard.yaml new file mode 100644 index 000000000..bb96a8ae7 --- /dev/null +++ b/examples-generated/portal/dashboard.yaml @@ -0,0 +1,79 @@ +apiVersion: portal.azure.upbound.io/v1beta1 +kind: Dashboard +metadata: + annotations: + meta.upbound.io/example-id: portal/v1beta1/dashboard + labels: + testing.upbound.io/example-name: my-board + name: my-board +spec: + forProvider: + dashboardProperties: "{\n \"lenses\": {\n \"0\": {\n \"order\": + 0,\n \"parts\": {\n \"0\": {\n \"position\": + {\n \"x\": 0,\n \"y\": 0,\n \"rowSpan\": + 2,\n \"colSpan\": 3\n },\n \"metadata\": + {\n \"inputs\": [],\n \"type\": + \"Extension/HubsExtension/PartType/MarkdownPart\",\n \"settings\": + {\n \"content\": {\n \"settings\": + {\n \"content\": \"${var.md_content}\",\n + \ \"subtitle\": \"\",\n \"title\": + \"\"\n }\n }\n }\n + \ }\n }, \n \"1\": + {\n \"position\": {\n \"x\": 5,\n + \ \"y\": 0,\n \"rowSpan\": 4,\n + \ \"colSpan\": 6\n },\n \"metadata\": + {\n \"inputs\": [],\n \"type\": + \"Extension/HubsExtension/PartType/VideoPart\",\n \"settings\": + {\n \"content\": {\n \"settings\": + {\n \"title\": \"Important Information\",\n + \ \"subtitle\": \"\",\n \"src\": + \"${var.video_link}\",\n \"autoplay\": true\n + \ }\n }\n }\n + \ }\n },\n \"2\": {\n \"position\": + {\n \"x\": 0,\n \"y\": 4,\n \"rowSpan\": + 4,\n \"colSpan\": 6\n },\n \"metadata\": + {\n \"inputs\": [\n {\n \"name\": + \"ComponentId\",\n \"value\": \"/subscriptions/${data.azurerm_subscription.current.subscription_id}/resourceGroups/myRG/providers/microsoft.insights/components/myWebApp\"\n + \ }\n ],\n \"type\": + \"Extension/AppInsightsExtension/PartType/AppMapGalPt\",\n \"settings\": + {},\n \"asset\": {\n \"idInputName\": + \"ComponentId\",\n \"type\": \"ApplicationInsights\"\n + \ }\n }\n } \n + \ }\n }\n },\n \"metadata\": {\n \"model\": {\n + \ \"timeRange\": {\n \"value\": {\n \"relative\": + {\n \"duration\": 24,\n \"timeUnit\": + 1\n }\n },\n \"type\": \"MsPortalFx.Composition.Configuration.ValueTypes.TimeRange\"\n + \ },\n \"filterLocale\": {\n \"value\": + \"en-us\"\n },\n \"filters\": {\n \"value\": + {\n \"MsPortalFx_TimeRange\": {\n \"model\": + {\n \"format\": \"utc\",\n \"granularity\": + \"auto\",\n \"relative\": \"24h\"\n },\n + \ \"displayCache\": {\n \"name\": + \"UTC Time\",\n \"value\": \"Past 24 hours\"\n },\n + \ \"filteredPartIds\": [\n \"StartboardPart-UnboundPart-ae44fef5-76b8-46b0-86f0-2b3f47bad1c7\"\n + \ ]\n }\n }\n }\n + \ }\n }\n}\n" + location: West Europe + name: my-cool-dashboard + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + tags: + source: terraform + +--- + +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: portal/v1beta1/dashboard + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + +--- + diff --git a/examples/operationalinsights/loganalyticsdataexportrule.yaml b/examples/operationalinsights/loganalyticsdataexportrule.yaml new file mode 100644 index 000000000..f06575faa --- /dev/null +++ b/examples/operationalinsights/loganalyticsdataexportrule.yaml @@ -0,0 +1,67 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsDataExportRule +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdataexportrule + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + destinationResourceIdSelector: + matchLabels: + testing.upbound.io/example-name: example + enabled: true + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + - Heartbeat + workspaceResourceIdSelector: + matchLabels: + testing.upbound.io/example-name: example +--- +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdataexportrule + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + retentionInDays: 30 + sku: PerGB2018 +--- +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdataexportrule + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe +--- +apiVersion: storage.azure.upbound.io/v1beta1 +kind: Account +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdataexportrule + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + accountReplicationType: LRS + accountTier: Standard + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example \ No newline at end of file diff --git a/examples/operationalinsights/loganalyticsdatasourcewindowsevent.yaml b/examples/operationalinsights/loganalyticsdatasourcewindowsevent.yaml new file mode 100644 index 000000000..1b687049b --- /dev/null +++ b/examples/operationalinsights/loganalyticsdatasourcewindowsevent.yaml @@ -0,0 +1,47 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsDataSourceWindowsEvent +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsevent + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + eventLogName: Application + eventTypes: + - Error + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + workspaceNameSelector: + matchLabels: + testing.upbound.io/example-name: example +--- +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsevent + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + sku: PerGB2018 +--- +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsevent + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe \ No newline at end of file diff --git a/examples/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml b/examples/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml new file mode 100644 index 000000000..e14e7880f --- /dev/null +++ b/examples/operationalinsights/loganalyticsdatasourcewindowsperformancecounter.yaml @@ -0,0 +1,48 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsDataSourceWindowsPerformanceCounter +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsperformancecounter + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + counterName: CPU + instanceName: '*' + intervalSeconds: 10 + objectName: CPU + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + workspaceNameSelector: + matchLabels: + testing.upbound.io/example-name: example +--- +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsperformancecounter + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + sku: PerGB2018 +--- +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticsdatasourcewindowsperformancecounter + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe \ No newline at end of file diff --git a/examples/operationalinsights/loganalyticslinkedservice.yaml b/examples/operationalinsights/loganalyticslinkedservice.yaml new file mode 100644 index 000000000..5c60a1cdc --- /dev/null +++ b/examples/operationalinsights/loganalyticslinkedservice.yaml @@ -0,0 +1,66 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsLinkedService +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedservice + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + readAccessIdSelector: + matchLabels: + testing.upbound.io/example-name: example + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + workspaceIdSelector: + matchLabels: + testing.upbound.io/example-name: example +--- +apiVersion: automation.azure.upbound.io/v1beta1 +kind: Account +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedservice + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + skuName: Basic + tags: + environment: development +--- +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedservice + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + retentionInDays: 30 + sku: PerGB2018 +--- +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedservice + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe \ No newline at end of file diff --git a/examples/operationalinsights/loganalyticslinkedstorageaccount.yaml b/examples/operationalinsights/loganalyticslinkedstorageaccount.yaml new file mode 100644 index 000000000..f6d4353da --- /dev/null +++ b/examples/operationalinsights/loganalyticslinkedstorageaccount.yaml @@ -0,0 +1,64 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsLinkedStorageAccount +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedstorageaccount + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + dataSourceType: CustomLogs + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + storageAccountIdsRefs: + - name: sampleacc001 + workspaceResourceIdSelector: + matchLabels: + testing.upbound.io/example-name: example +--- +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedstorageaccount + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + sku: PerGB2018 +--- +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedstorageaccount + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe +--- +apiVersion: storage.azure.upbound.io/v1beta1 +kind: Account +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticslinkedstorageaccount + labels: + testing.upbound.io/example-name: sampleacc001 + name: sampleacc001 +spec: + forProvider: + accountReplicationType: GRS + accountTier: Standard + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example \ No newline at end of file diff --git a/examples/operationalinsights/loganalyticssavedsearch.yaml b/examples/operationalinsights/loganalyticssavedsearch.yaml new file mode 100644 index 000000000..2ab51adf1 --- /dev/null +++ b/examples/operationalinsights/loganalyticssavedsearch.yaml @@ -0,0 +1,45 @@ +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: LogAnalyticsSavedSearch +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticssavedsearch + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + category: exampleCategory + displayName: exampleDisplayName + logAnalyticsWorkspaceIdSelector: + matchLabels: + testing.upbound.io/example-name: example + query: exampleQuery +--- +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticssavedsearch + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + retentionInDays: 30 + sku: PerGB2018 +--- +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationalinsights/v1beta1/loganalyticssavedsearch + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe \ No newline at end of file diff --git a/examples/operationsmanagement/loganalyticssolution.yaml b/examples/operationsmanagement/loganalyticssolution.yaml new file mode 100644 index 000000000..4c3f0d467 --- /dev/null +++ b/examples/operationsmanagement/loganalyticssolution.yaml @@ -0,0 +1,52 @@ +apiVersion: operationsmanagement.azure.upbound.io/v1beta1 +kind: LogAnalyticsSolution +metadata: + annotations: + meta.upbound.io/example-id: operationsmanagement/v1beta1/loganalyticssolution + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + plan: + - product: OMSGallery/ContainerInsights + publisher: Microsoft + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + solutionName: ContainerInsights + workspaceNameSelector: + matchLabels: + testing.upbound.io/example-name: example + workspaceResourceIdSelector: + matchLabels: + testing.upbound.io/example-name: example +--- +apiVersion: operationalinsights.azure.upbound.io/v1beta1 +kind: Workspace +metadata: + annotations: + meta.upbound.io/example-id: operationsmanagement/v1beta1/loganalyticssolution + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + sku: PerGB2018 +--- +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: operationsmanagement/v1beta1/loganalyticssolution + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe \ No newline at end of file diff --git a/examples/portal/dashboard.yaml b/examples/portal/dashboard.yaml new file mode 100644 index 000000000..d6c1f76a4 --- /dev/null +++ b/examples/portal/dashboard.yaml @@ -0,0 +1,54 @@ +apiVersion: portal.azure.upbound.io/v1beta1 +kind: Dashboard +metadata: + annotations: + meta.upbound.io/example-id: portal/v1beta1/dashboard + labels: + testing.upbound.io/example-name: my-board + name: my-board +spec: + forProvider: + dashboardProperties: "{\n \"lenses\": {\n \"0\": {\n \"order\": + 0,\n \"parts\": {\n \"0\": {\n \"position\": + {\n \"x\": 0,\n \"y\": 4,\n \"rowSpan\": + 4,\n \"colSpan\": 6\n },\n \"metadata\": + {\n \"inputs\": [\n {\n \"name\": + \"ComponentId\",\n \"value\": \"${data.azurerm_client_config.current.subscription_resource_id}/resourceGroups/myRG/providers/microsoft.insights/components/myWebApp\"\n + \ }\n ],\n \"type\": + \"Extension/AppInsightsExtension/PartType/AppMapGalPt\",\n \"settings\": + {},\n \"asset\": {\n \"idInputName\": + \"ComponentId\",\n \"type\": \"ApplicationInsights\"\n + \ }\n }\n } \n + \ }\n }\n },\n \"metadata\": {\n \"model\": {\n + \ \"timeRange\": {\n \"value\": {\n \"relative\": + {\n \"duration\": 24,\n \"timeUnit\": + 1\n }\n },\n \"type\": \"MsPortalFx.Composition.Configuration.ValueTypes.TimeRange\"\n + \ },\n \"filterLocale\": {\n \"value\": + \"en-us\"\n },\n \"filters\": {\n \"value\": + {\n \"MsPortalFx_TimeRange\": {\n \"model\": + {\n \"format\": \"utc\",\n \"granularity\": + \"auto\",\n \"relative\": \"24h\"\n },\n + \ \"displayCache\": {\n \"name\": + \"UTC Time\",\n \"value\": \"Past 24 hours\"\n },\n + \ \"filteredPartIds\": [\n \"StartboardPart-UnboundPart-ae44fef5-76b8-46b0-86f0-2b3f47bad1c7\"\n + \ ]\n }\n }\n }\n + \ }\n }\n}\n" + location: West Europe + name: my-cool-dashboard + resourceGroupNameSelector: + matchLabels: + testing.upbound.io/example-name: example + tags: + source: terraform +--- +apiVersion: azure.upbound.io/v1beta1 +kind: ResourceGroup +metadata: + annotations: + meta.upbound.io/example-id: portal/v1beta1/dashboard + labels: + testing.upbound.io/example-name: example + name: example +spec: + forProvider: + location: West Europe diff --git a/internal/controller/operationalinsights/loganalyticsdataexportrule/zz_controller.go b/internal/controller/operationalinsights/loganalyticsdataexportrule/zz_controller.go new file mode 100755 index 000000000..44d96d187 --- /dev/null +++ b/internal/controller/operationalinsights/loganalyticsdataexportrule/zz_controller.go @@ -0,0 +1,52 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package loganalyticsdataexportrule + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/terraform" + ctrl "sigs.k8s.io/controller-runtime" + + v1beta1 "github.com/upbound/provider-azure/apis/operationalinsights/v1beta1" +) + +// Setup adds a controller that reconciles LogAnalyticsDataExportRule managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1beta1.LogAnalyticsDataExportRule_GroupVersionKind.String()) + var initializers managed.InitializerChain + initializers = append(initializers, managed.NewNameAsExternalName(mgr.GetClient())) + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK)) + } + r := managed.NewReconciler(mgr, + xpresource.ManagedKind(v1beta1.LogAnalyticsDataExportRule_GroupVersionKind), + managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_data_export_rule"], + tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataExportRule_GroupVersionKind))), + )), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(terraform.NewWorkspaceFinalizer(o.WorkspaceStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3*time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + ) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + For(&v1beta1.LogAnalyticsDataExportRule{}). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/operationalinsights/loganalyticsdatasourcewindowsevent/zz_controller.go b/internal/controller/operationalinsights/loganalyticsdatasourcewindowsevent/zz_controller.go new file mode 100755 index 000000000..9d8941449 --- /dev/null +++ b/internal/controller/operationalinsights/loganalyticsdatasourcewindowsevent/zz_controller.go @@ -0,0 +1,52 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package loganalyticsdatasourcewindowsevent + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/terraform" + ctrl "sigs.k8s.io/controller-runtime" + + v1beta1 "github.com/upbound/provider-azure/apis/operationalinsights/v1beta1" +) + +// Setup adds a controller that reconciles LogAnalyticsDataSourceWindowsEvent managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1beta1.LogAnalyticsDataSourceWindowsEvent_GroupVersionKind.String()) + var initializers managed.InitializerChain + initializers = append(initializers, managed.NewNameAsExternalName(mgr.GetClient())) + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK)) + } + r := managed.NewReconciler(mgr, + xpresource.ManagedKind(v1beta1.LogAnalyticsDataSourceWindowsEvent_GroupVersionKind), + managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_datasource_windows_event"], + tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataSourceWindowsEvent_GroupVersionKind))), + )), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(terraform.NewWorkspaceFinalizer(o.WorkspaceStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3*time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + ) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + For(&v1beta1.LogAnalyticsDataSourceWindowsEvent{}). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/operationalinsights/loganalyticsdatasourcewindowsperformancecounter/zz_controller.go b/internal/controller/operationalinsights/loganalyticsdatasourcewindowsperformancecounter/zz_controller.go new file mode 100755 index 000000000..a5eaa4cc4 --- /dev/null +++ b/internal/controller/operationalinsights/loganalyticsdatasourcewindowsperformancecounter/zz_controller.go @@ -0,0 +1,52 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package loganalyticsdatasourcewindowsperformancecounter + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/terraform" + ctrl "sigs.k8s.io/controller-runtime" + + v1beta1 "github.com/upbound/provider-azure/apis/operationalinsights/v1beta1" +) + +// Setup adds a controller that reconciles LogAnalyticsDataSourceWindowsPerformanceCounter managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1beta1.LogAnalyticsDataSourceWindowsPerformanceCounter_GroupVersionKind.String()) + var initializers managed.InitializerChain + initializers = append(initializers, managed.NewNameAsExternalName(mgr.GetClient())) + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK)) + } + r := managed.NewReconciler(mgr, + xpresource.ManagedKind(v1beta1.LogAnalyticsDataSourceWindowsPerformanceCounter_GroupVersionKind), + managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_datasource_windows_performance_counter"], + tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsDataSourceWindowsPerformanceCounter_GroupVersionKind))), + )), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(terraform.NewWorkspaceFinalizer(o.WorkspaceStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3*time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + ) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + For(&v1beta1.LogAnalyticsDataSourceWindowsPerformanceCounter{}). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/operationalinsights/loganalyticslinkedservice/zz_controller.go b/internal/controller/operationalinsights/loganalyticslinkedservice/zz_controller.go new file mode 100755 index 000000000..ee5833a60 --- /dev/null +++ b/internal/controller/operationalinsights/loganalyticslinkedservice/zz_controller.go @@ -0,0 +1,52 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package loganalyticslinkedservice + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/terraform" + ctrl "sigs.k8s.io/controller-runtime" + + v1beta1 "github.com/upbound/provider-azure/apis/operationalinsights/v1beta1" +) + +// Setup adds a controller that reconciles LogAnalyticsLinkedService managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1beta1.LogAnalyticsLinkedService_GroupVersionKind.String()) + var initializers managed.InitializerChain + initializers = append(initializers, managed.NewNameAsExternalName(mgr.GetClient())) + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK)) + } + r := managed.NewReconciler(mgr, + xpresource.ManagedKind(v1beta1.LogAnalyticsLinkedService_GroupVersionKind), + managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_linked_service"], + tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsLinkedService_GroupVersionKind))), + )), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(terraform.NewWorkspaceFinalizer(o.WorkspaceStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3*time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + ) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + For(&v1beta1.LogAnalyticsLinkedService{}). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/operationalinsights/loganalyticslinkedstorageaccount/zz_controller.go b/internal/controller/operationalinsights/loganalyticslinkedstorageaccount/zz_controller.go new file mode 100755 index 000000000..c0d3ad047 --- /dev/null +++ b/internal/controller/operationalinsights/loganalyticslinkedstorageaccount/zz_controller.go @@ -0,0 +1,51 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package loganalyticslinkedstorageaccount + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/terraform" + ctrl "sigs.k8s.io/controller-runtime" + + v1beta1 "github.com/upbound/provider-azure/apis/operationalinsights/v1beta1" +) + +// Setup adds a controller that reconciles LogAnalyticsLinkedStorageAccount managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1beta1.LogAnalyticsLinkedStorageAccount_GroupVersionKind.String()) + var initializers managed.InitializerChain + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK)) + } + r := managed.NewReconciler(mgr, + xpresource.ManagedKind(v1beta1.LogAnalyticsLinkedStorageAccount_GroupVersionKind), + managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_linked_storage_account"], + tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsLinkedStorageAccount_GroupVersionKind))), + )), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(terraform.NewWorkspaceFinalizer(o.WorkspaceStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3*time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + ) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + For(&v1beta1.LogAnalyticsLinkedStorageAccount{}). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/operationalinsights/loganalyticssavedsearch/zz_controller.go b/internal/controller/operationalinsights/loganalyticssavedsearch/zz_controller.go new file mode 100755 index 000000000..a9c3fa709 --- /dev/null +++ b/internal/controller/operationalinsights/loganalyticssavedsearch/zz_controller.go @@ -0,0 +1,52 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package loganalyticssavedsearch + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/terraform" + ctrl "sigs.k8s.io/controller-runtime" + + v1beta1 "github.com/upbound/provider-azure/apis/operationalinsights/v1beta1" +) + +// Setup adds a controller that reconciles LogAnalyticsSavedSearch managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1beta1.LogAnalyticsSavedSearch_GroupVersionKind.String()) + var initializers managed.InitializerChain + initializers = append(initializers, managed.NewNameAsExternalName(mgr.GetClient())) + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK)) + } + r := managed.NewReconciler(mgr, + xpresource.ManagedKind(v1beta1.LogAnalyticsSavedSearch_GroupVersionKind), + managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_saved_search"], + tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsSavedSearch_GroupVersionKind))), + )), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(terraform.NewWorkspaceFinalizer(o.WorkspaceStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3*time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + ) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + For(&v1beta1.LogAnalyticsSavedSearch{}). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/operationsmanagement/loganalyticssolution/zz_controller.go b/internal/controller/operationsmanagement/loganalyticssolution/zz_controller.go new file mode 100755 index 000000000..19118fd94 --- /dev/null +++ b/internal/controller/operationsmanagement/loganalyticssolution/zz_controller.go @@ -0,0 +1,51 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package loganalyticssolution + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/terraform" + ctrl "sigs.k8s.io/controller-runtime" + + v1beta1 "github.com/upbound/provider-azure/apis/operationsmanagement/v1beta1" +) + +// Setup adds a controller that reconciles LogAnalyticsSolution managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1beta1.LogAnalyticsSolution_GroupVersionKind.String()) + var initializers managed.InitializerChain + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK)) + } + r := managed.NewReconciler(mgr, + xpresource.ManagedKind(v1beta1.LogAnalyticsSolution_GroupVersionKind), + managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_log_analytics_solution"], + tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.LogAnalyticsSolution_GroupVersionKind))), + )), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(terraform.NewWorkspaceFinalizer(o.WorkspaceStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3*time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + ) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + For(&v1beta1.LogAnalyticsSolution{}). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/portal/dashboard/zz_controller.go b/internal/controller/portal/dashboard/zz_controller.go new file mode 100755 index 000000000..1b7a3e07c --- /dev/null +++ b/internal/controller/portal/dashboard/zz_controller.go @@ -0,0 +1,51 @@ +/* +Copyright 2022 Upbound Inc. +*/ + +// Code generated by upjet. DO NOT EDIT. + +package dashboard + +import ( + "time" + + "github.com/crossplane/crossplane-runtime/pkg/connection" + "github.com/crossplane/crossplane-runtime/pkg/event" + "github.com/crossplane/crossplane-runtime/pkg/ratelimiter" + "github.com/crossplane/crossplane-runtime/pkg/reconciler/managed" + xpresource "github.com/crossplane/crossplane-runtime/pkg/resource" + tjcontroller "github.com/upbound/upjet/pkg/controller" + "github.com/upbound/upjet/pkg/terraform" + ctrl "sigs.k8s.io/controller-runtime" + + v1beta1 "github.com/upbound/provider-azure/apis/portal/v1beta1" +) + +// Setup adds a controller that reconciles Dashboard managed resources. +func Setup(mgr ctrl.Manager, o tjcontroller.Options) error { + name := managed.ControllerName(v1beta1.Dashboard_GroupVersionKind.String()) + var initializers managed.InitializerChain + cps := []managed.ConnectionPublisher{managed.NewAPISecretPublisher(mgr.GetClient(), mgr.GetScheme())} + if o.SecretStoreConfigGVK != nil { + cps = append(cps, connection.NewDetailsManager(mgr.GetClient(), *o.SecretStoreConfigGVK)) + } + r := managed.NewReconciler(mgr, + xpresource.ManagedKind(v1beta1.Dashboard_GroupVersionKind), + managed.WithExternalConnecter(tjcontroller.NewConnector(mgr.GetClient(), o.WorkspaceStore, o.SetupFn, o.Provider.Resources["azurerm_portal_dashboard"], + tjcontroller.WithCallbackProvider(tjcontroller.NewAPICallbacks(mgr, xpresource.ManagedKind(v1beta1.Dashboard_GroupVersionKind))), + )), + managed.WithLogger(o.Logger.WithValues("controller", name)), + managed.WithRecorder(event.NewAPIRecorder(mgr.GetEventRecorderFor(name))), + managed.WithFinalizer(terraform.NewWorkspaceFinalizer(o.WorkspaceStore, xpresource.NewAPIFinalizer(mgr.GetClient(), managed.FinalizerName))), + managed.WithTimeout(3*time.Minute), + managed.WithInitializers(initializers), + managed.WithConnectionPublishers(cps...), + managed.WithPollInterval(o.PollInterval), + ) + + return ctrl.NewControllerManagedBy(mgr). + Named(name). + WithOptions(o.ForControllerRuntime()). + For(&v1beta1.Dashboard{}). + Complete(ratelimiter.NewReconciler(name, r, o.GlobalRateLimiter)) +} diff --git a/internal/controller/zz_setup.go b/internal/controller/zz_setup.go index 584e2cf2a..5b68a9d72 100755 --- a/internal/controller/zz_setup.go +++ b/internal/controller/zz_setup.go @@ -336,7 +336,15 @@ import ( authorizationrulenotificationhubs "github.com/upbound/provider-azure/internal/controller/notificationhubs/authorizationrule" notificationhub "github.com/upbound/provider-azure/internal/controller/notificationhubs/notificationhub" notificationhubnamespace "github.com/upbound/provider-azure/internal/controller/notificationhubs/notificationhubnamespace" + loganalyticsdataexportrule "github.com/upbound/provider-azure/internal/controller/operationalinsights/loganalyticsdataexportrule" + loganalyticsdatasourcewindowsevent "github.com/upbound/provider-azure/internal/controller/operationalinsights/loganalyticsdatasourcewindowsevent" + loganalyticsdatasourcewindowsperformancecounter "github.com/upbound/provider-azure/internal/controller/operationalinsights/loganalyticsdatasourcewindowsperformancecounter" + loganalyticslinkedservice "github.com/upbound/provider-azure/internal/controller/operationalinsights/loganalyticslinkedservice" + loganalyticslinkedstorageaccount "github.com/upbound/provider-azure/internal/controller/operationalinsights/loganalyticslinkedstorageaccount" + loganalyticssavedsearch "github.com/upbound/provider-azure/internal/controller/operationalinsights/loganalyticssavedsearch" workspaceoperationalinsights "github.com/upbound/provider-azure/internal/controller/operationalinsights/workspace" + loganalyticssolution "github.com/upbound/provider-azure/internal/controller/operationsmanagement/loganalyticssolution" + dashboard "github.com/upbound/provider-azure/internal/controller/portal/dashboard" powerbiembedded "github.com/upbound/provider-azure/internal/controller/powerbidedicated/powerbiembedded" providerconfig "github.com/upbound/provider-azure/internal/controller/providerconfig" accountpurview "github.com/upbound/provider-azure/internal/controller/purview/account" @@ -723,7 +731,15 @@ func Setup(mgr ctrl.Manager, o controller.Options) error { authorizationrulenotificationhubs.Setup, notificationhub.Setup, notificationhubnamespace.Setup, + loganalyticsdataexportrule.Setup, + loganalyticsdatasourcewindowsevent.Setup, + loganalyticsdatasourcewindowsperformancecounter.Setup, + loganalyticslinkedservice.Setup, + loganalyticslinkedstorageaccount.Setup, + loganalyticssavedsearch.Setup, workspaceoperationalinsights.Setup, + loganalyticssolution.Setup, + dashboard.Setup, powerbiembedded.Setup, providerconfig.Setup, accountpurview.Setup, diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdataexportrules.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdataexportrules.yaml new file mode 100644 index 000000000..f8ce56604 --- /dev/null +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdataexportrules.yaml @@ -0,0 +1,549 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.8.0 + creationTimestamp: null + name: loganalyticsdataexportrules.operationalinsights.azure.upbound.io +spec: + group: operationalinsights.azure.upbound.io + names: + categories: + - crossplane + - managed + - azure + kind: LogAnalyticsDataExportRule + listKind: LogAnalyticsDataExportRuleList + plural: loganalyticsdataexportrules + singular: loganalyticsdataexportrule + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1beta1 + schema: + openAPIV3Schema: + description: LogAnalyticsDataExportRule is the Schema for the LogAnalyticsDataExportRules + API. Manages a log analytics Data Export Rule. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: LogAnalyticsDataExportRuleSpec defines the desired state + of LogAnalyticsDataExportRule + properties: + deletionPolicy: + default: Delete + description: DeletionPolicy specifies what will happen to the underlying + external when this managed resource is deleted - either "Delete" + or "Orphan" the external resource. + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + destinationResourceId: + description: The destination resource ID. It should be a storage + account, an event hub namespace or an event hub. If the destination + is an event hub namespace, an event hub would be created for + each table automatically. + type: string + destinationResourceIdRef: + description: Reference to a Account in storage to populate destinationResourceId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + destinationResourceIdSelector: + description: Selector for a Account in storage to populate destinationResourceId. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + enabled: + description: Is this Log Analytics Data Export Rule enabled? Possible + values include true or false. Defaults to false. + type: boolean + resourceGroupName: + description: The name of the Resource Group where the Log Analytics + Data Export should exist. Changing this forces a new Log Analytics + Data Export Rule to be created. + type: string + resourceGroupNameRef: + description: Reference to a ResourceGroup in azure to populate + resourceGroupName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + resourceGroupNameSelector: + description: Selector for a ResourceGroup in azure to populate + resourceGroupName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + tableNames: + description: 'A list of table names to export to the destination + resource, for example: ["Heartbeat", "SecurityEvent"].' + items: + type: string + type: array + workspaceResourceId: + description: The resource ID of the workspace. Changing this forces + a new Log Analytics Data Export Rule to be created. + type: string + workspaceResourceIdRef: + description: Reference to a Workspace in operationalinsights to + populate workspaceResourceId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + workspaceResourceIdSelector: + description: Selector for a Workspace in operationalinsights to + populate workspaceResourceId. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + required: + - tableNames + type: object + providerConfigRef: + default: + name: default + description: ProviderConfigReference specifies how the provider that + will be used to create, observe, update, and delete this managed + resource should be configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + providerRef: + description: 'ProviderReference specifies the provider that will be + used to create, observe, update, and delete this managed resource. + Deprecated: Please use ProviderConfigReference, i.e. `providerConfigRef`' + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: PublishConnectionDetailsTo specifies the connection secret + config which contains a name, metadata and a reference to secret + store config to which any connection details for this managed resource + should be written. Connection details frequently include the endpoint, + username, and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: SecretStoreConfigRef specifies which secret store + config should be used for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: Annotations are the annotations to be added to + connection secret. - For Kubernetes secrets, this will be + used as "metadata.annotations". - It is up to Secret Store + implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: Labels are the labels/tags to be added to connection + secret. - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store + types. + type: object + type: + description: Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: WriteConnectionSecretToReference specifies the namespace + and name of a Secret to which any connection details for this managed + resource should be written. Connection details frequently include + the endpoint, username, and password required to connect to the + managed resource. This field is planned to be replaced in a future + release in favor of PublishConnectionDetailsTo. Currently, both + could be set independently and connection details would be published + to both without affecting each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + status: + description: LogAnalyticsDataExportRuleStatus defines the observed state + of LogAnalyticsDataExportRule. + properties: + atProvider: + properties: + exportRuleId: + description: The ID of the created Data Export Rule. + type: string + id: + description: The ID of the Log Analytics Data Export Rule. + type: string + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: LastTransitionTime is the last time this condition + transitioned from one status to another. + format: date-time + type: string + message: + description: A Message containing details about this condition's + last transition from one status to another, if any. + type: string + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: Type of this condition. At most one of each condition + type may apply to a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsevents.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsevents.yaml new file mode 100644 index 000000000..fc236afc2 --- /dev/null +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsevents.yaml @@ -0,0 +1,471 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.8.0 + creationTimestamp: null + name: loganalyticsdatasourcewindowsevents.operationalinsights.azure.upbound.io +spec: + group: operationalinsights.azure.upbound.io + names: + categories: + - crossplane + - managed + - azure + kind: LogAnalyticsDataSourceWindowsEvent + listKind: LogAnalyticsDataSourceWindowsEventList + plural: loganalyticsdatasourcewindowsevents + singular: loganalyticsdatasourcewindowsevent + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1beta1 + schema: + openAPIV3Schema: + description: LogAnalyticsDataSourceWindowsEvent is the Schema for the LogAnalyticsDataSourceWindowsEvents + API. Manages a Log Analytics Windows Event DataSource. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: LogAnalyticsDataSourceWindowsEventSpec defines the desired + state of LogAnalyticsDataSourceWindowsEvent + properties: + deletionPolicy: + default: Delete + description: DeletionPolicy specifies what will happen to the underlying + external when this managed resource is deleted - either "Delete" + or "Orphan" the external resource. + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + eventLogName: + description: Specifies the name of the Windows Event Log to collect + events from. + type: string + eventTypes: + description: Specifies an array of event types applied to the + specified event log. Possible values include Error, Warning + and Information. + items: + type: string + type: array + resourceGroupName: + description: The name of the Resource Group where the Log Analytics + Windows Event DataSource should exist. Changing this forces + a new Log Analytics Windows Event DataSource to be created. + type: string + resourceGroupNameRef: + description: Reference to a ResourceGroup in azure to populate + resourceGroupName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + resourceGroupNameSelector: + description: Selector for a ResourceGroup in azure to populate + resourceGroupName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + workspaceName: + description: The name of the Log Analytics Workspace where the + Log Analytics Windows Event DataSource should exist. Changing + this forces a new Log Analytics Windows Event DataSource to + be created. + type: string + workspaceNameRef: + description: Reference to a Workspace in operationalinsights to + populate workspaceName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + workspaceNameSelector: + description: Selector for a Workspace in operationalinsights to + populate workspaceName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + required: + - eventLogName + - eventTypes + type: object + providerConfigRef: + default: + name: default + description: ProviderConfigReference specifies how the provider that + will be used to create, observe, update, and delete this managed + resource should be configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + providerRef: + description: 'ProviderReference specifies the provider that will be + used to create, observe, update, and delete this managed resource. + Deprecated: Please use ProviderConfigReference, i.e. `providerConfigRef`' + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: PublishConnectionDetailsTo specifies the connection secret + config which contains a name, metadata and a reference to secret + store config to which any connection details for this managed resource + should be written. Connection details frequently include the endpoint, + username, and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: SecretStoreConfigRef specifies which secret store + config should be used for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: Annotations are the annotations to be added to + connection secret. - For Kubernetes secrets, this will be + used as "metadata.annotations". - It is up to Secret Store + implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: Labels are the labels/tags to be added to connection + secret. - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store + types. + type: object + type: + description: Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: WriteConnectionSecretToReference specifies the namespace + and name of a Secret to which any connection details for this managed + resource should be written. Connection details frequently include + the endpoint, username, and password required to connect to the + managed resource. This field is planned to be replaced in a future + release in favor of PublishConnectionDetailsTo. Currently, both + could be set independently and connection details would be published + to both without affecting each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + status: + description: LogAnalyticsDataSourceWindowsEventStatus defines the observed + state of LogAnalyticsDataSourceWindowsEvent. + properties: + atProvider: + properties: + id: + description: The ID of the Log Analytics Windows Event DataSource. + type: string + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: LastTransitionTime is the last time this condition + transitioned from one status to another. + format: date-time + type: string + message: + description: A Message containing details about this condition's + last transition from one status to another, if any. + type: string + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: Type of this condition. At most one of each condition + type may apply to a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsperformancecounters.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsperformancecounters.yaml new file mode 100644 index 000000000..5e0fbe44e --- /dev/null +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticsdatasourcewindowsperformancecounters.yaml @@ -0,0 +1,482 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.8.0 + creationTimestamp: null + name: loganalyticsdatasourcewindowsperformancecounters.operationalinsights.azure.upbound.io +spec: + group: operationalinsights.azure.upbound.io + names: + categories: + - crossplane + - managed + - azure + kind: LogAnalyticsDataSourceWindowsPerformanceCounter + listKind: LogAnalyticsDataSourceWindowsPerformanceCounterList + plural: loganalyticsdatasourcewindowsperformancecounters + singular: loganalyticsdatasourcewindowsperformancecounter + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1beta1 + schema: + openAPIV3Schema: + description: LogAnalyticsDataSourceWindowsPerformanceCounter is the Schema + for the LogAnalyticsDataSourceWindowsPerformanceCounters API. Manages a + Log Analytics (formally Operational Insights) Windows Performance Counter + DataSource. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: LogAnalyticsDataSourceWindowsPerformanceCounterSpec defines + the desired state of LogAnalyticsDataSourceWindowsPerformanceCounter + properties: + deletionPolicy: + default: Delete + description: DeletionPolicy specifies what will happen to the underlying + external when this managed resource is deleted - either "Delete" + or "Orphan" the external resource. + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + counterName: + description: The friendly name of the performance counter. + type: string + instanceName: + description: The name of the virtual machine instance to which + the Windows Performance Counter DataSource be applied. Specify + a * will apply to all instances. + type: string + intervalSeconds: + description: The time of sample interval in seconds. Supports + values between 10 and 2147483647. + type: number + objectName: + description: The object name of the Log Analytics Windows Performance + Counter DataSource. + type: string + resourceGroupName: + description: The name of the Resource Group where the Log Analytics + Windows Performance Counter DataSource should exist. Changing + this forces a new Log Analytics Windows Performance Counter + DataSource to be created. + type: string + resourceGroupNameRef: + description: Reference to a ResourceGroup in azure to populate + resourceGroupName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + resourceGroupNameSelector: + description: Selector for a ResourceGroup in azure to populate + resourceGroupName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + workspaceName: + description: The name of the Log Analytics Workspace where the + Log Analytics Windows Performance Counter DataSource should + exist. Changing this forces a new Log Analytics Windows Performance + Counter DataSource to be created. + type: string + workspaceNameRef: + description: Reference to a Workspace in operationalinsights to + populate workspaceName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + workspaceNameSelector: + description: Selector for a Workspace in operationalinsights to + populate workspaceName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + required: + - counterName + - instanceName + - intervalSeconds + - objectName + type: object + providerConfigRef: + default: + name: default + description: ProviderConfigReference specifies how the provider that + will be used to create, observe, update, and delete this managed + resource should be configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + providerRef: + description: 'ProviderReference specifies the provider that will be + used to create, observe, update, and delete this managed resource. + Deprecated: Please use ProviderConfigReference, i.e. `providerConfigRef`' + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: PublishConnectionDetailsTo specifies the connection secret + config which contains a name, metadata and a reference to secret + store config to which any connection details for this managed resource + should be written. Connection details frequently include the endpoint, + username, and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: SecretStoreConfigRef specifies which secret store + config should be used for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: Annotations are the annotations to be added to + connection secret. - For Kubernetes secrets, this will be + used as "metadata.annotations". - It is up to Secret Store + implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: Labels are the labels/tags to be added to connection + secret. - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store + types. + type: object + type: + description: Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: WriteConnectionSecretToReference specifies the namespace + and name of a Secret to which any connection details for this managed + resource should be written. Connection details frequently include + the endpoint, username, and password required to connect to the + managed resource. This field is planned to be replaced in a future + release in favor of PublishConnectionDetailsTo. Currently, both + could be set independently and connection details would be published + to both without affecting each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + status: + description: LogAnalyticsDataSourceWindowsPerformanceCounterStatus defines + the observed state of LogAnalyticsDataSourceWindowsPerformanceCounter. + properties: + atProvider: + properties: + id: + description: The ID of the Log Analytics Windows Performance Counter + DataSource. + type: string + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: LastTransitionTime is the last time this condition + transitioned from one status to another. + format: date-time + type: string + message: + description: A Message containing details about this condition's + last transition from one status to another, if any. + type: string + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: Type of this condition. At most one of each condition + type may apply to a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedservices.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedservices.yaml new file mode 100644 index 000000000..3b2a991df --- /dev/null +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedservices.yaml @@ -0,0 +1,545 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.8.0 + creationTimestamp: null + name: loganalyticslinkedservices.operationalinsights.azure.upbound.io +spec: + group: operationalinsights.azure.upbound.io + names: + categories: + - crossplane + - managed + - azure + kind: LogAnalyticsLinkedService + listKind: LogAnalyticsLinkedServiceList + plural: loganalyticslinkedservices + singular: loganalyticslinkedservice + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1beta1 + schema: + openAPIV3Schema: + description: LogAnalyticsLinkedService is the Schema for the LogAnalyticsLinkedServices + API. Manages a Log Analytics Linked Service. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: LogAnalyticsLinkedServiceSpec defines the desired state of + LogAnalyticsLinkedService + properties: + deletionPolicy: + default: Delete + description: DeletionPolicy specifies what will happen to the underlying + external when this managed resource is deleted - either "Delete" + or "Orphan" the external resource. + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + readAccessId: + description: The ID of the readable Resource that will be linked + to the workspace. This should be used for linking to an Automation + Account resource. + type: string + readAccessIdRef: + description: Reference to a Account in automation to populate + readAccessId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + readAccessIdSelector: + description: Selector for a Account in automation to populate + readAccessId. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + resourceGroupName: + description: The name of the resource group in which the Log Analytics + Linked Service is created. Changing this forces a new resource + to be created. + type: string + resourceGroupNameRef: + description: Reference to a ResourceGroup in azure to populate + resourceGroupName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + resourceGroupNameSelector: + description: Selector for a ResourceGroup in azure to populate + resourceGroupName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + workspaceId: + description: The ID of the Log Analytics Workspace that will contain + the Log Analytics Linked Service resource. + type: string + workspaceIdRef: + description: Reference to a Workspace in operationalinsights to + populate workspaceId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + workspaceIdSelector: + description: Selector for a Workspace in operationalinsights to + populate workspaceId. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + writeAccessId: + description: The ID of the writable Resource that will be linked + to the workspace. This should be used for linking to a Log Analytics + Cluster resource. + type: string + type: object + providerConfigRef: + default: + name: default + description: ProviderConfigReference specifies how the provider that + will be used to create, observe, update, and delete this managed + resource should be configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + providerRef: + description: 'ProviderReference specifies the provider that will be + used to create, observe, update, and delete this managed resource. + Deprecated: Please use ProviderConfigReference, i.e. `providerConfigRef`' + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: PublishConnectionDetailsTo specifies the connection secret + config which contains a name, metadata and a reference to secret + store config to which any connection details for this managed resource + should be written. Connection details frequently include the endpoint, + username, and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: SecretStoreConfigRef specifies which secret store + config should be used for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: Annotations are the annotations to be added to + connection secret. - For Kubernetes secrets, this will be + used as "metadata.annotations". - It is up to Secret Store + implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: Labels are the labels/tags to be added to connection + secret. - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store + types. + type: object + type: + description: Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: WriteConnectionSecretToReference specifies the namespace + and name of a Secret to which any connection details for this managed + resource should be written. Connection details frequently include + the endpoint, username, and password required to connect to the + managed resource. This field is planned to be replaced in a future + release in favor of PublishConnectionDetailsTo. Currently, both + could be set independently and connection details would be published + to both without affecting each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + status: + description: LogAnalyticsLinkedServiceStatus defines the observed state + of LogAnalyticsLinkedService. + properties: + atProvider: + properties: + id: + description: The Log Analytics Linked Service ID. + type: string + name: + description: The generated name of the Linked Service. The format + for this attribute is always /(e.g. workspace1/Automation or workspace1/Cluster) + type: string + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: LastTransitionTime is the last time this condition + transitioned from one status to another. + format: date-time + type: string + message: + description: A Message containing details about this condition's + last transition from one status to another, if any. + type: string + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: Type of this condition. At most one of each condition + type may apply to a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedstorageaccounts.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedstorageaccounts.yaml new file mode 100644 index 000000000..a58f65e65 --- /dev/null +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticslinkedstorageaccounts.yaml @@ -0,0 +1,546 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.8.0 + creationTimestamp: null + name: loganalyticslinkedstorageaccounts.operationalinsights.azure.upbound.io +spec: + group: operationalinsights.azure.upbound.io + names: + categories: + - crossplane + - managed + - azure + kind: LogAnalyticsLinkedStorageAccount + listKind: LogAnalyticsLinkedStorageAccountList + plural: loganalyticslinkedstorageaccounts + singular: loganalyticslinkedstorageaccount + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1beta1 + schema: + openAPIV3Schema: + description: LogAnalyticsLinkedStorageAccount is the Schema for the LogAnalyticsLinkedStorageAccounts + API. Manages a Log Analytics Linked Storage Account. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: LogAnalyticsLinkedStorageAccountSpec defines the desired + state of LogAnalyticsLinkedStorageAccount + properties: + deletionPolicy: + default: Delete + description: DeletionPolicy specifies what will happen to the underlying + external when this managed resource is deleted - either "Delete" + or "Orphan" the external resource. + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + dataSourceType: + description: The data source type which should be used for this + Log Analytics Linked Storage Account. Possible values are CustomLogs, + AzureWatson, Query, Ingestion and Alerts. Changing this forces + a new Log Analytics Linked Storage Account to be created. + type: string + resourceGroupName: + description: The name of the Resource Group where the Log Analytics + Linked Storage Account should exist. Changing this forces a + new Log Analytics Linked Storage Account to be created. + type: string + resourceGroupNameRef: + description: Reference to a ResourceGroup in azure to populate + resourceGroupName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + resourceGroupNameSelector: + description: Selector for a ResourceGroup in azure to populate + resourceGroupName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + storageAccountIds: + description: The storage account resource ids to be linked. + items: + type: string + type: array + storageAccountIdsRefs: + description: References to Account in storage to populate storageAccountIds. + items: + description: A Reference to a named object. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution + of this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which + will attempt to resolve the reference only when the + corresponding field is not present. Use 'Always' to + resolve the reference on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + type: array + storageAccountIdsSelector: + description: Selector for a list of Account in storage to populate + storageAccountIds. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + workspaceResourceId: + description: The resource ID of the Log Analytics Workspace. Changing + this forces a new Log Analytics Linked Storage Account to be + created. + type: string + workspaceResourceIdRef: + description: Reference to a Workspace in operationalinsights to + populate workspaceResourceId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + workspaceResourceIdSelector: + description: Selector for a Workspace in operationalinsights to + populate workspaceResourceId. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + required: + - dataSourceType + type: object + providerConfigRef: + default: + name: default + description: ProviderConfigReference specifies how the provider that + will be used to create, observe, update, and delete this managed + resource should be configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + providerRef: + description: 'ProviderReference specifies the provider that will be + used to create, observe, update, and delete this managed resource. + Deprecated: Please use ProviderConfigReference, i.e. `providerConfigRef`' + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: PublishConnectionDetailsTo specifies the connection secret + config which contains a name, metadata and a reference to secret + store config to which any connection details for this managed resource + should be written. Connection details frequently include the endpoint, + username, and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: SecretStoreConfigRef specifies which secret store + config should be used for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: Annotations are the annotations to be added to + connection secret. - For Kubernetes secrets, this will be + used as "metadata.annotations". - It is up to Secret Store + implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: Labels are the labels/tags to be added to connection + secret. - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store + types. + type: object + type: + description: Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: WriteConnectionSecretToReference specifies the namespace + and name of a Secret to which any connection details for this managed + resource should be written. Connection details frequently include + the endpoint, username, and password required to connect to the + managed resource. This field is planned to be replaced in a future + release in favor of PublishConnectionDetailsTo. Currently, both + could be set independently and connection details would be published + to both without affecting each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + status: + description: LogAnalyticsLinkedStorageAccountStatus defines the observed + state of LogAnalyticsLinkedStorageAccount. + properties: + atProvider: + properties: + id: + description: The ID of the Log Analytics Linked Storage Account. + type: string + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: LastTransitionTime is the last time this condition + transitioned from one status to another. + format: date-time + type: string + message: + description: A Message containing details about this condition's + last transition from one status to another, if any. + type: string + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: Type of this condition. At most one of each condition + type may apply to a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/package/crds/operationalinsights.azure.upbound.io_loganalyticssavedsearches.yaml b/package/crds/operationalinsights.azure.upbound.io_loganalyticssavedsearches.yaml new file mode 100644 index 000000000..3fc597f39 --- /dev/null +++ b/package/crds/operationalinsights.azure.upbound.io_loganalyticssavedsearches.yaml @@ -0,0 +1,409 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.8.0 + creationTimestamp: null + name: loganalyticssavedsearches.operationalinsights.azure.upbound.io +spec: + group: operationalinsights.azure.upbound.io + names: + categories: + - crossplane + - managed + - azure + kind: LogAnalyticsSavedSearch + listKind: LogAnalyticsSavedSearchList + plural: loganalyticssavedsearches + singular: loganalyticssavedsearch + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1beta1 + schema: + openAPIV3Schema: + description: LogAnalyticsSavedSearch is the Schema for the LogAnalyticsSavedSearchs + API. Manages a Log Analytics (formally Operational Insights) Saved Search. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: LogAnalyticsSavedSearchSpec defines the desired state of + LogAnalyticsSavedSearch + properties: + deletionPolicy: + default: Delete + description: DeletionPolicy specifies what will happen to the underlying + external when this managed resource is deleted - either "Delete" + or "Orphan" the external resource. + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + category: + description: The category that the Saved Search will be listed + under. Changing this forces a new resource to be created. + type: string + displayName: + description: The name that Saved Search will be displayed as. + Changing this forces a new resource to be created. + type: string + functionAlias: + description: The function alias if the query serves as a function. + Changing this forces a new resource to be created. + type: string + functionParameters: + description: The function parameters if the query serves as a + function. Changing this forces a new resource to be created. + items: + type: string + type: array + logAnalyticsWorkspaceId: + description: Specifies the ID of the Log Analytics Workspace that + the Saved Search will be associated with. Changing this forces + a new resource to be created. + type: string + logAnalyticsWorkspaceIdRef: + description: Reference to a Workspace in operationalinsights to + populate logAnalyticsWorkspaceId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + logAnalyticsWorkspaceIdSelector: + description: Selector for a Workspace in operationalinsights to + populate logAnalyticsWorkspaceId. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + query: + description: The query expression for the saved search. Changing + this forces a new resource to be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags which should be assigned to the + Logs Analytics Saved Search. Changing this forces a new resource + to be created. + type: object + required: + - category + - displayName + - query + type: object + providerConfigRef: + default: + name: default + description: ProviderConfigReference specifies how the provider that + will be used to create, observe, update, and delete this managed + resource should be configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + providerRef: + description: 'ProviderReference specifies the provider that will be + used to create, observe, update, and delete this managed resource. + Deprecated: Please use ProviderConfigReference, i.e. `providerConfigRef`' + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: PublishConnectionDetailsTo specifies the connection secret + config which contains a name, metadata and a reference to secret + store config to which any connection details for this managed resource + should be written. Connection details frequently include the endpoint, + username, and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: SecretStoreConfigRef specifies which secret store + config should be used for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: Annotations are the annotations to be added to + connection secret. - For Kubernetes secrets, this will be + used as "metadata.annotations". - It is up to Secret Store + implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: Labels are the labels/tags to be added to connection + secret. - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store + types. + type: object + type: + description: Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: WriteConnectionSecretToReference specifies the namespace + and name of a Secret to which any connection details for this managed + resource should be written. Connection details frequently include + the endpoint, username, and password required to connect to the + managed resource. This field is planned to be replaced in a future + release in favor of PublishConnectionDetailsTo. Currently, both + could be set independently and connection details would be published + to both without affecting each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + status: + description: LogAnalyticsSavedSearchStatus defines the observed state + of LogAnalyticsSavedSearch. + properties: + atProvider: + properties: + id: + description: The Log Analytics Saved Search ID. + type: string + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: LastTransitionTime is the last time this condition + transitioned from one status to another. + format: date-time + type: string + message: + description: A Message containing details about this condition's + last transition from one status to another, if any. + type: string + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: Type of this condition. At most one of each condition + type may apply to a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/package/crds/operationsmanagement.azure.upbound.io_loganalyticssolutions.yaml b/package/crds/operationsmanagement.azure.upbound.io_loganalyticssolutions.yaml new file mode 100644 index 000000000..ec7233ecc --- /dev/null +++ b/package/crds/operationsmanagement.azure.upbound.io_loganalyticssolutions.yaml @@ -0,0 +1,583 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.8.0 + creationTimestamp: null + name: loganalyticssolutions.operationsmanagement.azure.upbound.io +spec: + group: operationsmanagement.azure.upbound.io + names: + categories: + - crossplane + - managed + - azure + kind: LogAnalyticsSolution + listKind: LogAnalyticsSolutionList + plural: loganalyticssolutions + singular: loganalyticssolution + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1beta1 + schema: + openAPIV3Schema: + description: LogAnalyticsSolution is the Schema for the LogAnalyticsSolutions + API. Manages a Log Analytics (formally Operational Insights) Solution. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: LogAnalyticsSolutionSpec defines the desired state of LogAnalyticsSolution + properties: + deletionPolicy: + default: Delete + description: DeletionPolicy specifies what will happen to the underlying + external when this managed resource is deleted - either "Delete" + or "Orphan" the external resource. + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + plan: + description: A plan block as documented below. + items: + properties: + product: + description: The product name of the solution. For example + OMSGallery/Containers. Changing this forces a new resource + to be created. + type: string + promotionCode: + description: A promotion code to be used with the solution. + Changing this forces a new resource to be created. + type: string + publisher: + description: The publisher of the solution. For example + Microsoft. Changing this forces a new resource to be created. + type: string + required: + - product + - publisher + type: object + type: array + resourceGroupName: + description: 'The name of the resource group in which the Log + Analytics solution is created. Changing this forces a new resource + to be created. Note: The solution and its related workspace + can only exist in the same resource group.' + type: string + resourceGroupNameRef: + description: Reference to a ResourceGroup in azure to populate + resourceGroupName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + resourceGroupNameSelector: + description: Selector for a ResourceGroup in azure to populate + resourceGroupName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + solutionName: + description: Specifies the name of the solution to be deployed. + See here for options.Changing this forces a new resource to + be created. + type: string + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + workspaceName: + description: The full name of the Log Analytics workspace with + which the solution will be linked. Changing this forces a new + resource to be created. + type: string + workspaceNameRef: + description: Reference to a Workspace in operationalinsights to + populate workspaceName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + workspaceNameSelector: + description: Selector for a Workspace in operationalinsights to + populate workspaceName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + workspaceResourceId: + description: The full resource ID of the Log Analytics workspace + with which the solution will be linked. Changing this forces + a new resource to be created. + type: string + workspaceResourceIdRef: + description: Reference to a Workspace in operationalinsights to + populate workspaceResourceId. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + workspaceResourceIdSelector: + description: Selector for a Workspace in operationalinsights to + populate workspaceResourceId. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + required: + - location + - plan + - solutionName + type: object + providerConfigRef: + default: + name: default + description: ProviderConfigReference specifies how the provider that + will be used to create, observe, update, and delete this managed + resource should be configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + providerRef: + description: 'ProviderReference specifies the provider that will be + used to create, observe, update, and delete this managed resource. + Deprecated: Please use ProviderConfigReference, i.e. `providerConfigRef`' + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: PublishConnectionDetailsTo specifies the connection secret + config which contains a name, metadata and a reference to secret + store config to which any connection details for this managed resource + should be written. Connection details frequently include the endpoint, + username, and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: SecretStoreConfigRef specifies which secret store + config should be used for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: Annotations are the annotations to be added to + connection secret. - For Kubernetes secrets, this will be + used as "metadata.annotations". - It is up to Secret Store + implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: Labels are the labels/tags to be added to connection + secret. - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store + types. + type: object + type: + description: Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: WriteConnectionSecretToReference specifies the namespace + and name of a Secret to which any connection details for this managed + resource should be written. Connection details frequently include + the endpoint, username, and password required to connect to the + managed resource. This field is planned to be replaced in a future + release in favor of PublishConnectionDetailsTo. Currently, both + could be set independently and connection details would be published + to both without affecting each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + status: + description: LogAnalyticsSolutionStatus defines the observed state of + LogAnalyticsSolution. + properties: + atProvider: + properties: + id: + type: string + plan: + description: A plan block as documented below. + items: + properties: + name: + type: string + type: object + type: array + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: LastTransitionTime is the last time this condition + transitioned from one status to another. + format: date-time + type: string + message: + description: A Message containing details about this condition's + last transition from one status to another, if any. + type: string + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: Type of this condition. At most one of each condition + type may apply to a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] diff --git a/package/crds/portal.azure.upbound.io_dashboards.yaml b/package/crds/portal.azure.upbound.io_dashboards.yaml new file mode 100644 index 000000000..979c6622b --- /dev/null +++ b/package/crds/portal.azure.upbound.io_dashboards.yaml @@ -0,0 +1,393 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.8.0 + creationTimestamp: null + name: dashboards.portal.azure.upbound.io +spec: + group: portal.azure.upbound.io + names: + categories: + - crossplane + - managed + - azure + kind: Dashboard + listKind: DashboardList + plural: dashboards + singular: dashboard + scope: Cluster + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=='Ready')].status + name: READY + type: string + - jsonPath: .status.conditions[?(@.type=='Synced')].status + name: SYNCED + type: string + - jsonPath: .metadata.annotations.crossplane\.io/external-name + name: EXTERNAL-NAME + type: string + - jsonPath: .metadata.creationTimestamp + name: AGE + type: date + name: v1beta1 + schema: + openAPIV3Schema: + description: Dashboard is the Schema for the Dashboards API. Manages a shared + dashboard in the Azure Portal. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: DashboardSpec defines the desired state of Dashboard + properties: + deletionPolicy: + default: Delete + description: DeletionPolicy specifies what will happen to the underlying + external when this managed resource is deleted - either "Delete" + or "Orphan" the external resource. + enum: + - Orphan + - Delete + type: string + forProvider: + properties: + dashboardProperties: + description: JSON data representing dashboard body. See above + for details on how to obtain this from the Portal. + type: string + location: + description: Specifies the supported Azure location where the + resource exists. Changing this forces a new resource to be created. + type: string + name: + description: Specifies the name of the Shared Dashboard. Changing + this forces a new resource to be created. + type: string + resourceGroupName: + description: The name of the resource group in which to create + the dashboard. Changing this forces a new resource to be created. + type: string + resourceGroupNameRef: + description: Reference to a ResourceGroup in azure to populate + resourceGroupName. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + resourceGroupNameSelector: + description: Selector for a ResourceGroup in azure to populate + resourceGroupName. + properties: + matchControllerRef: + description: MatchControllerRef ensures an object with the + same controller reference as the selecting object is selected. + type: boolean + matchLabels: + additionalProperties: + type: string + description: MatchLabels ensures an object with matching labels + is selected. + type: object + policy: + description: Policies for selection. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + type: object + tags: + additionalProperties: + type: string + description: A mapping of tags to assign to the resource. + type: object + required: + - location + - name + type: object + providerConfigRef: + default: + name: default + description: ProviderConfigReference specifies how the provider that + will be used to create, observe, update, and delete this managed + resource should be configured. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + providerRef: + description: 'ProviderReference specifies the provider that will be + used to create, observe, update, and delete this managed resource. + Deprecated: Please use ProviderConfigReference, i.e. `providerConfigRef`' + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of this + reference is required. The default is 'Required', which + means the reconcile will fail if the reference cannot be + resolved. 'Optional' means this reference will be a no-op + if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will attempt + to resolve the reference only when the corresponding field + is not present. Use 'Always' to resolve the reference on + every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + publishConnectionDetailsTo: + description: PublishConnectionDetailsTo specifies the connection secret + config which contains a name, metadata and a reference to secret + store config to which any connection details for this managed resource + should be written. Connection details frequently include the endpoint, + username, and password required to connect to the managed resource. + properties: + configRef: + default: + name: default + description: SecretStoreConfigRef specifies which secret store + config should be used for this ConnectionSecret. + properties: + name: + description: Name of the referenced object. + type: string + policy: + description: Policies for referencing. + properties: + resolution: + default: Required + description: Resolution specifies whether resolution of + this reference is required. The default is 'Required', + which means the reconcile will fail if the reference + cannot be resolved. 'Optional' means this reference + will be a no-op if it cannot be resolved. + enum: + - Required + - Optional + type: string + resolve: + description: Resolve specifies when this reference should + be resolved. The default is 'IfNotPresent', which will + attempt to resolve the reference only when the corresponding + field is not present. Use 'Always' to resolve the reference + on every reconcile. + enum: + - Always + - IfNotPresent + type: string + type: object + required: + - name + type: object + metadata: + description: Metadata is the metadata for connection secret. + properties: + annotations: + additionalProperties: + type: string + description: Annotations are the annotations to be added to + connection secret. - For Kubernetes secrets, this will be + used as "metadata.annotations". - It is up to Secret Store + implementation for others store types. + type: object + labels: + additionalProperties: + type: string + description: Labels are the labels/tags to be added to connection + secret. - For Kubernetes secrets, this will be used as "metadata.labels". + - It is up to Secret Store implementation for others store + types. + type: object + type: + description: Type is the SecretType for the connection secret. + - Only valid for Kubernetes Secret Stores. + type: string + type: object + name: + description: Name is the name of the connection secret. + type: string + required: + - name + type: object + writeConnectionSecretToRef: + description: WriteConnectionSecretToReference specifies the namespace + and name of a Secret to which any connection details for this managed + resource should be written. Connection details frequently include + the endpoint, username, and password required to connect to the + managed resource. This field is planned to be replaced in a future + release in favor of PublishConnectionDetailsTo. Currently, both + could be set independently and connection details would be published + to both without affecting each other. + properties: + name: + description: Name of the secret. + type: string + namespace: + description: Namespace of the secret. + type: string + required: + - name + - namespace + type: object + required: + - forProvider + type: object + status: + description: DashboardStatus defines the observed state of Dashboard. + properties: + atProvider: + properties: + id: + description: The ID of the Dashboard. + type: string + type: object + conditions: + description: Conditions of the resource. + items: + description: A Condition that may apply to a resource. + properties: + lastTransitionTime: + description: LastTransitionTime is the last time this condition + transitioned from one status to another. + format: date-time + type: string + message: + description: A Message containing details about this condition's + last transition from one status to another, if any. + type: string + reason: + description: A Reason for this condition's last transition from + one status to another. + type: string + status: + description: Status of this condition; is it currently True, + False, or Unknown? + type: string + type: + description: Type of this condition. At most one of each condition + type may apply to a resource at any point in time. + type: string + required: + - lastTransitionTime + - reason + - status + - type + type: object + type: array + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: []