Skip to content

Commit

Permalink
Enable Dogstatsd UDS in an emptyDir by default (#331)
Browse files Browse the repository at this point in the history
* Enable Dogstatsd UDS in an emptyDir by default
* cleanup some tests
* Add missing RBAC for compliance
  • Loading branch information
clamoriniere committed Jul 19, 2021
1 parent 9dd611c commit 5af66e7
Show file tree
Hide file tree
Showing 8 changed files with 249 additions and 148 deletions.
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -90,10 +90,10 @@ docker-push: ## Push the docker image

##@ Test

test: build manifests verify-license gotest ## Run unit tests and E2E tests
test: build manifests generate fmt vet verify-license gotest ## Run unit tests and E2E tests

ENVTEST_ASSETS_DIR=$(shell pwd)/testbin
gotest: manifests generate fmt vet ## Run tests.
gotest: ## Run tests.
source ${ENVTEST_ASSETS_DIR}/setup-envtest.sh; fetch_envtest_tools $(ENVTEST_ASSETS_DIR); setup_envtest_env $(ENVTEST_ASSETS_DIR); go test ./... -coverprofile cover.out

CONTROLLER_GEN = $(shell pwd)/bin/controller-gen
Expand Down
10 changes: 3 additions & 7 deletions api/v1alpha1/datadogagent_default.go
Original file line number Diff line number Diff line change
Expand Up @@ -392,11 +392,10 @@ func DefaultConfigDogstatsd(config *NodeAgentConfig) *DogstatsdConfig {
}

// DefaultConfigDogstatsdUDS used to default DSDUnixDomainSocketSpec
// rreturn the defaulted DSDUnixDomainSocketSpec
// return the defaulted DSDUnixDomainSocketSpec
func DefaultConfigDogstatsdUDS(dsd *DogstatsdConfig) *DSDUnixDomainSocketSpec {
if dsd.UnixDomainSocket == nil {
dsd.UnixDomainSocket = &DSDUnixDomainSocketSpec{Enabled: NewBoolPointer(defaultUseDogStatsDSocketVolume)}
return dsd.UnixDomainSocket
dsd.UnixDomainSocket = &DSDUnixDomainSocketSpec{}
}

udsOverride := &DSDUnixDomainSocketSpec{}
Expand All @@ -405,15 +404,12 @@ func DefaultConfigDogstatsdUDS(dsd *DogstatsdConfig) *DSDUnixDomainSocketSpec {
udsOverride.Enabled = dsd.UnixDomainSocket.Enabled
}

if !BoolValue(dsd.UnixDomainSocket.Enabled) {
return udsOverride
}

if dsd.UnixDomainSocket.HostFilepath == nil {
socketPath := path.Join(defaultHostDogstatsdSocketPath, defaultHostDogstatsdSocketName)
dsd.UnixDomainSocket.HostFilepath = &socketPath
udsOverride.HostFilepath = dsd.UnixDomainSocket.HostFilepath
}

return udsOverride
}

Expand Down
31 changes: 24 additions & 7 deletions api/v1alpha1/datadogagent_default_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,18 @@ func TestDefaultConfigDogstatsd(t *testing.T) {
dsd: NodeAgentConfig{},
override: &DogstatsdConfig{
DogstatsdOriginDetection: NewBoolPointer(false), // defaultDogstatsdOriginDetection
UnixDomainSocket: &DSDUnixDomainSocketSpec{Enabled: NewBoolPointer(false)},
UnixDomainSocket: &DSDUnixDomainSocketSpec{
Enabled: NewBoolPointer(false),
HostFilepath: &defaultPath,
},
},
internal: NodeAgentConfig{
Dogstatsd: &DogstatsdConfig{
DogstatsdOriginDetection: NewBoolPointer(false),
UnixDomainSocket: &DSDUnixDomainSocketSpec{Enabled: NewBoolPointer(false)},
UnixDomainSocket: &DSDUnixDomainSocketSpec{
Enabled: NewBoolPointer(false),
HostFilepath: &defaultPath,
},
},
},
},
Expand Down Expand Up @@ -72,14 +78,16 @@ func TestDefaultConfigDogstatsd(t *testing.T) {
},
override: &DogstatsdConfig{
UnixDomainSocket: &DSDUnixDomainSocketSpec{
Enabled: NewBoolPointer(false),
Enabled: NewBoolPointer(false),
HostFilepath: &defaultPath,
},
},
internal: NodeAgentConfig{
Dogstatsd: &DogstatsdConfig{
DogstatsdOriginDetection: NewBoolPointer(false),
UnixDomainSocket: &DSDUnixDomainSocketSpec{
Enabled: NewBoolPointer(false),
Enabled: NewBoolPointer(false),
HostFilepath: &defaultPath,
},
},
},
Expand Down Expand Up @@ -440,7 +448,10 @@ func TestDefaultDatadogAgentSpecAgent(t *testing.T) {
// CriSocket unset as we use latest
Dogstatsd: &DogstatsdConfig{
DogstatsdOriginDetection: NewBoolPointer(false),
UnixDomainSocket: &DSDUnixDomainSocketSpec{Enabled: NewBoolPointer(false)},
UnixDomainSocket: &DSDUnixDomainSocketSpec{
Enabled: NewBoolPointer(false),
HostFilepath: NewStringPointer(path.Join(defaultHostDogstatsdSocketPath, defaultHostDogstatsdSocketName)),
},
},
},
DeploymentStrategy: &DaemonSetDeploymentStrategy{
Expand Down Expand Up @@ -487,7 +498,10 @@ func TestDefaultDatadogAgentSpecAgent(t *testing.T) {
HealthPort: NewInt32Pointer(5555),
Dogstatsd: &DogstatsdConfig{
DogstatsdOriginDetection: NewBoolPointer(false),
UnixDomainSocket: &DSDUnixDomainSocketSpec{Enabled: NewBoolPointer(false)},
UnixDomainSocket: &DSDUnixDomainSocketSpec{
Enabled: NewBoolPointer(false),
HostFilepath: NewStringPointer(path.Join(defaultHostDogstatsdSocketPath, defaultHostDogstatsdSocketName)),
},
},
},
DeploymentStrategy: &DaemonSetDeploymentStrategy{
Expand Down Expand Up @@ -617,7 +631,10 @@ func TestDefaultDatadogAgentSpecAgent(t *testing.T) {
},
Dogstatsd: &DogstatsdConfig{
DogstatsdOriginDetection: NewBoolPointer(false),
UnixDomainSocket: &DSDUnixDomainSocketSpec{Enabled: NewBoolPointer(true), HostFilepath: NewStringPointer("/var/run/datadog/statsd.sock")},
UnixDomainSocket: &DSDUnixDomainSocketSpec{
Enabled: NewBoolPointer(true),
HostFilepath: NewStringPointer("/var/run/datadog/statsd.sock"),
},
},
},
Rbac: &RbacConfig{Create: NewBoolPointer(true)},
Expand Down
8 changes: 8 additions & 0 deletions config/rbac/role.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -488,6 +488,14 @@ rules:
- patch
- update
- watch
- apiGroups:
- policy
resources:
- podsecuritypolicies
verbs:
- get
- list
- watch
- apiGroups:
- quota.openshift.io
resources:
Expand Down

0 comments on commit 5af66e7

Please sign in to comment.