Skip to content

Commit 8ded84e

Browse files
authored
Merge branch '7.82.x' into sarah/go-parser-labels-782-pt2
2 parents 9af5724 + 4a26b5d commit 8ded84e

177 files changed

Lines changed: 3613 additions & 3057 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitlab/test/functional_test/regression_detector.yml

Lines changed: 110 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ single_machine_performance-regression_detector-merge_base_check:
4343
echo "Merge base is ${SMP_MERGE_BASE}"
4444
BASELINE_SHA="${SMP_MERGE_BASE}"
4545
fi
46-
- BASELINE_COMMIT_TIME=$(git -c log.showSignature=false show --no-patch --format=%ct ${BASELINE_SHA})
4746
# Setup AWS credentials for single-machine-performance AWS account to check ECR images
4847
- AWS_NAMED_PROFILE="single-machine-performance"
4948
- SMP_ACCOUNT_ID=$($CI_PROJECT_DIR/tools/ci/fetch_secret.sh $SMP_ACCOUNT account_id) || exit $?
@@ -78,7 +77,116 @@ single_machine_performance-regression_detector-merge_base_check:
7877
BASELINE_COMMIT_TIME=$(git -c log.showSignature=false show --no-patch --format=%ct ${BASELINE_SHA})
7978
if [[ ${BASELINE_COMMIT_TIME} -le ${FOUR_DAYS_BEFORE_NOW} ]]
8079
then
81-
echo "ERROR: Merge-base of this branch is too old for SMP. Please update your branch by merging an up-to-date main branch into your branch or by rebasing it on an up-to-date main branch."
80+
echo "ERROR: Baseline commit (${BASELINE_SHA}) for this branch (${CI_COMMIT_BRANCH}) is too old for SMP. Please update your branch by merging or rebasing it onto an up-to-date ${SMP_BASE_BRANCH} branch."
81+
# Updating onto ${SMP_BASE_BRANCH} makes its tip this branch's new
82+
# merge base, so the next pipeline needs a baseline image for that
83+
# tip. A release branch can sit idle long enough for its tip's
84+
# image to age out of ECR, in which case that next pipeline fails
85+
# here too -- costing another image build, which takes 40-60
86+
# minutes once started plus unknown runner queue time. Start the
87+
# build now so it overlaps with the update instead of following it.
88+
#
89+
# Release branches only: a merge base with main has almost always
90+
# been built already by some other recent pipeline, and updating
91+
# onto main costs one pipeline rather than two.
92+
#
93+
# Best-effort -- a failure to trigger is reported but does not
94+
# change this job's outcome, which is a failure either way.
95+
if [[ "$SMP_BASE_BRANCH" =~ ^[0-9]+\.[0-9]+\.x$ ]]
96+
then
97+
SMP_BASE_TIP=$(git rev-parse "origin/${SMP_BASE_BRANCH}")
98+
# Trigger only on a *confirmed* miss. Throttling, expired
99+
# credentials and network errors all leave `describe-images`
100+
# stdout empty too, so the `[[ ! $(...) ]]` test the loop
101+
# above uses cannot tell "no such image" from "could not
102+
# check". Guessing wrong is cheap in that loop -- it steps
103+
# back one commit -- but here it starts an ~860-job pipeline,
104+
# and the two failures correlate: credentials expiring
105+
# mid-loop is itself a way to reach this branch spuriously.
106+
# The distinguishing information is on stderr, so capture
107+
# that and discard stdout. `if VAR=$(...)` is exempt from
108+
# `set -e`.
109+
if SMP_ECR_ERROR=$(aws ecr describe-images --region us-west-2 --profile single-machine-performance --registry-id "${SMP_ACCOUNT_ID}" --repository-name "${SMP_AGENT_TEAM_ID}-agent" --image-ids imageTag="${SMP_BASE_TIP}-7-full-amd64" 2>&1 >/dev/null)
110+
then
111+
echo "A baseline image already exists for the ${SMP_BASE_BRANCH} tip (${SMP_BASE_TIP})"
112+
elif [[ "${SMP_ECR_ERROR}" != *ImageNotFoundException* ]]
113+
then
114+
echo "WARNING: could not determine whether a baseline image exists for the ${SMP_BASE_BRANCH} tip (${SMP_BASE_TIP}), so not triggering a rebuild: ${SMP_ECR_ERROR}"
115+
else
116+
echo "No baseline image exists for the ${SMP_BASE_BRANCH} tip (${SMP_BASE_TIP}) - triggering a pipeline to build one now"
117+
# Report the triggered pipeline's URL rather than an
118+
# expected duration, which would go stale as build times
119+
# and runner queue depths change.
120+
#
121+
# `POST /trigger/pipeline`, not `POST /pipeline`: GitLab
122+
# allowlists `CI_JOB_TOKEN` for the former only, and it
123+
# authenticates through a `token` body parameter rather
124+
# than a header. `tasks/pipeline.py` starts child
125+
# pipelines the same way, for the same reason.
126+
#
127+
# This call therefore cannot be reproduced verbatim outside
128+
# a running job, since job tokens exist only inside one. A
129+
# personal token minted with `dda inv auth.gitlab` works
130+
# the other way around: it may use `POST /pipeline`, but is
131+
# not a valid `token` value for the trigger endpoint, which
132+
# accepts only trigger and job tokens. So the equivalent
133+
# local command is the `PRIVATE-TOKEN` one printed below,
134+
# aimed at a different endpoint on purpose.
135+
#
136+
# `CI_API_V4_URL` is https://gitlab.ddbuild.io/api/v4 and
137+
# `CI_PROJECT_ID` is 4670 for this project.
138+
#
139+
# The trailing `|| true` on both lines keeps this
140+
# best-effort. The runner runs this script under
141+
# `set -eo pipefail`, where a bare `VAR=$(failing-cmd)`
142+
# aborts the block -- which would skip the warning and
143+
# self-service output below, the most useful thing this
144+
# branch prints. `--fail` also makes curl exit nonzero on
145+
# an HTTP error while emitting nothing, and `jq` exits
146+
# nonzero on a non-JSON body, so the empty-string check
147+
# below is what actually detects failure.
148+
SMP_REBUILD_PIPELINE=$(curl --silent --show-error --fail --request POST --data "token=${CI_JOB_TOKEN}" --data "ref=${SMP_BASE_BRANCH}" "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/trigger/pipeline" || true)
149+
SMP_REBUILD_PIPELINE_URL=$(echo "${SMP_REBUILD_PIPELINE}" | jq -r '.web_url // empty' || true)
150+
if [[ -z "${SMP_REBUILD_PIPELINE_URL}" ]]
151+
then
152+
SMP_REBUILD_TRIGGERED="false"
153+
echo "WARNING: could not trigger a pipeline on ${SMP_BASE_BRANCH} - one may need to be started manually"
154+
else
155+
SMP_REBUILD_TRIGGERED="true"
156+
echo "Triggered ${SMP_REBUILD_PIPELINE_URL} on ${SMP_BASE_BRANCH}"
157+
# Name the job that publishes the image rather than
158+
# linking it. Resolving its URL means listing the
159+
# pipeline's jobs, and GitLab allowlists `CI_JOB_TOKEN`
160+
# for only `GET /job` out of the whole Jobs API, so that
161+
# lookup cannot succeed from here whatever it is given.
162+
echo "The baseline image for ${SMP_BASE_TIP} is published by the single_machine_performance-full-amd64-a7 job, listed at ${SMP_REBUILD_PIPELINE_URL}/builds"
163+
fi
164+
echo "NOTE: this job will keep failing until that image is published to SMP's ECR registry, so wait for it before re-running this job."
165+
# Give a self-service path to starting the build. Needed
166+
# when the trigger above failed, and also when a triggered
167+
# pipeline dies for reasons outside this job -- CI runners
168+
# are taken offline for maintenance periodically, which
169+
# kills the pipelines on them.
170+
#
171+
# `dda inv auth.gitlab` prints feature-flag lines to stdout
172+
# before the token, so the `tail -1` is load-bearing: without
173+
# it those lines land in the header value and curl fails with
174+
# "curl: (43) bad argument".
175+
echo "To start that pipeline yourself -- if the trigger above failed, or if the"
176+
echo "pipeline is cancelled, e.g. by CI runner maintenance -- either open"
177+
echo " https://gitlab.ddbuild.io/DataDog/datadog-agent/-/pipelines/new?ref=${SMP_BASE_BRANCH}"
178+
echo "and click the blue \"New pipeline\" button, or run this command from a"
179+
echo "datadog-agent checkout:"
180+
echo " curl --silent --show-error --fail \\"
181+
echo " --request POST \\"
182+
echo " --header \"PRIVATE-TOKEN: \$(dda inv auth.gitlab | tail -1)\" \\"
183+
echo " --data \"ref=${SMP_BASE_BRANCH}\" \\"
184+
echo " \"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/pipeline\""
185+
# Report the outcome, not the attempt -- tagging "true"
186+
# unconditionally would hide the trigger's failure rate.
187+
datadog-ci tag --level job --tags smp_baseline_rebuild_triggered:"${SMP_REBUILD_TRIGGERED}"
188+
fi
189+
fi
82190
datadog-ci tag --level job --tags smp_merge_base_failure_reason:"branch_too_old"
83191
exit 1
84192
fi

