Skip to content

Commit 2ff0110

Browse files
authored
Merge branch 'master' into dhz/strip-finalizer
2 parents 6fc74fb + fc6a2b5 commit 2ff0110

475 files changed

Lines changed: 20418 additions & 8002 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.

.cargo/config.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ JEMALLOC_SYS_WITH_LG_PAGE = "16"
88

99
[target.'cfg(all())']
1010
rustflags = [
11+
"-D", "warnings",
1112
"-Dclippy::print_stdout",
1213
"-Dclippy::print_stderr",
1314
"-Dclippy::dbg_macro",
@@ -35,4 +36,4 @@ rustflags = ["-C", "link-args=-rdynamic"]
3536

3637
[target.x86_64-pc-windows-msvc]
3738
# https://github.com/dtolnay/inventory/issues/58
38-
rustflags = ["-C", "codegen-units=1"]
39+
rustflags = ["-C", "codegen-units=1", "-Ctarget-feature=+crt-static"]

.github/CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
.github/workflows/regression.yml @vectordotdev/vector @vectordotdev/single-machine-performance
44
regression/config.yaml @vectordotdev/vector @vectordotdev/single-machine-performance
55

6-
# Keep documentation team paths in sync with .github/workflows/add_wip_label.yml
6+
# Keep documentation team paths in sync with .github/workflows/add_docs_review_label.yml
77
docs/ @vectordotdev/vector @vectordotdev/documentation
88
website/ @vectordotdev/vector
99
website/content @vectordotdev/vector @vectordotdev/documentation

.github/ISSUE_TEMPLATE/minor-release.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ Automated steps include:
4545
- Pin VRL to latest released version rather than `main`
4646
- Check if there is a newer version of [Alpine](https://alpinelinux.org/releases/) or [Debian](https://www.debian.org/releases/) available to update the release images in
4747
`distribution/docker/`. Update if so.
48-
- Run `cargo vdev build release-cue` to generate a new cue file for the release
48+
- Generate a new cue file for the release in `website/cue/reference/releases/`
4949
- Copy VRL changelogs from the VRL version in the last Vector release as a new changelog entry
5050
([example](https://github.com/vectordotdev/vector/blob/9c67bba358195f5018febca2f228dfcb2be794b5/website/cue/reference/releases/0.41.0.cue#L33-L64))
5151
- Update version number in `website/cue/reference/administration/interfaces/kubectl.cue`
@@ -71,7 +71,8 @@ Automated steps include:
7171
# On the day of release
7272

7373
- [ ] Make sure the release branch is in sync with origin/master and has only one squashed commit with all commits from the prepare branch. If you made a PR from the prepare branch into the release branch this should already be the case.
74-
- [ ] `git checkout "${RELEASE_BRANCH}"`
74+
- [ ] `git fetch origin`
75+
- [ ] `git checkout "${RELEASE_BRANCH}" && git pull --ff-only origin "${RELEASE_BRANCH}"`
7576
- [ ] `git show --stat HEAD` - This should show the squashed prepare commit.
7677
- [ ] Ensure release date in `website/cue/reference/releases/0.XX.Y.cue` matches current date.
7778
- If this needs to be updated commit and squash it in the release branch.
@@ -88,7 +89,7 @@ Automated steps include:
8889
- [ ] Wait for release workflow to complete.
8990
- Discoverable via [release.yml](https://github.com/vectordotdev/vector/actions/workflows/release.yml)
9091
- [ ] Reset the `website` branch to the `HEAD` of the release branch to update https://vector.dev
91-
- [ ] `git switch website && git reset --hard origin/"${RELEASE_BRANCH}" && git push`
92+
- [ ] `git fetch origin && git switch website && git reset --hard origin/"${RELEASE_BRANCH}" && git push --force-with-lease`
9293
- [ ] Confirm that the release changelog was published to https://vector.dev/releases/
9394
- Refer to the internal releasing doc to monitor the deployment.
9495
- [ ] Release Linux packages. Refer to the internal releasing doc.

.github/ISSUE_TEMPLATE/patch-release.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,10 @@ export PREP_BRANCH=prepare-v-0-"${CURRENT_MINOR_VERSION}"-"${NEW_PATCH_VERSION}"
2424
- [ ] Cherry-pick in all commits to be released from the associated release milestone
2525
- If any merge conflicts occur, attempt to solve them and if needed enlist the aid of those familiar with the conflicting commits.
2626
- [ ] Bump the release number in the `Cargo.toml` to the current version number
27-
- [ ] Run `cargo vdev build release-cue` to generate a new cue file for the release
28-
- [ ] Add description key to the generated cue file with a description of the release (see
27+
- [ ] Add a new cue file for the release at `website/cue/reference/releases/${NEW_VERSION}.cue`
28+
by copying the previous patch release file and editing the version, date, commits, and
29+
changelog entries to match this release.
30+
- [ ] Add a description key to the cue file with a description of the release (see
2931
previous releases for examples).
3032
- [ ] Update version number in `distribution/install.sh`
3133
- [ ] Add new version to `website/cue/reference/versions.cue`
@@ -62,5 +64,5 @@ export PREP_BRANCH=prepare-v-0-"${CURRENT_MINOR_VERSION}"-"${NEW_PATCH_VERSION}"
6264
- Follow the [instructions at the top of the mirror.yaml file](https://github.com/DataDog/images/blob/fbf12868e90d52e513ebca0389610dea8a3c7e1a/mirror.yaml#L33-L49).
6365
- [ ] Cherry-pick any release commits from the release branch that are not on `master`, to `master`
6466
- [ ] Reset the `website` branch to the `HEAD` of the release branch to update https://vector.dev
65-
- [ ] `git checkout website && git reset --hard origin/"${RELEASE_BRANCH}" && git push`
67+
- [ ] `git fetch origin && git checkout website && git reset --hard origin/"${RELEASE_BRANCH}" && git push --force-with-lease`
6668
- [ ] Kick-off post-mortems for any regressions resolved by the release
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: "Datadog Short-Lived Token"
2+
description: "Federate a short-lived Datadog token via dd-sts-action and export DD_API_KEY (and DD_APP_KEY when available) to the job environment."
3+
4+
inputs:
5+
policy:
6+
required: false
7+
default: public-vectordotdev-vector
8+
description: "dd-sts policy to federate against."
9+
10+
runs:
11+
using: "composite"
12+
steps:
13+
# Fork PRs don't get `id-token: write`, so ACTIONS_ID_TOKEN_REQUEST_URL is
14+
# unset. Read it via shell (env context only covers YAML-declared vars) and
15+
# skip federation when absent to avoid a hard failure.
16+
- name: Check OIDC token availability
17+
id: oidc
18+
shell: bash
19+
run: |
20+
if [ -n "${ACTIONS_ID_TOKEN_REQUEST_URL}" ]; then
21+
echo "available=true" >> "$GITHUB_OUTPUT"
22+
else
23+
echo "available=false" >> "$GITHUB_OUTPUT"
24+
fi
25+
26+
- name: Federate Datadog token
27+
id: dd-sts
28+
if: ${{ steps.oidc.outputs.available == 'true' }}
29+
continue-on-error: true
30+
uses: DataDog/dd-sts-action@2e8187910199bd93129520183c093e19aa585c75
31+
with:
32+
policy: ${{ inputs.policy }}
33+
34+
- name: Export Datadog credentials to environment
35+
shell: bash
36+
env:
37+
DD_STS_API_KEY: ${{ steps.dd-sts.outputs.api_key }}
38+
DD_STS_APP_KEY: ${{ steps.dd-sts.outputs.app_key }}
39+
run: |
40+
if [ -n "${DD_STS_API_KEY}" ]; then
41+
echo "DD_API_KEY=${DD_STS_API_KEY}" >> "$GITHUB_ENV"
42+
fi
43+
if [ -n "${DD_STS_APP_KEY}" ]; then
44+
echo "DD_APP_KEY=${DD_STS_APP_KEY}" >> "$GITHUB_ENV"
45+
fi

.github/actions/setup/action.yml

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -142,24 +142,15 @@ runs:
142142
echo "RUST_BACKTRACE=full" >> "$GITHUB_ENV"
143143
# Set nice CI colors
144144
echo "CARGO_TERM_COLOR=always" >> "$GITHUB_ENV"
145+
# Incremental compilation has no benefit because in our CI we always start from a clean state.
146+
echo "CARGO_INCREMENTAL=0" >> "$GITHUB_ENV"
145147
fi
146148
147149
- name: Enable rust matcher
148150
if: ${{ env.NEEDS_RUST == 'true' }}
149151
run: echo "::add-matcher::.github/matchers/rust.json"
150152
shell: bash
151153

152-
- name: Override warnings
153-
if: ${{ env.NEEDS_RUST == 'true' }}
154-
run: |
155-
CARGO_OVERRIDE_DIR="${HOME}/.cargo"
156-
CARGO_OVERRIDE_CONF="${CARGO_OVERRIDE_DIR}/config.toml"
157-
cat <<EOF >>"$CARGO_OVERRIDE_CONF"
158-
[target.'cfg(linux)']
159-
rustflags = [ "-D", "warnings" ]
160-
EOF
161-
shell: bash
162-
163154
- name: Cache Cargo registry, index, and git DB
164155
if: ${{ inputs.cargo-cache == 'true' || env.NEEDS_RUST == 'true' || env.VDEV_NEEDS_COMPILE == 'true' }}
165156
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
@@ -237,10 +228,10 @@ runs:
237228
echo "Installing cue"
238229
TEMP=$(mktemp -d)
239230
curl \
240-
-L https://github.com/cue-lang/cue/releases/download/v0.10.0/cue_v0.10.0_linux_amd64.tar.gz \
241-
-o "${TEMP}/cue_v0.10.0_linux_amd64.tar.gz"
231+
-L https://github.com/cue-lang/cue/releases/download/v0.16.1/cue_v0.16.1_linux_amd64.tar.gz \
232+
-o "${TEMP}/cue_v0.16.1_linux_amd64.tar.gz"
242233
tar \
243-
-xvf "${TEMP}/cue_v0.10.0_linux_amd64.tar.gz" \
234+
-xvf "${TEMP}/cue_v0.16.1_linux_amd64.tar.gz" \
244235
-C "${TEMP}"
245236
sudo cp "${TEMP}/cue" /usr/bin/cue
246237
rm -rf "$TEMP"

.github/actions/spelling/allow.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ Evercoss
154154
exactlyonce
155155
Explay
156156
Fabro
157+
fakedata
157158
fakeintake
158159
FAQs
159160
fargate
@@ -509,6 +510,7 @@ timeseries
509510
timespan
510511
timestamped
511512
Tizen
513+
TLDs
512514
Tmobile
513515
tobz
514516
Tomtec

.github/actions/spelling/expect.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,7 @@ customizability
124124
CVS
125125
cwl
126126
daschl
127+
databricks
127128
dataflows
128129
datafuselabs
129130
datasources
@@ -350,6 +351,7 @@ mezmo
350351
mfoo
351352
mgmt
352353
MIDP
354+
mij
353355
mingrammer
354356
mkto
355357
mlua
@@ -677,6 +679,7 @@ ytt
677679
YXRR
678680
yyy
679681
zieme
682+
zerobus
680683
zoog
681684
zork
682685
zorp

.github/dependabot.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,3 +176,19 @@ updates:
176176
npm_and_yarn:
177177
patterns:
178178
- "*"
179+
- package-ecosystem: "npm"
180+
directory: "/scripts/environment/npm-tools"
181+
schedule:
182+
interval: "monthly"
183+
time: "05:00" # UTC
184+
labels:
185+
- "domain: deps"
186+
- "no-changelog"
187+
commit-message:
188+
prefix: "chore(deps)"
189+
# Disable version updates; security updates bypass this limit
190+
open-pull-requests-limit: 0
191+
groups:
192+
npm_and_yarn:
193+
patterns:
194+
- "*"
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Adds a label to PRs that touch documentation paths until a maintainer approves.
2+
# Currently dedicated to the docs review flow. If a second use case appears, promote
3+
# this into a reusable workflow (`workflow_call`) with the label as an input.
4+
name: Add Docs Review Label
5+
6+
permissions:
7+
pull-requests: write
8+
9+
on:
10+
pull_request_target:
11+
types: [opened, reopened, synchronize]
12+
# Keep these paths in sync with the documentation team entries in .github/CODEOWNERS
13+
paths:
14+
- "docs/**"
15+
- "website/content/**"
16+
- "website/cue/reference/**"
17+
18+
env:
19+
LABEL_NAME: "docs review on hold"
20+
21+
jobs:
22+
add_label:
23+
runs-on: ubuntu-24.04
24+
timeout-minutes: 5
25+
steps:
26+
- name: Check member review state
27+
id: check
28+
uses: actions/github-script@v9
29+
with:
30+
script: |
31+
const { data: reviews } = await github.rest.pulls.listReviews({
32+
owner: context.repo.owner,
33+
repo: context.repo.repo,
34+
pull_number: context.payload.pull_request.number,
35+
});
36+
37+
const allowed = ['MEMBER', 'OWNER'];
38+
const latestByUser = new Map();
39+
for (const r of reviews) {
40+
if (!allowed.includes(r.author_association)) continue;
41+
if (r.state === 'COMMENTED') continue;
42+
latestByUser.set(r.user.id, r.state);
43+
}
44+
45+
const states = [...latestByUser.values()];
46+
const hasApproved = states.includes('APPROVED');
47+
const hasChangesRequested = states.includes('CHANGES_REQUESTED');
48+
const skip = hasApproved && !hasChangesRequested;
49+
50+
core.info(`Latest member review states: ${states.join(', ') || '(none)'}`);
51+
core.info(`skip=${skip}`);
52+
core.setOutput('skip', skip);
53+
- if: steps.check.outputs.skip != 'true'
54+
uses: actions-ecosystem/action-add-labels@18f1af5e3544586314bbe15c0273249c770b2daf # v1.1.3
55+
with:
56+
labels: ${{ env.LABEL_NAME }}

0 commit comments

Comments
 (0)