Skip to content

Commit 666280b

Browse files
committed
merge master
2 parents 37efa25 + 461addd commit 666280b

File tree

1,093 files changed

+126867
-34735
lines changed

Some content is hidden

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

1,093 files changed

+126867
-34735
lines changed

.apigentools-info

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44
"spec_versions": {
55
"v1": {
66
"apigentools_version": "1.6.6",
7-
"regenerated": "2025-07-17 17:28:27.829366",
8-
"spec_repo_commit": "ef70ddf2"
7+
"regenerated": "2025-08-06 19:12:45.481084",
8+
"spec_repo_commit": "befda922"
99
},
1010
"v2": {
1111
"apigentools_version": "1.6.6",
12-
"regenerated": "2025-07-17 17:28:37.418384",
13-
"spec_repo_commit": "ef70ddf2"
12+
"regenerated": "2025-08-06 19:12:55.524088",
13+
"spec_repo_commit": "befda922"
1414
}
1515
}
1616
}

.claude/settings.local.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"permissions": {}
3+
}

.github/CODEOWNERS

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ static/resources/yaml/observability_pipelines/ @DataDog/observa
152152

153153
content/en/synthetics/*.md @Datadog/synthetics-app @Datadog/documentation
154154
content/en/continuous_testing/*.md @Datadog/synthetics-ct @Datadog/documentation
155-
content/en/mobile_app_testing/*.md @Datadog/synthetics-mobile @Datadog/documentation
155+
content/en/mobile_app_testing/*.md @Datadog/synthetics-executing-mobile @Datadog/documentation
156156

157157
# Software Delivery
158158

@@ -165,7 +165,7 @@ content/en/code_analysis/ @Datadog/static-analysis @Data
165165
content/en/quality_gates/ @Datadog/ci-app-backend @Datadog/documentation
166166

167167
# DDSQL Editor References
168-
content/en/ddsql_reference/*.md @Datadog/xpq @Datadog/documentation
168+
content/en/ddsql_reference/*.md @Datadog/xpq @Datadog/documentation @Datadog/advanced-query-guild
169169

170170
# Data Streams Monitoring
171171
content/en/data_streams/*.md @Datadog/data-streams-monitoring @Datadog/documentation
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
issuer: https://token.actions.githubusercontent.com
2+
3+
subject: repo:DataDog/documentation:ref:refs/heads/master
4+
5+
claim_pattern:
6+
event_name: (schedule|workflow_dispatch)
7+
ref: refs/heads/master
8+
ref_protected: "true"
9+
job_workflow_ref: DataDog/documentation/\.github/workflows/bump_synthetics_worker_version\.yml@refs/heads/master
10+
11+
permissions:
12+
contents: write
13+
pull_requests: write
14+
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
issuer: https://token.actions.githubusercontent.com
2+
3+
subject: repo:DataDog/documentation:ref:refs/heads/master
4+
5+
claim_pattern:
6+
event_name: schedule
7+
ref: refs/heads/master
8+
ref_protected: "true"
9+
job_workflow_ref: DataDog/documentation/\.github/workflows/bump_versions\.yml@refs/heads/master
10+
11+
permissions:
12+
contents: write
13+
pull_requests: write

.github/workflows/bump_synthetics_worker_version.yml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,30 @@
11
on:
22
schedule:
33
# At 08:00 on every day-of-week from Monday through Friday.
4-
- cron: '0 8 * * 1-5'
4+
- cron: "0 8 * * 1-5"
55
workflow_dispatch: # allows manual trigger
66

77
jobs:
88
synthetics-worker-version:
99
permissions:
1010
contents: write # for git push
11-
pull-requests: write # to create pull request
11+
id-token: write # Needed to federate tokens.
1212
runs-on: ubuntu-latest
1313
name: Find latest synthetics-worker version
1414
steps:
15+
- uses: DataDog/dd-octo-sts-action@acaa02eee7e3bb0839e4272dacb37b8f3b58ba80 # v1.0.3
16+
id: octo-sts
17+
with:
18+
scope: DataDog/documentation
19+
policy: self.bump-synthetics-worker-version.create-pr
20+
1521
- uses: actions/checkout@v4
1622
with:
1723
persist-credentials: false
1824

1925
- uses: actions/[email protected]
2026
with:
21-
python-version: '3.11'
27+
python-version: "3.11"
2228
- run: pip install requests semver defusedxml
2329

2430
- name: Find latest synthetic-worker version
@@ -45,7 +51,7 @@ jobs:
4551
name: Propose change with latest versions
4652
if: steps.write-synthetics-worker-version.outputs.new_version == 'true'
4753
with:
48-
github-token: ${{secrets.GITHUB_TOKEN}}
54+
github-token: ${{ steps.octo-sts.outputs.token }}
4955
result-encoding: string
5056
script: |
5157
await github.rest.pulls.create({
@@ -57,4 +63,3 @@ jobs:
5763
base: "master",
5864
maintainer_can_modify: true
5965
})
60-

.github/workflows/bump_versions.yml

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,28 @@
11
on:
22
schedule:
33
# At 08:00 on every day-of-week from Monday through Friday.
4-
- cron: '0 8 * * 1-5'
4+
- cron: "0 8 * * 1-5"
55

66
permissions: {}
77
jobs:
88
sdk-versions:
99
permissions:
1010
contents: write # for git push
11-
pull-requests: write # to create pull request
11+
id-token: write # Needed to federate tokens.
1212

1313
runs-on: ubuntu-latest
1414
steps:
15+
- uses: DataDog/dd-octo-sts-action@acaa02eee7e3bb0839e4272dacb37b8f3b58ba80 # v1.0.3
16+
id: octo-sts
17+
with:
18+
scope: DataDog/documentation
19+
policy: self.bump-versions.create-pr
20+
1521
- id: set-versions
1622
name: Load latest SDK versions
1723
uses: actions/github-script@v7
1824
with:
19-
github-token: ${{secrets.GITHUB_TOKEN}}
25+
github-token: ${{ steps.octo-sts.outputs.token }}
2026
result-encoding: string
2127
script: |
2228
const clients = [
@@ -53,7 +59,7 @@ jobs:
5359
- uses: actions/github-script@v7
5460
name: Propose change with latest versions
5561
with:
56-
github-token: ${{secrets.GITHUB_TOKEN}}
62+
github-token: ${{ steps.octo-sts.outputs.token }}
5763
result-encoding: string
5864
script: |
5965
await github.rest.pulls.create({

.gitignore

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,11 @@ content/en/security/cloud_workload_security/backend.md
8181
content/en/security/threats/agent_expressions.md
8282
content/en/security/threats/backend.md
8383
content/en/security_platform/
84+
content/en/security/workload_protection/agent_expressions.md
85+
content/en/security/workload_protection/backend_linux.md
86+
content/en/security/workload_protection/backend_windows.md
87+
content/en/security/workload_protection/linux_expressions.md
88+
content/en/security/workload_protection/windows_expressions.md
8489

8590
# security threat detection
8691
content/en/security/threats/backend_linux.md
@@ -128,6 +133,10 @@ content/en/code_analysis/static_analysis_rules/_index.md
128133
content/en/security/code_security/static_analysis/static_analysis_rules/*
129134
!content/en/security/code_security/static_analysis/static_analysis_rules/_index.md
130135

136+
# IaC Kics Rules
137+
content/en/security/code_security/iac_security/iac_rules/*
138+
!content/en/security/code_security/iac_security/iac_rules/_index.md
139+
131140
# Let's keep these so we don't accidentally re-add them to repo
132141
content/en/continuous_integration/static_analysis/github_actions.md
133142
content/en/continuous_integration/static_analysis/circleci_orbs.md
@@ -290,3 +299,6 @@ content/en/**/*.ast.json
290299