.gitlab/windows/build/source_test/windows.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ tests_windows-x64:
8787
-m 16384M
8888
-v "$(Get-Location):c:\mnt"
8989
-e AWS_NETWORKING=true
90+
-e CI
9091
-e GITLAB_CI
9192
-e CI_PIPELINE_ID
9293
-e CI_PROJECT_NAME
@@ -97,6 +98,7 @@ tests_windows-x64:
9798
-e GOPROXY
9899
-e GONOSUMDB
99100
-e PIP_INDEX_URL
101+
-e CI_IDENTITIES_GITLAB_ID_TOKEN
100102
${WINBUILDIMAGE}
101103
c:\mnt\tasks\winbuildscripts\sysprobe.bat
102104
- If ($lastExitCode -ne "0") { throw "Previous command returned $lastExitCode" }
@@ -117,6 +119,7 @@ tests_windows-x64:
117119
-m 16384M
118120
-v "$(Get-Location):c:\mnt"
119121
-e AWS_NETWORKING=true
122+
-e CI
120123
-e GITLAB_CI
121124
-e CI_PIPELINE_ID
122125
-e CI_PROJECT_NAME
@@ -127,6 +130,7 @@ tests_windows-x64:
127130
-e GOPROXY
128131
-e GONOSUMDB
129132
-e PIP_INDEX_URL
133+
-e CI_IDENTITIES_GITLAB_ID_TOKEN
130134
${WINBUILDIMAGE}
131135
c:\mnt\tasks\winbuildscripts\secagent.bat
132136
- If ($lastExitCode -ne "0") { throw "Previous command returned $lastExitCode" }

