Skip to content

Commit

Permalink
Merge branch 'main' into tbavelier/operator-chart-v1.11.0
Browse files Browse the repository at this point in the history
  • Loading branch information
tbavelier authored Dec 20, 2024
2 parents d454706 + 2c10d22 commit 4391efc
Show file tree
Hide file tree
Showing 10 changed files with 50 additions and 70 deletions.
8 changes: 8 additions & 0 deletions charts/datadog/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Datadog changelog

## 3.84.1

* Remove deployments.apps example of `datadog.kubernetesResourcesLabelsAsTags` and `datadog.kubernetesResourcesAnnotationsAsTags` since it's not implemented yet

## 3.84.0

* Set the default value of `datadog.processAgent.runInCoreAgent` to `true`.

## 3.83.1

* Add /sys/fs/bpf to system-probe volume mounts
Expand Down
2 changes: 1 addition & 1 deletion charts/datadog/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
apiVersion: v1
name: datadog
version: 3.83.1
version: 3.84.1
appVersion: "7"
description: Datadog Agent
keywords:
Expand Down
4 changes: 2 additions & 2 deletions charts/datadog/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Datadog

![Version: 3.83.1](https://img.shields.io/badge/Version-3.83.1-informational?style=flat-square) ![AppVersion: 7](https://img.shields.io/badge/AppVersion-7-informational?style=flat-square)
![Version: 3.84.1](https://img.shields.io/badge/Version-3.84.1-informational?style=flat-square) ![AppVersion: 7](https://img.shields.io/badge/AppVersion-7-informational?style=flat-square)

[Datadog](https://www.datadoghq.com/) is a hosted infrastructure monitoring platform. This chart adds the Datadog Agent to all nodes in your cluster via a DaemonSet. It also optionally depends on the [kube-state-metrics chart](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-state-metrics). For more information about monitoring Kubernetes with Datadog, please refer to the [Datadog documentation website](https://docs.datadoghq.com/agent/basic_agent_usage/kubernetes/).

Expand Down Expand Up @@ -811,7 +811,7 @@ helm install <RELEASE_NAME> \
| datadog.processAgent.enabled | bool | `true` | Set this to true to enable live process monitoring agent DEPRECATED. Set `datadog.processAgent.processCollection` or `datadog.processAgent.containerCollection` instead. # Note: /etc/passwd is automatically mounted when `processCollection`, `processDiscovery`, or `containerCollection` is enabled. # ref: https://docs.datadoghq.com/graphing/infrastructure/process/#kubernetes-daemonset |
| datadog.processAgent.processCollection | bool | `false` | Set this to true to enable process collection |
| datadog.processAgent.processDiscovery | bool | `true` | Enables or disables autodiscovery of integrations |
| datadog.processAgent.runInCoreAgent | bool | `false` | Set this to true to run the following features in the core agent: Live Processes, Live Containers, Process Discovery. # This requires Agent 7.57.0+ and Linux. |
| datadog.processAgent.runInCoreAgent | bool | `true` | Set this to true to run the following features in the core agent: Live Processes, Live Containers, Process Discovery. # This requires Agent 7.60.0+ and Linux. |
| datadog.processAgent.stripProcessArguments | bool | `false` | Set this to scrub all arguments from collected processes # Requires datadog.processAgent.processCollection to be set to true to have any effect # ref: https://docs.datadoghq.com/infrastructure/process/?tab=linuxwindows#process-arguments-scrubbing |
| datadog.profiling.enabled | string | `nil` | Enable Continuous Profiler by injecting `DD_PROFILING_ENABLED` environment variable with the same value to all pods in the cluster Valid values are: - false: Profiler is turned off and can not be turned on by other means. - null: Profiler is turned off, but can be turned on by other means. - auto: Profiler is turned off, but the library will turn it on if the application is a good candidate for profiling. - true: Profiler is turned on. |
| datadog.prometheusScrape.additionalConfigs | list | `[]` | Allows adding advanced openmetrics check configurations with custom discovery rules. (Requires Agent version 7.27+) |
Expand Down
4 changes: 2 additions & 2 deletions charts/datadog/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
{{- $version = "6.55.1" -}}
{{- end -}}
{{- if and (eq $length 1) (or (eq $version "7") (eq $version "latest")) -}}
{{- $version = "7.58.1" -}}
{{- $version = "7.59.0" -}}
{{- end -}}
{{- $version -}}
{{- end -}}
Expand Down Expand Up @@ -1011,7 +1011,7 @@ Create RBACs for custom resources
false
{{- else if (ne (include "get-process-checks-in-core-agent-envvar" .) "") -}}
{{- include "get-process-checks-in-core-agent-envvar" . -}}
{{- else if and (not .Values.agents.image.doNotCheckTag) .Values.datadog.processAgent.runInCoreAgent (semverCompare ">=7.57.0-0" (include "get-agent-version" .)) -}}
{{- else if and (not .Values.agents.image.doNotCheckTag) .Values.datadog.processAgent.runInCoreAgent (semverCompare ">=7.60.0-0" (include "get-agent-version" .)) -}}
true
{{- else -}}
false
Expand Down
8 changes: 2 additions & 6 deletions charts/datadog/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -257,8 +257,6 @@ datadog:

# datadog.kubernetesResourcesLabelsAsTags -- Provide a mapping of Kubernetes Resources Labels to Datadog Tags
kubernetesResourcesLabelsAsTags: {}
# deployments.apps:
# x-team: team-from-label
# pods:
# x-ref: reference
# namespaces:
Expand All @@ -268,8 +266,6 @@ datadog:

# datadog.kubernetesResourcesAnnotationsAsTags -- Provide a mapping of Kubernetes Resources Annotations to Datadog Tags
kubernetesResourcesAnnotationsAsTags: {}
# deployments.apps:
# x-team: team-from-annotation
# pods:
# x-ann: annotation-reference
# namespaces:
Expand Down Expand Up @@ -691,8 +687,8 @@ datadog:
processDiscovery: true

# datadog.processAgent.runInCoreAgent -- Set this to true to run the following features in the core agent: Live Processes, Live Containers, Process Discovery.
## This requires Agent 7.57.0+ and Linux.
runInCoreAgent: false
## This requires Agent 7.60.0+ and Linux.
runInCoreAgent: true

# datadog.processAgent.containerCollection -- Set this to true to enable container collection
## ref: https://docs.datadoghq.com/infrastructure/containers/?tab=helm
Expand Down
4 changes: 4 additions & 0 deletions charts/synthetics-private-location/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Datadog changelog

## 0.17.5

* Update private location image version to `1.54.0`.

## 0.17.4

* Update private location image version to `1.53.0`.
Expand Down
4 changes: 2 additions & 2 deletions charts/synthetics-private-location/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
apiVersion: v2
name: synthetics-private-location
version: 0.17.4
appVersion: 1.53.0
version: 0.17.5
appVersion: 1.54.0
description: Datadog Synthetics Private Location
keywords:
- monitoring
Expand Down
4 changes: 2 additions & 2 deletions charts/synthetics-private-location/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Datadog Synthetics Private Location

![Version: 0.17.4](https://img.shields.io/badge/Version-0.17.4-informational?style=flat-square) ![AppVersion: 1.53.0](https://img.shields.io/badge/AppVersion-1.53.0-informational?style=flat-square)
![Version: 0.17.5](https://img.shields.io/badge/Version-0.17.5-informational?style=flat-square) ![AppVersion: 1.54.0](https://img.shields.io/badge/AppVersion-1.54.0-informational?style=flat-square)

[Datadog](https://www.datadoghq.com/) is a hosted infrastructure monitoring platform. This chart adds a Datadog Synthetics Private Location Deployment. For more information about synthetics monitoring with Datadog, please refer to the [Datadog documentation website](https://docs.datadoghq.com/synthetics/private_locations/?tab=helmchart).

Expand Down Expand Up @@ -41,7 +41,7 @@ helm install <RELEASE_NAME> datadog/synthetics-private-location --set-file confi
| hostAliases | list | `[]` | Add entries to Datadog Synthetics Private Location PODs' /etc/hosts |
| image.pullPolicy | string | `"IfNotPresent"` | Define the pullPolicy for Datadog Synthetics Private Location image |
| image.repository | string | `"gcr.io/datadoghq/synthetics-private-location-worker"` | Repository to use for Datadog Synthetics Private Location image |
| image.tag | string | `"1.53.0"` | Define the Datadog Synthetics Private Location version to use |
| image.tag | string | `"1.54.0"` | Define the Datadog Synthetics Private Location version to use |
| imagePullSecrets | list | `[]` | Datadog Synthetics Private Location repository pullSecret (ex: specify docker registry credentials) |
| nameOverride | string | `""` | Override name of app |
| nodeSelector | object | `{}` | Allows to schedule Datadog Synthetics Private Location on specific nodes |
Expand Down
2 changes: 1 addition & 1 deletion charts/synthetics-private-location/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ image:
# image.pullPolicy -- Define the pullPolicy for Datadog Synthetics Private Location image
pullPolicy: IfNotPresent
# image.tag -- Define the Datadog Synthetics Private Location version to use
tag: 1.53.0
tag: 1.54.0

# dnsPolicy -- DNS Policy to set to the Datadog Synthetics Private Location PODs
dnsPolicy: ClusterFirst
Expand Down
80 changes: 26 additions & 54 deletions test/datadog/process_agent_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,21 +29,22 @@ func Test_processAgentConfigs(t *testing.T) {
assertions func(t *testing.T, manifest string)
}{
{
name: "default",
name: "checks in process agent -- linux",
command: common.HelmCommand{
ReleaseName: "datadog",
ChartPath: "../../charts/datadog",
ShowOnly: []string{"templates/daemonset.yaml"},
Values: []string{"../../charts/datadog/values.yaml"},
Overrides: map[string]string{
"datadog.apiKeyExistingSecret": "datadog-secret",
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.apiKeyExistingSecret": "datadog-secret",
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "false",
},
},
assertions: verifyDaemonsetMinimal,
assertions: verifyDaemonsetProcessAgentChecks,
},
{
name: "default windows",
name: "checks in process agent -- windows",
command: common.HelmCommand{
ReleaseName: "datadog",
ChartPath: "../../charts/datadog",
Expand All @@ -55,10 +56,10 @@ func Test_processAgentConfigs(t *testing.T) {
"targetSystem": "windows",
},
},
assertions: verifyDaemonsetMinimalWindows,
assertions: verifyDaemonsetWindowsProcessAgentChecks,
},
{
name: "all checks off",
name: "no checks -- linux",
command: common.HelmCommand{
ReleaseName: "datadog",
ChartPath: "../../charts/datadog",
Expand All @@ -71,6 +72,7 @@ func Test_processAgentConfigs(t *testing.T) {
"datadog.processAgent.containerCollection": "false",
"datadog.processAgent.processDiscovery": "false",
"datadog.apm.instrumentation.language_detection.enabled": "false",
"datadog.processAgent.runInCoreAgent": "false",
},
},
assertions: verifyChecksOff,
Expand All @@ -90,45 +92,13 @@ func Test_processAgentConfigs(t *testing.T) {
"datadog.processAgent.processDiscovery": "false",
"datadog.apm.instrumentation.language_detection.enabled": "false",
"datadog.networkMonitoring.enabled": "true",
"datadog.processAgent.runInCoreAgent": "false",
},
},
assertions: verifyOnlyNetworkMonitoringEnabled,
},
{
name: "enable process checks in core agent -- linux with default version",
command: common.HelmCommand{
ReleaseName: "datadog",
ChartPath: "../../charts/datadog",
ShowOnly: []string{"templates/daemonset.yaml"},
Values: []string{"../../charts/datadog/values.yaml"},
Overrides: map[string]string{
"datadog.apiKeyExistingSecret": "datadog-secret",
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "true",
"datadog.processAgent.processCollection": "true",
},
},
assertions: verifyLinuxRunInCoreAgent,
},
{
name: "enable process checks in core agent -- linux with latest version",
command: common.HelmCommand{
ReleaseName: "datadog",
ChartPath: "../../charts/datadog",
ShowOnly: []string{"templates/daemonset.yaml"},
Values: []string{"../../charts/datadog/values.yaml"},
Overrides: map[string]string{
"datadog.apiKeyExistingSecret": "datadog-secret",
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "true",
"datadog.processAgent.processCollection": "true",
"agents.image.tag": "latest",
},
},
assertions: verifyLinuxRunInCoreAgent,
},
{
name: "enable process checks in core agent -- linux with version 7",
name: "enable process checks in core agent -- linux",
command: common.HelmCommand{
ReleaseName: "datadog",
ChartPath: "../../charts/datadog",
Expand All @@ -139,7 +109,7 @@ func Test_processAgentConfigs(t *testing.T) {
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "true",
"datadog.processAgent.processCollection": "true",
"agents.image.tag": "7",
"agents.image.tag": "7.60.0",
},
},
assertions: verifyLinuxRunInCoreAgent,
Expand All @@ -156,9 +126,10 @@ func Test_processAgentConfigs(t *testing.T) {
"datadog.appKeyExistingSecret": "datadog-secret",
"targetSystem": "windows",
"datadog.processAgent.runInCoreAgent": "true",
"agents.image.tag": "7.60.0",
},
},
assertions: verifyDaemonsetMinimalWindows,
assertions: verifyDaemonsetWindowsProcessAgentChecks,
},
{
name: "orchestrator enabled - latest version",
Expand All @@ -175,6 +146,7 @@ func Test_processAgentConfigs(t *testing.T) {
"datadog.processAgent.processDiscovery": "false",
"datadog.apm.instrumentation.language_detection.enabled": "false",
"datadog.orchestratorExplorer.enabled": "true",
"datadog.processAgent.runInCoreAgent": "false",
},
},
assertions: verifyOrchestratorEnabledLatest,
Expand Down Expand Up @@ -207,10 +179,10 @@ func Test_processAgentConfigs(t *testing.T) {
ShowOnly: []string{"templates/daemonset.yaml"},
Values: []string{"../../charts/datadog/values.yaml"},
Overrides: map[string]string{
"datadog.apiKeyExistingSecret": "datadog-secret",
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "true",
"agents.image.tag": "7.52.0",
"datadog.apiKeyExistingSecret": "datadog-secret",
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "true",
"agents.image.tag": "7.52.0",
},
},
assertions: verifyLinuxRunInCoreAgentOld,
Expand All @@ -223,10 +195,10 @@ func Test_processAgentConfigs(t *testing.T) {
ShowOnly: []string{"templates/daemonset.yaml"},
Values: []string{"../../charts/datadog/values.yaml"},
Overrides: map[string]string{
"datadog.apiKeyExistingSecret": "datadog-secret",
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "true",
"agents.image.doNotCheckTag": "true",
"datadog.apiKeyExistingSecret": "datadog-secret",
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "true",
"agents.image.doNotCheckTag": "true",
},
},
assertions: verifyLinuxRunInCoreAgentOld,
Expand Down Expand Up @@ -279,7 +251,7 @@ func Test_processAgentConfigs(t *testing.T) {
"datadog.appKeyExistingSecret": "datadog-secret",
"datadog.processAgent.runInCoreAgent": "true",
"datadog.processAgent.processCollection": "true",
"agents.image.tag": "7.57",
"agents.image.tag": "7.60.0",
"datadog.apm.instrumentation.language_detection.enabled": "true",
"datadog.apm.instrumentation.enabled": "true",
},
Expand All @@ -297,7 +269,7 @@ func Test_processAgentConfigs(t *testing.T) {
}
}

func verifyDaemonsetMinimal(t *testing.T, manifest string) {
func verifyDaemonsetProcessAgentChecks(t *testing.T, manifest string) {
var deployment appsv1.DaemonSet
common.Unmarshal(t, manifest, &deployment)
coreAgentContainer, ok := getContainer(t, deployment.Spec.Template.Spec.Containers, "agent")
Expand All @@ -315,7 +287,7 @@ func verifyDaemonsetMinimal(t *testing.T, manifest string) {
assert.True(t, getPasswdMount(t, processAgentContainer.VolumeMounts))
}

func verifyDaemonsetMinimalWindows(t *testing.T, manifest string) {
func verifyDaemonsetWindowsProcessAgentChecks(t *testing.T, manifest string) {
var deployment appsv1.DaemonSet
common.Unmarshal(t, manifest, &deployment)
coreAgentContainer, ok := getContainer(t, deployment.Spec.Template.Spec.Containers, "agent")
Expand Down

0 comments on commit 4391efc

Please sign in to comment.