Skip to content

Commit 03d9c1c

Browse files
authored
Merge branch 'master' into joepeeples/10684-pr-gates
2 parents 085dca0 + 4d07fd3 commit 03d9c1c

File tree

577 files changed

+57798
-23361
lines changed

Some content is hidden

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

577 files changed

+57798
-23361
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-08 19:10:31.200709",
8-
"spec_repo_commit": "7b042e12"
7+
"regenerated": "2025-07-24 19:59:19.182981",
8+
"spec_repo_commit": "c09ac236"
99
},
1010
"v2": {
1111
"apigentools_version": "1.6.6",
12-
"regenerated": "2025-07-08 19:10:40.400486",
13-
"spec_repo_commit": "7b042e12"
12+
"regenerated": "2025-07-24 19:59:28.761694",
13+
"spec_repo_commit": "c09ac236"
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: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ translate.yaml @DataDog/WebOps-Platform
3737
yarn.lock @DataDog/WebOps-Platform
3838
.yarnrc.yml @DataDog/WebOps-Platform
3939
repository.datadog.yml @Datadog/WebOps-Platform
40+
service.datadog.yaml @DataDog/WebOps-Platform @DataDog/documentation
4041

4142
# Scoped Docs/WebOps
4243
.github/ @DataDog/WebOps-Platform

.gitignore

Lines changed: 9 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

.htmltest.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
DirectoryPath: "public"
22

33
# Speeds things up but may cause errors in some cases, the two other settings limit the amount of docs and links processed at one time
4-
TestFilesConcurrently: false
5-
DocumentConcurrencyLimit: 32 #defaults to 128
6-
HTTPConcurrencyLimit: 8 #defaults to 16
4+
TestFilesConcurrently: true
5+
DocumentConcurrencyLimit: 10 #defaults to 128
6+
HTTPConcurrencyLimit: 4 #defaults to 16
77

88
# General config
99
CheckDoctype: false
@@ -30,6 +30,9 @@ IgnoreDirs:
3030
- es
3131
- security/default_rules
3232
IgnoreURLs:
33+
- "/favicon.ico"
34+
- "/resources/*"
35+
- "/config/*"
3336
- "/?api/(v1|v2)/*"
3437
- play.google.com
3538
- "[linkedin|twitter|instagram].com"

.husky/pre-commit

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
branch=$(git branch --show-current)
2+
3+
YELLOW="\033[1;33m"
4+
ENDCOLOR="\033[0m"
5+
WHITE="\033[1m"
6+
7+
# If the current branch is master, abort the commit
8+
if [ "$branch" = "master" ]; then
9+
echo "${YELLOW}You're trying to commit to master. Use a feature branch instead.${ENDCOLOR}"
10+
exit 1
11+
fi

.husky/pre-push

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
branch=$(git branch --show-current)
2+
3+
YELLOW="\033[1;33m"
4+
ENDCOLOR="\033[0m"
5+
WHITE="\033[1m"
6+
7+
# If the current branch is master, abort the push
8+
if [ "$branch" = "master" ]; then
9+
echo "${YELLOW}You're trying to push to master. Use a feature branch instead.${ENDCOLOR}"
10+
exit 1
11+
fi

.vale.ini

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,5 @@ Datadog.sentencelength = NO
3030
Datadog.spaces = NO
3131
Datadog.tense = NO
3232
Datadog.words = YES
33-
Datadog.quotes = NO
33+
Datadog.quotes = NO
34+
Datadog.aws = YES

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: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ node_modules: package.json yarn.lock
116116

117117
# All the requirements for a full build
118118
dependencies: clean
119-
make hugpython all-examples update_pre_build node_modules build-cdocs placeholders
119+
make hugpython all-examples update_pre_build node_modules build-cdocs
120120

121121
integrations_data/extracted/vector:
122122
$(call source_repo,vector,https://github.com/vectordotdev/vector.git,master,true,website/)
@@ -134,7 +134,7 @@ placeholders: hugpython update_pre_build
134134
hugpython: local/etc/requirements3.txt
135135
@${PY3} -m venv --clear $@ && . $@/bin/activate && $@/bin/pip install --upgrade pip wheel && $@/bin/pip install -r $<;\
136136
if [[ "$(CI_COMMIT_REF_NAME)" != "" ]]; then \
137-
$@/bin/pip install https://binaries.ddbuild.io/dd-source/python/assetlib-0.0.59352473-py3-none-any.whl; \
137+
$@/bin/pip install https://binaries.ddbuild.io/dd-source/python/assetlib-0.0.70443877-py3-none-any.whl; \
138138
fi
139139

140140
update_pre_build: hugpython
@@ -153,6 +153,13 @@ update_websites_sources_module:
153153
node_modules/hugo-bin/vendor/hugo mod clean
154154
node_modules/hugo-bin/vendor/hugo mod tidy
155155
cat go.mod
156+
@if [ -n "$(CI_COMMIT_REF_NAME)" ]; then \
157+
echo "In ci, vendoring integrations pages for placeholder generation"; \
158+
node_modules/hugo-bin/vendor/hugo mod vendor; \
159+
cp -rpv _vendor/github.com/DataDog/websites-sources/content/en/integrations/. content/en/integrations/; \
160+
rm -rf _vendor; \
161+
fi
162+
156163
#######################################################################################################################
157164
# API Code Examples
158165
#######################################################################################################################

0 commit comments

Comments
 (0)