.gitlab/windows/deploy/choco_build/windows.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
-v "$(Get-Location):c:\mnt"
1919
-e CI
2020
-e GITLAB_CI
21+
-e CI_IDENTITIES_GITLAB_ID_TOKEN
2122
-e DDA_FEATURE_FLAGS_CI_SSM_KEY_WINDOWS="${DDA_FEATURE_FLAGS_CI_SSM_KEY_WINDOWS}"
2223
-e CI_PROJECT_NAME
2324
-e CI_PIPELINE_ID

.gitlab/windows/test/e2e_install_packages/windows.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,8 @@ new-e2e-installer-windows:
260260
- EXTRA_PARAMS: --run "TestExtensionPersistence$/TestExtensionPersistThroughMSIUpgrade$"
261261
- EXTRA_PARAMS: --run "TestExtensionPersistence$/TestExtensionRestoredOnMSIRollback$"
262262
- EXTRA_PARAMS: --run "TestExtensionPersistence$/TestExtensionRemovedOnUninstall$"
263+
- EXTRA_PARAMS: --run "TestAgentKeepRightsFleetUpgrade$/TestKeepRightsSurvivesFleetUpgrade$"
264+
- EXTRA_PARAMS: --run "TestAgentKeepRightsFleetUpgrade$/TestKeepRightsExplicitArgWinsOnFleetUpgrade$"
263265
# agent config experiment
264266
- EXTRA_PARAMS: --run "TestAgentConfig$/TestConfigUpgradeSuccessful$"
265267
- EXTRA_PARAMS: --run "TestAgentConfig$/TestConfigUpgradeFailure$"

CHANGELOG-DCA.rst

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,20 @@
22
Release Notes
33
=============
44

