diff --git a/api/v1alpha1/opentelemetrycollector_types.go b/api/v1alpha1/opentelemetrycollector_types.go index 77172ef012..63921453a2 100644 --- a/api/v1alpha1/opentelemetrycollector_types.go +++ b/api/v1alpha1/opentelemetrycollector_types.go @@ -44,7 +44,7 @@ type OpenTelemetryCollectorSpec struct { // TargetAllocator indicates a value which determines whether to spawn a target allocation resource or not. // +optional // +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true - TargetAllocator OpenTelemetryTargetAllocator `json:"targetAllocator,omitempty"` + TargetAllocator OpenTelemetryTargetAllocatorSpec `json:"targetAllocator,omitempty"` // Mode represents how the collector should be deployed (deployment, daemonset, statefulset or sidecar) // +optional @@ -121,8 +121,8 @@ type OpenTelemetryCollectorStatus struct { Messages []string `json:"messages,omitempty"` } -// OpenTelemetryTargetAllocator defines the configurations for the Prometheus target allocator. -type OpenTelemetryTargetAllocator struct { +// OpenTelemetryTargetAllocatorSpec defines the configurations for the Prometheus target allocator. +type OpenTelemetryTargetAllocatorSpec struct { // Enabled indicates whether to use a target allocation mechanism for Prometheus targets or not. // +optional Enabled bool `json:"enabled,omitempty"` diff --git a/api/v1alpha1/zz_generated.deepcopy.go b/api/v1alpha1/zz_generated.deepcopy.go index d29db7cd6a..9a0fffd24f 100644 --- a/api/v1alpha1/zz_generated.deepcopy.go +++ b/api/v1alpha1/zz_generated.deepcopy.go @@ -179,16 +179,16 @@ func (in *OpenTelemetryCollectorStatus) DeepCopy() *OpenTelemetryCollectorStatus } // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *OpenTelemetryTargetAllocator) DeepCopyInto(out *OpenTelemetryTargetAllocator) { +func (in *OpenTelemetryTargetAllocatorSpec) DeepCopyInto(out *OpenTelemetryTargetAllocatorSpec) { *out = *in } -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenTelemetryTargetAllocator. -func (in *OpenTelemetryTargetAllocator) DeepCopy() *OpenTelemetryTargetAllocator { +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenTelemetryTargetAllocatorSpec. +func (in *OpenTelemetryTargetAllocatorSpec) DeepCopy() *OpenTelemetryTargetAllocatorSpec { if in == nil { return nil } - out := new(OpenTelemetryTargetAllocator) + out := new(OpenTelemetryTargetAllocatorSpec) in.DeepCopyInto(out) return out } diff --git a/pkg/collector/adapters/config_to_ports.go b/pkg/collector/adapters/config_to_ports.go index 70f12a388f..a3fc2822cb 100644 --- a/pkg/collector/adapters/config_to_ports.go +++ b/pkg/collector/adapters/config_to_ports.go @@ -73,7 +73,7 @@ func ConfigToReceiverPorts(logger logr.Logger, config map[interface{}]interface{ // should we break the process and return an error, or just ignore this faulty parser // and let the other parsers add their ports to the service? right now, the best // option seems to be to log the failures and move on, instead of failing them all - logger.Error(err, "parser for '%s' has returned an error: %v", rcvrName, err) + logger.Error(err, "parser for '%s' has returned an error: %w", rcvrName, err) continue } diff --git a/pkg/collector/reconcile/configmap.go b/pkg/collector/reconcile/configmap.go index cb57d9c45e..c628165dbe 100644 --- a/pkg/collector/reconcile/configmap.go +++ b/pkg/collector/reconcile/configmap.go @@ -44,19 +44,19 @@ func ConfigMaps(ctx context.Context, params Params) error { if params.Instance.Spec.TargetAllocator.Enabled { cm, err := desiredTAConfigMap(params) if err != nil { - return fmt.Errorf("failed to parse config: %v", err) + return fmt.Errorf("failed to parse config: %w", err) } desired = append(desired, cm) } // first, handle the create/update parts if err := expectedConfigMaps(ctx, params, desired, true); err != nil { - return fmt.Errorf("failed to reconcile the expected configmaps: %v", err) + return fmt.Errorf("failed to reconcile the expected configmaps: %w", err) } // then, delete the extra objects if err := deleteConfigMaps(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the configmaps to be deleted: %v", err) + return fmt.Errorf("failed to reconcile the configmaps to be deleted: %w", err) } return nil diff --git a/pkg/collector/reconcile/configmap_test.go b/pkg/collector/reconcile/configmap_test.go index d9319c6560..01747b0828 100644 --- a/pkg/collector/reconcile/configmap_test.go +++ b/pkg/collector/reconcile/configmap_test.go @@ -184,7 +184,7 @@ func TestExpectedConfigMap(t *testing.T) { }, NodePort: 0, }}, - TargetAllocator: v1alpha1.OpenTelemetryTargetAllocator{ + TargetAllocator: v1alpha1.OpenTelemetryTargetAllocatorSpec{ Enabled: true, }, Config: "", diff --git a/pkg/collector/reconcile/daemonset.go b/pkg/collector/reconcile/daemonset.go index fa6a1a6f82..8acbfa2229 100644 --- a/pkg/collector/reconcile/daemonset.go +++ b/pkg/collector/reconcile/daemonset.go @@ -38,12 +38,12 @@ func DaemonSets(ctx context.Context, params Params) error { // first, handle the create/update parts if err := expectedDaemonSets(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the expected daemon sets: %v", err) + return fmt.Errorf("failed to reconcile the expected daemon sets: %w", err) } // then, delete the extra objects if err := deleteDaemonSets(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the daemon sets to be deleted: %v", err) + return fmt.Errorf("failed to reconcile the daemon sets to be deleted: %w", err) } return nil diff --git a/pkg/collector/reconcile/deployment.go b/pkg/collector/reconcile/deployment.go index 9a4cba39db..8176390948 100644 --- a/pkg/collector/reconcile/deployment.go +++ b/pkg/collector/reconcile/deployment.go @@ -43,12 +43,12 @@ func Deployments(ctx context.Context, params Params) error { // first, handle the create/update parts if err := expectedDeployments(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the expected deployments: %v", err) + return fmt.Errorf("failed to reconcile the expected deployments: %w", err) } // then, delete the extra objects if err := deleteDeployments(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the deployments to be deleted: %v", err) + return fmt.Errorf("failed to reconcile the deployments to be deleted: %w", err) } return nil diff --git a/pkg/collector/reconcile/deployment_test.go b/pkg/collector/reconcile/deployment_test.go index a8f2ca34ac..668cb93191 100644 --- a/pkg/collector/reconcile/deployment_test.go +++ b/pkg/collector/reconcile/deployment_test.go @@ -116,7 +116,7 @@ func TestExpectedDeployments(t *testing.T) { assert.Equal(t, int32(2), *actual.Spec.Replicas) }) - t.Run("should not update target allocator deployment when the config is updated", func(t *testing.T) { + t.Run("should not update target allocator deployment when the container image is not updated", func(t *testing.T) { ctx := context.Background() createObjectIfNotExists(t, "test-targetallocator", &expectedTADeploy) orgUID := expectedTADeploy.OwnerReferences[0].UID @@ -124,6 +124,7 @@ func TestExpectedDeployments(t *testing.T) { updatedParam, err := newParams("test/test-img") assert.NoError(t, err) updatedDeploy := targetallocator.Deployment(updatedParam.Config, logger, param.Instance) + *updatedDeploy.Spec.Replicas = int32(3) err = expectedDeployments(ctx, param, []v1.Deployment{updatedDeploy}) assert.NoError(t, err) @@ -133,8 +134,6 @@ func TestExpectedDeployments(t *testing.T) { assert.NoError(t, err) assert.True(t, exists) - t.Log(expectedTADeploy.Spec.Template.Spec.Containers[0].Image) - t.Log(actual.Spec.Template.Spec.Containers[0].Image) assert.Equal(t, orgUID, actual.OwnerReferences[0].UID) assert.Equal(t, expectedTADeploy.Spec.Template.Spec.Containers[0].Image, actual.Spec.Template.Spec.Containers[0].Image) assert.Equal(t, int32(1), *actual.Spec.Replicas) @@ -158,8 +157,6 @@ func TestExpectedDeployments(t *testing.T) { assert.NoError(t, err) assert.True(t, exists) assert.Equal(t, orgUID, actual.OwnerReferences[0].UID) - t.Log(expectedTADeploy.Spec.Template.Spec.Containers[0].Image) - t.Log(actual.Spec.Template.Spec.Containers[0].Image) assert.NotEqual(t, expectedTADeploy.Spec.Template.Spec.Containers[0].Image, actual.Spec.Template.Spec.Containers[0].Image) assert.Equal(t, int32(1), *actual.Spec.Replicas) }) diff --git a/pkg/collector/reconcile/service.go b/pkg/collector/reconcile/service.go index d50760470a..b1c9239441 100644 --- a/pkg/collector/reconcile/service.go +++ b/pkg/collector/reconcile/service.go @@ -56,12 +56,12 @@ func Services(ctx context.Context, params Params) error { // first, handle the create/update parts if err := expectedServices(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the expected services: %v", err) + return fmt.Errorf("failed to reconcile the expected services: %w", err) } // then, delete the extra objects if err := deleteServices(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the services to be deleted: %v", err) + return fmt.Errorf("failed to reconcile the services to be deleted: %w", err) } return nil diff --git a/pkg/collector/reconcile/serviceaccount.go b/pkg/collector/reconcile/serviceaccount.go index 9bdbaf5448..ecf140b3dc 100644 --- a/pkg/collector/reconcile/serviceaccount.go +++ b/pkg/collector/reconcile/serviceaccount.go @@ -39,12 +39,12 @@ func ServiceAccounts(ctx context.Context, params Params) error { // first, handle the create/update parts if err := expectedServiceAccounts(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the expected service accounts: %v", err) + return fmt.Errorf("failed to reconcile the expected service accounts: %w", err) } // then, delete the extra objects if err := deleteServiceAccounts(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the service accounts to be deleted: %v", err) + return fmt.Errorf("failed to reconcile the service accounts to be deleted: %w", err) } return nil diff --git a/pkg/collector/reconcile/statefulset.go b/pkg/collector/reconcile/statefulset.go index 0468586986..e1ab648b11 100644 --- a/pkg/collector/reconcile/statefulset.go +++ b/pkg/collector/reconcile/statefulset.go @@ -39,12 +39,12 @@ func StatefulSets(ctx context.Context, params Params) error { // first, handle the create/update parts if err := expectedStatefulSets(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the expected stateful sets: %v", err) + return fmt.Errorf("failed to reconcile the expected stateful sets: %w", err) } // then, delete the extra objects if err := deleteStatefulSets(ctx, params, desired); err != nil { - return fmt.Errorf("failed to reconcile the stateful sets to be deleted: %v", err) + return fmt.Errorf("failed to reconcile the stateful sets to be deleted: %w", err) } return nil diff --git a/pkg/collector/reconcile/suite_test.go b/pkg/collector/reconcile/suite_test.go index 434ba36c15..7fbb84c52d 100644 --- a/pkg/collector/reconcile/suite_test.go +++ b/pkg/collector/reconcile/suite_test.go @@ -124,7 +124,7 @@ func newParams(containerImage string) (Params, error) { replicas := int32(1) configYAML, err := ioutil.ReadFile("test.yaml") if err != nil { - return Params{}, fmt.Errorf("Error getting yaml file: %v", err) + return Params{}, fmt.Errorf("Error getting yaml file: %w", err) } cfg := config.New() @@ -153,7 +153,7 @@ func newParams(containerImage string) (Params, error) { }, NodePort: 0, }}, - TargetAllocator: v1alpha1.OpenTelemetryTargetAllocator{ + TargetAllocator: v1alpha1.OpenTelemetryTargetAllocatorSpec{ Enabled: true, Image: containerImage, }, diff --git a/pkg/targetallocator/container_test.go b/pkg/targetallocator/container_test.go index 61b130e988..70314f3b69 100644 --- a/pkg/targetallocator/container_test.go +++ b/pkg/targetallocator/container_test.go @@ -43,7 +43,7 @@ func TestContainerWithImageOverridden(t *testing.T) { // prepare otelcol := v1alpha1.OpenTelemetryCollector{ Spec: v1alpha1.OpenTelemetryCollectorSpec{ - TargetAllocator: v1alpha1.OpenTelemetryTargetAllocator{ + TargetAllocator: v1alpha1.OpenTelemetryTargetAllocatorSpec{ Enabled: true, Image: "overridden-image", }, @@ -62,7 +62,7 @@ func TestContainerVolumes(t *testing.T) { // prepare otelcol := v1alpha1.OpenTelemetryCollector{ Spec: v1alpha1.OpenTelemetryCollectorSpec{ - TargetAllocator: v1alpha1.OpenTelemetryTargetAllocator{ + TargetAllocator: v1alpha1.OpenTelemetryTargetAllocatorSpec{ Enabled: true, Image: "default-image", },