291300
# Cursor editor configuration
292301
.cursor/
302+
303+
# Generated file for LLMs
304+
static/llms.txt

CLAUDE.md

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
# CLAUDE.md
2+
3+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4+
5+
## Repository Overview
6+
7+
This is the Datadog Documentation repository, built using Hugo (static site generator) and published to docs.datadoghq.com. The codebase consists of markdown content, Hugo themes, Node.js build scripts, and Python automation tools.
8+
9+
## Development Commands
10+
11+
### Build and Development
12+
- `yarn start` or `make start` - Full build including external dependencies and run development server
13+
- `yarn run start` - Basic Hugo development server (port 1313)
14+
- `make start-no-pre-build` - Skip external dependencies, build and run
15+
- `make start-preserve-build` - Keep existing build scripts for local testing
16+
- `make start-docker` - Build and run via Docker container
17+
18+
### Build Commands
19+
- `yarn build` or `make build` - Production build
20+
- `yarn run build:hugo` - Run Hugo build only
21+
- `yarn run build:preview` - Build with preview environment
22+
- `make build-cdocs` - Compile .mdoc files to HTML
23+
24+
### Testing and Quality
25+
- `yarn run jest-test` - Run JavaScript tests
26+
- `make clean` - Clean generated files
27+
- `make clean-all` - Clean everything (environment, repos, generated files)
28+
29+
### Dependencies
30+
- `yarn install` - Install Node.js dependencies
31+
- `make dependencies` - Install all dependencies (Node + Python + external repos)
32+
- `make hugpython` - Set up Python virtual environment
33+
34+
## Architecture
35+
36+
### Content Structure
37+
- `content/en/` - English documentation (primary language)
38+
- `content/{fr,es,ja,ko}/` - Translated content (managed externally)
39+
- `layouts/` - Hugo templates and shortcodes
40+
- `static/` - Static assets, images, fonts
41+
- `assets/` - SCSS stylesheets and JavaScript
42+
43+
### Build System
44+
- **Hugo**: Static site generator with custom themes
45+
- **Node.js**: Package management, build automation, asset processing
46+
- **Python**: Content processing, integration data fetching, translations
47+
- **Makefile**: Orchestrates complex build processes and external dependencies
48+
49+
### External Dependencies
50+
The build system automatically fetches:
51+
- API client examples from multiple language repositories
52+
- Integration metadata and documentation
53+
- Vector integration data via CUE files
54+
- Some documentation is sourced from GitHub using the `pull_config.yaml` file at `local/bin/py/build/configurations/pull_config.yaml`.
55+
- Some documentation is sourced from a go module called `websites-sources`
56+
57+
### Configuration
58+
- `config/` - Hugo configuration for different environments (development, preview, live)
59+
- `package.json` - Node.js dependencies and scripts
60+
- `Makefile` + `Makefile.config` - Build orchestration
61+
- Environment-specific parameters in `config/{env}/params.yaml`
62+
63+
## Branch and PR Guidelines
64+
65+
### Branch Naming
66+
CRITICAL: Always use format `<name>/<description>` with forward slash. Without this:
67+
- GitLab pipeline won't run
68+
- No branch preview will be generated
69+
- CI will fail
70+
71+
### Content Guidelines
72+
Follow the CONTRIBUTING.md style guide:
73+
- Use American English (en_US)
74+
- Be plain, direct, and concise
75+
- Provide explicit instructions with examples
76+
- Use imperative voice for instructions
77+
- Don't edit translated content directly (managed externally)
78+
79+
## Hugo-Specific Details
80+
81+
### Shortcodes
82+
Extensive library in `layouts/shortcodes/` for:
83+
- Code examples across multiple languages
84+
- Integration-specific content
85+
- API documentation
86+
- Security and compliance sections
87+
88+
### Content Types
89+
- Regular markdown pages
90+
- API reference (auto-generated)
91+
- Integration pages (auto-populated from external repos)
92+
- Multi-language code examples
93+
94+
## Development Notes
95+
96+
### Local Development
97+
- Requires Node.js >= 20.11.0
98+
- Python 3 for build scripts
99+
- Uses Yarn package manager (v3.6.1)
100+
- Development server runs on port 1313
101+
102+
### External Content
103+
- API examples automatically sync from datadog-api-client-* repositories
104+
- Integration data pulled from the `websites-sources` go module.
105+
- The exception is Dogweb integrations, which are pulled from a GitHub repository.
106+
- Some documentation is sourced from GitHub using the `pull_config.yaml` file at `local/bin/py/build/configurations/pull_config.yaml`.
107+
- Build scripts fetched from external repository during setup
108+
109+
### Build Environments
110+
- **Development**: Local development with drafts
111+
- **Preview**: Branch previews for PRs
112+
- **Live**: Production deployment