5+
.. _Release Notes_7.82.1:
6+
7+
7.82.1
8+
======
9+
10+
.. _Release Notes_7.82.1_Prelude:
11+
12+
Prelude
13+
-------
14+
15+
Released on: 2026-08-11
16+
Pinned to datadog-agent v7.82.1: `CHANGELOG <https://github.com/DataDog/datadog-agent/blob/main/CHANGELOG.rst#7821>`_.
17+
18+
519
.. _Release Notes_7.82.0:
620

721
7.82.0

CHANGELOG.rst

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,36 @@
22
Release Notes
33
=============
44

5+
.. _Release Notes_7.82.1:
6+
7+
7.82.1
8+
======
9+
10+
.. _Release Notes_7.82.1_Prelude:
11+
12+
Prelude
13+
-------
14+
15+
Released on: 2026-08-11
16+
17+
- Please refer to the `7.82.1 tag on integrations-core <https://github.com/DataDog/integrations-core/blob/master/AGENT_CHANGELOG.md#datadog-agent-version-7821>`_ for the list of changes on the Core Checks
18+
19+
20+
.. _Release Notes_7.82.1_Bug Fixes:
21+
22+
Bug Fixes
23+
---------
24+
25+
- Windows: Fixed an issue where an explicit ``DDAGENTUSER_KEEP_RIGHTS`` or
26+
``DDAGENTUSER_NAME`` value passed as an install argument to a Fleet
27+
Automation-triggered Windows Agent install/upgrade could be silently
28+
overridden by a stale fallback value (respectively from the registry
29+
and from the running service account).
30+
31+
- Fix an issue where GPU monitoring could trigger a kernel panic on multi-GPU
32+
nodes with Hopper/Blackwell GPUs.
33+
34+
535
.. _Release Notes_7.82.0:
636

737
7.82.0

comp/anomalydetection/observer/def/go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ module github.com/DataDog/datadog-agent/comp/anomalydetection/observer/def
22

33
go 1.26.0
44

5-
require github.com/DataDog/datadog-agent/comp/anomalydetection/severityevents/def v0.82.0
5+
require github.com/DataDog/datadog-agent/comp/anomalydetection/severityevents/def v0.82.1
66

77
// This section was automatically added by 'dda inv modules.add-all-replace' command, do not edit manually
88

comp/anomalydetection/recorder/def/go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ module github.com/DataDog/datadog-agent/comp/anomalydetection/recorder/def
22

33
go 1.26.0
44

5-
require github.com/DataDog/datadog-agent/comp/anomalydetection/observer/def v0.82.0
5+
require github.com/DataDog/datadog-agent/comp/anomalydetection/observer/def v0.82.1
66

7-
require github.com/DataDog/datadog-agent/comp/anomalydetection/severityevents/def v0.82.0 // indirect
7+
require github.com/DataDog/datadog-agent/comp/anomalydetection/severityevents/def v0.82.1 // indirect
88

99
// This section was automatically added by 'dda inv modules.add-all-replace' command, do not edit manually
1010

comp/core/agenttelemetry/def/go.mod

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@ module github.com/DataDog/datadog-agent/comp/core/agenttelemetry/def
33
go 1.25.0
44

55
require (
6-
github.com/DataDog/datadog-agent/pkg/fleet/installer v0.82.0
7-
github.com/DataDog/datadog-agent/pkg/util/log v0.82.0
6+
github.com/DataDog/datadog-agent/pkg/fleet/installer v0.82.1
7+
github.com/DataDog/datadog-agent/pkg/util/log v0.82.1
88
)
99

1010
require (
11-
github.com/DataDog/datadog-agent/pkg/template v0.82.0 // indirect
12-
github.com/DataDog/datadog-agent/pkg/util/scrubber v0.82.0 // indirect
13-
github.com/DataDog/datadog-agent/pkg/version v0.82.0 // indirect
11+
github.com/DataDog/datadog-agent/pkg/template v0.82.1 // indirect
12+
github.com/DataDog/datadog-agent/pkg/util/scrubber v0.82.1 // indirect
13+
github.com/DataDog/datadog-agent/pkg/version v0.82.1 // indirect
1414
github.com/ebitengine/purego v0.10.0 // indirect
1515
github.com/go-ole/go-ole v1.3.0 // indirect
1616
github.com/lufia/plan9stats v0.0.0-20260330125221-c963978e514e // indirect

0 commit comments

Comments
 (0)