Makefile

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,12 @@ watch-cdocs:
7272
@echo "Compiling .mdoc files to HTML";
7373
@node ./local/bin/js/cdocs-build.js --watch;
7474

75+
# compile .mdoc.md files to HTML
76+
# so Hugo can include them in the site
77+
build-llms-txt:
78+
@echo "Launching llms.txt build ...";
79+
@node ./local/bin/js/llms-txt-build.js;
80+
7581
start:
7682
@make setup-build-scripts ## Build and run docs including external content.
7783
@make dependencies
@@ -116,7 +122,7 @@ node_modules: package.json yarn.lock
116122

117123
# All the requirements for a full build
118124
dependencies: clean
119-
make hugpython all-examples update_pre_build node_modules build-cdocs
125+
make hugpython all-examples update_pre_build node_modules build-cdocs build-llms-txt
120126

121127
integrations_data/extracted/vector:
122128
$(call source_repo,vector,https://github.com/vectordotdev/vector.git,master,true,website/)
@@ -134,7 +140,7 @@ placeholders: hugpython update_pre_build
134140
hugpython: local/etc/requirements3.txt
135141
@${PY3} -m venv --clear $@ && . $@/bin/activate && $@/bin/pip install --upgrade pip wheel && $@/bin/pip install -r $<;\
136142
if [[ "$(CI_COMMIT_REF_NAME)" != "" ]]; then \
137-
$@/bin/pip install https://binaries.ddbuild.io/dd-source/python/assetlib-0.0.70443877-py3-none-any.whl; \
143+
$@/bin/pip install https://binaries.ddbuild.io/dd-source/python/assetlib-0.0.72592276-py3-none-any.whl; \
138144
fi
139145

140146
update_pre_build: hugpython

0 commit comments

Comments
 (0)