Skip to content

ddev

Usage:

ddev [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--core, -c boolean Work on integrations-core. False
--extras, -e boolean Work on integrations-extras. False
--agent, -a boolean Work on datadog-agent. False
--marketplace, -m boolean Work on marketplace. False
--here, -x boolean Work on the current location. False
--color / --no-color boolean Whether or not to display colored output (default true). required
--quiet, -q boolean Silence output False
--debug, -d boolean Include debug output False
--version boolean Show the version and exit. False
--help boolean Show this message and exit. False

ddev agent

A collection of tasks related to the Datadog Agent

Usage:

ddev agent [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev agent changelog

Generates a markdown file containing the list of checks that changed for a given Agent release. Agent version numbers are derived inspecting tags on integrations-core so running this tool might provide unexpected results if the repo is not up to date with the Agent release process.

If neither --since or --to are passed (the most common use case), the tool will generate the whole changelog since Agent version 6.3.0 (before that point we don't have enough information to build the log).

Usage:

ddev agent changelog [OPTIONS]

Options:

Name Type Description Default
--since text Initial Agent version 6.3.0
--to text Final Agent version required
--write, -w boolean Write to the changelog file, if omitted contents will be printed to stdout False
--force, -f boolean Replace an existing file False
--help boolean Show this message and exit. False

ddev agent integrations

Generates a markdown file containing the list of integrations shipped in a given Agent release. Agent version numbers are derived inspecting tags on integrations-core so running this tool might provide unexpected results if the repo is not up to date with the Agent release process.

If neither --since or --to are passed (the most common use case), the tool will generate the list for every Agent since version 6.3.0 (before that point we don't have enough information to build the log).

Usage:

ddev agent integrations [OPTIONS]

Options:

Name Type Description Default
--since text Initial Agent version 6.3.0
--to text Final Agent version required
--write, -w boolean Write to file, if omitted contents will be printed to stdout False
--force, -f boolean Replace an existing file False
--help boolean Show this message and exit. False

ddev agent integrations-changelog

Update integration CHANGELOG.md by adding the Agent version.

Agent version is only added to the integration versions released with a specific Agent release.

Usage:

ddev agent integrations-changelog [OPTIONS] [CHECKS]...

Options:

Name Type Description Default
--since text Initial Agent version 6.3.0
--to text Final Agent version required
--write, -w boolean Write to the changelog file, if omitted contents will be printed to stdout False
--help boolean Show this message and exit. False

ddev agent requirements

Write the requirements-agent-release.txt file at the root of the repo listing all the Agent-based integrations pinned at the version they currently have in HEAD.

Usage:

ddev agent requirements [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev ci

CI related utils. Anything here should be considered experimental.

Usage:

ddev ci [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev ci setup

Run CI setup scripts

Usage:

ddev ci setup [OPTIONS] [CHECKS]...

Options:

Name Type Description Default
--changed boolean Only target changed checks False
--help boolean Show this message and exit. False

ddev clean

Remove build and test artifacts for the given CHECK. If CHECK is not specified, the current working directory is used.

Usage:

ddev clean [OPTIONS] [CHECK]

Options:

Name Type Description Default
--compiled-only, -c boolean Remove compiled files only (*.pyc, *.pyd, *.pyo, *.whl, pycache). False
--all, -a boolean Disable the detection of a project's dedicated virtual env and/or editable installation. By default, these will not be considered. False
--force, -f boolean If set and the command is run from the root directory, allow removing build and test artifacts (*.egg-info, .benchmarks, .cache, .coverage, .eggs, .pytest_cache, .tox, build, dist). False
--verbose, -v boolean Shows removed paths. False
--help boolean Show this message and exit. False

ddev config

Manage the config file

Usage:

ddev config [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev config edit

Edit the config file with your default EDITOR.

Usage:

ddev config edit [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev config explore

Open the config location in your file manager.

Usage:

ddev config explore [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev config find

Show the location of the config file.

Usage:

ddev config find [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev config restore

Restore the config file to default settings.

Usage:

ddev config restore [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev config set

Assigns values to config file entries. If the value is omitted, you will be prompted, with the input hidden if it is sensitive.

$ ddev config set github.user foo

New setting:
[github]
user = "foo"

You can also assign values on a per-org basis.

$ ddev config set orgs.<ORG_NAME>.api_key

New setting:
[orgs.<ORG_NAME>]
api_key = "***********"

Usage:

ddev config set [OPTIONS] KEY [VALUE]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev config show

Show the contents of the config file.

Usage:

ddev config show [OPTIONS]

Options:

Name Type Description Default
--all, -a boolean No not scrub secret fields False
--help boolean Show this message and exit. False

ddev config update

Update the config file with any new fields.

Usage:

ddev config update [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev create

Create scaffolding for a new integration.

NAME: The display name of the integration that will appear in documentation.

Usage:

ddev create [OPTIONS] NAME

Options:

Name Type Description Default
--type, -t choice (check | jmx | logs | snmp_tile | tile) The type of integration to create check
--location, -l text The directory where files will be written required
--non-interactive, -ni boolean Disable prompting for fields False
--quiet, -q boolean Show less output False
--dry-run, -n boolean Only show what would be created False
--help boolean Show this message and exit. False

ddev dep

Manage dependencies

Usage:

ddev dep [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev dep freeze

Combine all dependencies for the Agent's static environment.

Usage:

ddev dep freeze [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev dep pin

Pin a dependency for all checks that require it. This can also resolve transient dependencies.

Setting the version to none will remove the package. You can specify an unlimited number of additional checks to apply the pin for via arguments.

Usage:

ddev dep pin [OPTIONS] PACKAGE VERSION

Options:

Name Type Description Default
--marker, -m text Environment marker to use required
--help boolean Show this message and exit. False

ddev dep sync

Update integrations' dependencies so that they match the Agent's static environment

Usage:

ddev dep sync [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev dep updates

Automatically check for dependency updates

Usage:

ddev dep updates [OPTIONS]

Options:

Name Type Description Default
--sync, -s boolean Update the agent_requirements.in file False
--check-python-classifiers, -s boolean Only flag a dependency as needing an update if the newest version has python classifiers matching the marker.
NOTE: Some packages may not have proper classifiers. False
--help boolean Show this message and exit. False

ddev docs

Manage documentation

Usage:

ddev docs [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev docs build

Build documentation.

Usage:

ddev docs build [OPTIONS]

Options:

Name Type Description Default
--verbose, -v integer range (0 and above) Increase verbosity (can be used additively) 0
--pdf boolean Also export the site as PDF False
--help boolean Show this message and exit. False

ddev docs deploy

Deploy built documentation.

Usage:

ddev docs deploy [OPTIONS] [BRANCH]

Options:

Name Type Description Default
--yes, -y boolean N/A False
--help boolean Show this message and exit. False

ddev docs serve

Serve and view documentation in a web browser.

Usage:

ddev docs serve [OPTIONS]

Options:

Name Type Description Default
--no-open, -n boolean Do not open the documentation in a web browser False
--verbose, -v integer range (0 and above) Increase verbosity (can be used additively) 0
--pdf boolean Also export the site as PDF False
--dirty boolean Speed up reload time by only rebuilding edited pages (based on modified time). For development only. False
--help boolean Show this message and exit. False

ddev env

Manage environments

Usage:

ddev env [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev env check

Run an Agent check.

Usage:

ddev env check [OPTIONS] CHECK [ENV]

Options:

Name Type Description Default
--rate, -r boolean Compute rates by running the check twice with a pause between each run False
--times, -t integer Number of times to run the check required
--pause integer Number of milliseconds to pause between multiple check runs required
--delay, -d integer Delay in milliseconds between running the check and grabbing what was collected required
--log-level, -l text Set the log level (default off) required
--json boolean Format the aggregator and check runner output as JSON False
--table boolean Format the aggregator and check runner output as tabular False
--breakpoint, -b integer Line number to start a PDB session (0: first line, -1: last line) required
--config text Path to a JSON check configuration to use required
--jmx-list text JMX metrics listing method required
--help boolean Show this message and exit. False

ddev env edit

Start an environment.

Usage:

ddev env edit [OPTIONS] CHECK ENV

Options:

Name Type Description Default
--editor, -e text Editor to use required
--help boolean Show this message and exit. False

ddev env ls

List active or available environments.

Usage:

ddev env ls [OPTIONS] [CHECKS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev env prune

Remove all configuration for environments.

Usage:

ddev env prune [OPTIONS]

Options:

Name Type Description Default
--force, -f boolean N/A False
--help boolean Show this message and exit. False

ddev env reload

Restart an Agent to detect environment changes.

Usage:

ddev env reload [OPTIONS] CHECK [ENV]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev env shell

Run a shell inside the Agent docker container.

Usage:

ddev env shell [OPTIONS] CHECK [ENV]

Options:

Name Type Description Default
-c, --exec-command text Optionally execute command inside container, executes after any installs required
-v, --install-vim boolean Optionally install editing/viewing tools vim and less False
-i, --install-tools text Optionally install custom tools required
--help boolean Show this message and exit. False

ddev env start

Start an environment.

Usage:

ddev env start [OPTIONS] CHECK ENV

Options:

Name Type Description Default
--agent, -a text The agent build to use e.g. a Docker image like datadog/agent:latest. You can also use the name of an agent defined in the agents configuration section. required
--python, -py integer The version of Python to use. Defaults to 3 if no tox Python is specified. required
--dev / --prod boolean Whether to use the latest version of a check or what is shipped False
--base boolean Whether to use the latest version of the base check or what is shipped False
--env-vars, -e text ENV Variable that should be passed to the Agent container. Ex: -e DD_URL=app.datadoghq.com -e DD_API_KEY=123456 required
--org-name, -o text The org to use for data submission. required
--profile-memory, -pm boolean Whether to collect metrics about memory usage False
--dogstatsd boolean Enable dogstatsd port on agent False
--help boolean Show this message and exit. False

ddev env stop

Stop environments, use "all" as check argument to stop everything.

Usage:

ddev env stop [OPTIONS] CHECK [ENV]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev env test

Test an environment.

Usage:

ddev env test [OPTIONS] [CHECKS]...

Options:

Name Type Description Default
--agent, -a text The agent build to use e.g. a Docker image like datadog/agent:latest. You can also use the name of an agent defined in the agents configuration section. required
--python, -py integer The version of Python to use. Defaults to 3 if no tox Python is specified. required
--dev / --prod boolean Whether to use the latest version of a check or what is shipped required
--base boolean Whether to use the latest version of the base check or what is shipped False
--env-vars, -e text ENV Variable that should be passed to the Agent container. Ex: -e DD_URL=app.datadoghq.com -e DD_API_KEY=123456 required
--new-env, -ne boolean Execute setup and tear down actions False
--profile-memory, -pm boolean Whether to collect metrics about memory usage False
--junit, -j boolean Generate junit reports False
--ddtrace boolean Run tests using dd-trace-py False
--filter, -k text Only run tests matching given substring expression required
--changed boolean Only test changed checks False
--help boolean Show this message and exit. False

ddev meta

Anything here should be considered experimental.

This meta namespace can be used for an arbitrary number of niche or beta features without bloating the root namespace.

Usage:

ddev meta [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta catalog

Create a catalog with information about integrations

Usage:

ddev meta catalog [OPTIONS] CHECKS...

Options:

Name Type Description Default
-f, --file text Output to file (it will be overwritten), you can pass "tmp" to generate a temporary file required
--markdown, -m boolean Output to markdown instead of CSV False
--help boolean Show this message and exit. False

ddev meta changes

Show changes since a specific date.

Usage:

ddev meta changes [OPTIONS] SINCE

Options:

Name Type Description Default
--out, -o boolean Output to file False
--eager boolean Skip validation of commit subjects False
--help boolean Show this message and exit. False

ddev meta create-example-commits

Create branch commits from example repo

Usage:

ddev meta create-example-commits [OPTIONS] SOURCE_DIR

Options:

Name Type Description Default
--prefix, -p text Optional text to prefix each commit ``
--help boolean Show this message and exit. False

ddev meta dash

Dashboard utilities

Usage:

ddev meta dash [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta dash export

Export a Dashboard as JSON

Usage:

ddev meta dash export [OPTIONS] URL INTEGRATION

Options:

Name Type Description Default
--author, -a text The owner of this integration's dashboard. Default is 'Datadog' Datadog
--help boolean Show this message and exit. False

ddev meta jmx

JMX utilities

Usage:

ddev meta jmx [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta jmx query-endpoint

Query endpoint for JMX info

Usage:

ddev meta jmx query-endpoint [OPTIONS] HOST PORT [DOMAIN]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta prom

Prometheus utilities

Usage:

ddev meta prom [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta prom info

Show metric info from a Prometheus endpoint.

Example: $ ddev meta prom info :8080/_status/vars

Usage:

ddev meta prom info [OPTIONS] ENDPOINT

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta prom parse

Interactively parse metric info from a Prometheus endpoint and write it to metadata.csv.

Usage:

ddev meta prom parse [OPTIONS] ENDPOINT CHECK

Options:

Name Type Description Default
--here, -x boolean Output to the current location False
--help boolean Show this message and exit. False

ddev meta scripts

Miscellaneous scripts that may be useful

Usage:

ddev meta scripts [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta scripts email2ghuser

Given an email, attempt to find a Github username associated with the email.

$ ddev meta scripts email2ghuser [email protected]

Usage:

ddev meta scripts email2ghuser [OPTIONS] EMAIL

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta scripts metrics2md

Convert a check's metadata.csv file to a Markdown table, which will be copied to your clipboard.

By default it will be compact and only contain the most useful fields. If you wish to use arbitrary metric data, you may set the check to cb to target the current contents of your clipboard.

Usage:

ddev meta scripts metrics2md [OPTIONS] CHECK [FIELDS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta scripts remove-labels

Remove all labels from an issue or pull request. This is useful when there are too many labels and its state cannot be modified (known GitHub issue).

$ ddev meta scripts remove-labels 5626

Usage:

ddev meta scripts remove-labels [OPTIONS] ISSUE_NUMBER

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta scripts upgrade-python

Upgrade the Python version of all test environments.

$ ddev meta scripts upgrade-python 3.8

Usage:

ddev meta scripts upgrade-python [OPTIONS] NEW_VERSION [OLD_VERSION]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta snmp

SNMP utilities

Usage:

ddev meta snmp [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev meta snmp generate-profile-from-mibs

Generate an SNMP profile from MIBs. Accepts a directory path containing mib files to be used as source to generate the profile, along with a filter if a device or family of devices support only a subset of oids from a mib.

filters is the path to a yaml file containing a collection of MIBs, with their list of MIB node names to be included. For example:

RFC1213-MIB:
- system
- interfaces
- ip
CISCO-SYSLOG-MIB: []
SNMP-FRAMEWORK-MIB:
- snmpEngine
Note that each MIB:node_name correspond to exactly one and only one OID. However, some MIBs report legacy nodes that are overwritten.

To resolve, edit the MIB by removing legacy values manually before loading them with this profile generator. If a MIB is fully supported, it can be omitted from the filter as MIBs not found in a filter will be fully loaded. If a MIB is not fully supported, it can be listed with an empty node list, as CISCO-SYSLOG-MIB in the example.

-a, --aliases is an option to provide the path to a YAML file containing a list of aliases to be used as metric tags for tables, in the following format:

aliases:
- from:
    MIB: ENTITY-MIB
    name: entPhysicalIndex
  to:
    MIB: ENTITY-MIB
    name: entPhysicalName
MIBs tables most of the time define a column OID within the table, or from a different table and even different MIB, which value can be used to index entries. This is the INDEX field in row nodes. As an example, entPhysicalContainsTable in ENTITY-MIB
entPhysicalContainsEntry OBJECT-TYPE
SYNTAX      EntPhysicalContainsEntry
MAX-ACCESS  not-accessible
STATUS      current
DESCRIPTION
        "A single container/'containee' relationship."
INDEX       { entPhysicalIndex, entPhysicalChildIndex }
::= { entPhysicalContainsTable 1 }
or its json dump, where INDEX is replaced by indices
"entPhysicalContainsEntry": {
    "name": "entPhysicalContainsEntry",
    "oid": "1.3.6.1.2.1.47.1.3.3.1",
    "nodetype": "row",
    "class": "objecttype",
    "maxaccess": "not-accessible",
    "indices": [
      {
        "module": "ENTITY-MIB",
        "object": "entPhysicalIndex",
        "implied": 0
      },
      {
        "module": "ENTITY-MIB",
        "object": "entPhysicalChildIndex",
        "implied": 0
      }
    ],
    "status": "current",
    "description": "A single container/'containee' relationship."
  },
Sometimes indexes are columns from another table, and we might want to use another column as it could have more human readable information - we might prefer to see the interface name vs its numerical table index. This can be achieved using metric_tag_aliases

Return a list of SNMP metrics and copy its yaml dump to the clipboard Metric tags need to be added manually

Usage:

ddev meta snmp generate-profile-from-mibs [OPTIONS] [MIB_FILES]...

Options:

Name Type Description Default
-f, --filters text Path to OIDs filter required
-a, --aliases text Path to metric tag aliases required
--debug, -d boolean Include debug output False
--interactive, -i boolean Prompt to confirm before saving to a file False
--source, -s text Source of the MIBs files. Can be a url or a path for a directory https://raw.githubusercontent.com:443/DataDog/mibs.snmplabs.com/master/asn1/@[email protected]
--compiled_mibs_path, -c text Source of compiled MIBs files. Can be a url or a path for a directory https://raw.githubusercontent.com/DataDog/mibs.snmplabs.com/master/json/@[email protected]
--help boolean Show this message and exit. False

ddev meta snmp translate-profile

Do OID translation in a SNMP profile. This isn't a plain replacement, as it doesn't preserve comments and indent, but it should automate most of the work.

You'll need to install pysnmp and pysnmp-mibs manually beforehand.

Usage:

ddev meta snmp translate-profile [OPTIONS] PROFILE_PATH

Options:

Name Type Description Default
--mib_source_url text Source url to fetch missing MIBS https://raw.githubusercontent.com:443/DataDog/mibs.snmplabs.com/master/asn1/@[email protected]
--help boolean Show this message and exit. False

ddev meta snmp validate-mib-filenames

Validate MIB file names. Frameworks used to load mib files expect MIB file names to match MIB name.

Usage:

ddev meta snmp validate-mib-filenames [OPTIONS] [MIB_FILES]...

Options:

Name Type Description Default
--interactive, -i boolean Prompt to confirm before renaming all invalid MIB files False
--help boolean Show this message and exit. False

ddev meta snmp validate-profile

Validate SNMP profiles

Usage:

ddev meta snmp validate-profile [OPTIONS]

Options:

Name Type Description Default
-f, --file text Path to a profile file to validate required
-d, --directory text Path to a directory of profiles to validate required
-v, --verbose boolean Increase verbosity of error messages False
--help boolean Show this message and exit. False

ddev release

Manage the release of checks

Usage:

ddev release [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev release build

Build a wheel for a check as it is on the repo HEAD

Usage:

ddev release build [OPTIONS] CHECK

Options:

Name Type Description Default
--sdist, -s boolean N/A False
--help boolean Show this message and exit. False

ddev release changelog

Perform the operations needed to update the changelog.

This method is supposed to be used by other tasks and not directly.

Usage:

ddev release changelog [OPTIONS] CHECK VERSION [OLD_VERSION]

Options:

Name Type Description Default
--initial boolean N/A False
--organization, -r text N/A DataDog
--quiet, -q boolean N/A False
--dry-run, -n boolean N/A False
--output-file, -o text N/A CHANGELOG.md
--tag-prefix, -tp text N/A v
--no-semver, -ns boolean N/A False
--exclude-branch text Exclude changes comming from a specific branch required
--help boolean Show this message and exit. False

ddev release make

Perform a set of operations needed to release checks:

  • update the version in __about__.py
  • update the changelog
  • update the requirements-agent-release.txt file
  • update in-toto metadata
  • commit the above changes

You can release everything at once by setting the check to all.

If you run into issues signing:

  • Ensure you did gpg --import <YOUR_KEY_ID>.gpg.pub

Usage:

ddev release make [OPTIONS] CHECKS...

Options:

Name Type Description Default
--version text N/A required
--new boolean Ensure versions are at 1.0.0 False
--skip-sign boolean Skip the signing of release metadata False
--sign-only boolean Only sign release metadata False
--exclude text Comma-separated list of checks to skip required
--allow-master boolean Allow ddev to commit directly to master. Forbidden for core. False
--help boolean Show this message and exit. False

ddev release show

To avoid GitHub's public API rate limits, you need to set github.user/github.token in your config file or use the DD_GITHUB_USER/DD_GITHUB_TOKEN environment variables.

Usage:

ddev release show [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev release show changes

Show all the pending PRs for a given check.

Usage:

ddev release show changes [OPTIONS] CHECK

Options:

Name Type Description Default
--organization, -r text The Github organization the repository belongs to DataDog
--tag-pattern text The regex pattern for the format of the tag. Required if the tag doesn't follow semver required
--tag-prefix text Specify the prefix of the tag to use if the tag doesn't follow semver required
--dry-run, -n boolean Run the command in dry-run mode False
--since text The git ref to use instead of auto-detecting the tag to view changes since required
--exclude-branch text Exclude changes comming from a specific branch required
--help boolean Show this message and exit. False

ddev release show ready

Show all the checks that can be released.

Usage:

ddev release show ready [OPTIONS]

Options:

Name Type Description Default
--quiet, -q boolean N/A False
--help boolean Show this message and exit. False

ddev release stats

A collection of tasks to generate reports about releases

Usage:

ddev release stats [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev release stats merged-prs

Prints the PRs merged between the first RC and the current RC/final build

Usage:

ddev release stats merged-prs [OPTIONS]

Options:

Name Type Description Default
--from-ref, -f text Reference to start stats on (first RC tagged) required
--to-ref, -t text Reference to end stats at (current RC/final tag) required
--release-milestone, -r text Github release milestone required
--exclude-releases, -e boolean Flag to exclude the release PRs from the list False
--export-csv text CSV file where the list will be exported required
--help boolean Show this message and exit. False

ddev release stats report

Prints some release stats we want to track

Usage:

ddev release stats report [OPTIONS]

Options:

Name Type Description Default
--from-ref, -f text Reference to start stats on (first RC tagged) required
--to-ref, -t text Reference to end stats at (current RC/final tag) required
--release-milestone, -r text Github release milestone required
--help boolean Show this message and exit. False

ddev release tag

Tag the HEAD of the git repo with the current release number for a specific check. The tag is pushed to origin by default.

You can tag everything at once by setting the check to all.

Notice: specifying a different version than the one in __about__.py is a maintenance task that should be run under very specific circumstances (e.g. re-align an old release performed on the wrong commit).

Usage:

ddev release tag [OPTIONS] CHECK [VERSION]

Options:

Name Type Description Default
--push / --no-push boolean N/A True
--dry-run, -n boolean N/A False
--help boolean Show this message and exit. False

ddev release trello

Subcommands for interacting with Trello Release boards.

To use Trello: 1. Go to https://trello.com/app-key and copy your API key. 2. Run ddev config set trello.key and paste your API key. 3. Go to https://trello.com/1/authorize?key=key&name=name&scope=read,write&expiration=never&response_type=token, where key is your API key and name is the name to give your token, e.g. ReleaseTestingYourName. Authorize access and copy your token. 4. Run ddev config set trello.token and paste your token.

Usage:

ddev release trello [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev release trello status

Print tabular status of Agent Release based on Trello columns.

See trello subcommand for details on how to setup access:

ddev release trello -h.

Usage:

ddev release trello status [OPTIONS]

Options:

Name Type Description Default
--verbose, -v boolean Return the detailed results instead of the aggregates False
--json, -j boolean Return as raw JSON instead False
--clipboard, -c boolean Copy output to clipboard False
--help boolean Show this message and exit. False

ddev release trello testable

Create a Trello card for changes since a previous release (referenced by BASE_REF) that need to be tested for the next release (referenced by TARGET_REF).

BASE_REF and TARGET_REF can be any valid git references. It practice, you should use either:

  • A tag: 7.16.1, 7.17.0-rc.4, ...

  • A release branch: 6.16.x, 7.17.x, ...

  • The master branch.

NOTE: using a minor version shorthand (e.g. 7.16) is not supported, as it is ambiguous.

Example: assuming we are working on the release of 7.17.0, we can...

  • Create cards for changes between a previous Agent release and master (useful when preparing an initial RC):

    $ ddev release trello testable 7.16.1 origin/master

  • Create cards for changes between a previous RC and master (useful when preparing a new RC, and a separate release branch was not created yet):

    $ ddev release trello testable 7.17.0-rc.2 origin/master

  • Create cards for changes between a previous RC and a release branch (useful to only review changes in a release branch that has diverged from master):

    $ ddev release trello testable 7.17.0-rc.4 7.17.x

  • Create cards for changes between two arbitrary tags, e.g. between RCs:

    $ ddev release trello testable 7.17.0-rc.4 7.17.0-rc.5

TIP: run with ddev -x release trello testable to force the use of the current directory. To avoid GitHub's public API rate limits, you need to set github.user/github.token in your config file or use the DD_GITHUB_USER/DD_GITHUB_TOKEN environment variables.

See trello subcommand for details on how to setup access:

ddev release trello -h.

Usage:

ddev release trello testable [OPTIONS] BASE_REF TARGET_REF

Options:

Name Type Description Default
--milestone text The PR milestone to filter by required
--dry-run, -n boolean Only show the changes False
--update-rc-builds-cards boolean Update cards in RC builds column with target_ref version False
--move-cards boolean Do not create a card for a change, but move the existing card from HAVE BUGS - FIXME or FIXED - Ready to Rebuild to INBOX team False
--help boolean Show this message and exit. False

Update links to RCs in the QA board Trello cards

Usage:

ddev release trello update-rc-links [OPTIONS] TARGET_REF

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev release upload

Release a specific check to PyPI as it is on the repo HEAD.

Usage:

ddev release upload [OPTIONS] CHECK

Options:

Name Type Description Default
--sdist, -s boolean N/A False
--dry-run, -n boolean N/A False
--help boolean Show this message and exit. False

ddev run

Run commands in the proper repo.

Usage:

ddev run [OPTIONS] [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev test

Run tests for Agent-based checks.

If no checks are specified, this will only test checks that were changed compared to the master branch.

You can also select specific comma-separated environments to test like so:

$ ddev test mysql:mysql57,maria10130

Usage:

ddev test [OPTIONS] [CHECKS]...

Options:

Name Type Description Default
--format-style, -fs boolean Run only the code style formatter False
--style, -s boolean Run only style checks False
--bench, -b boolean Run only benchmarks False
--latest boolean Only verify support of new product versions False
--e2e boolean Run only end-to-end tests False
--ddtrace boolean Run tests using dd-trace-py False
--cov, -c boolean Measure code coverage False
--cov-missing, -cm boolean Show line numbers of statements that were not executed False
--junit, -j boolean Generate junit reports False
--marker, -m text Only run tests matching given marker expression required
--filter, -k text Only run tests matching given substring expression required
--pdb boolean Drop to PDB on first failure, then end test session False
--debug, -d boolean Set the log level to debug False
--verbose, -v integer range (0 and above) Increase verbosity (can be used additively) 0
--list, -l boolean List available test environments False
--passenv text Additional environment variables to pass down required
--changed boolean Only test changed checks False
--cov-keep boolean Keep coverage reports False
--skip-env boolean Skip environment creation and assume it is already running False
--pytest-args, -pa text Additional arguments to pytest required
--force-base-unpinned boolean Force using datadog-checks-base as specified by check dep False
--force-base-min boolean Force using lowest viable release version of datadog-checks-base False
--force-env-rebuild boolean Force creating a new env False
--help boolean Show this message and exit. False

ddev validate

Verify certain aspects of the repo

Usage:

ddev validate [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate agent-reqs

Verify that the checks versions are in sync with the requirements-agent-release.txt file.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate agent-reqs [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate all

Run all CI validations for a repo.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate all [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate ci

Validate CI infrastructure configuration.

Usage:

ddev validate ci [OPTIONS]

Options:

Name Type Description Default
--fix boolean Attempt to fix errors False
--help boolean Show this message and exit. False

ddev validate codeowners

Validate that every integration has an entry in the CODEOWNERS file.

Usage:

ddev validate codeowners [OPTIONS]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate config

Validate default configuration files.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate config [OPTIONS] [CHECK]

Options:

Name Type Description Default
--sync, -s boolean Generate example configuration files based on specifications False
--verbose, -v boolean Verbose mode False
--help boolean Show this message and exit. False

ddev validate dashboards

Validate all Dashboard definition files.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate dashboards [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate dep

This command will:

  • Verify the uniqueness of dependency versions across all checks, or optionally a single check
  • Verify all the dependencies are pinned.
  • Verify the embedded Python environment defined in the base check and requirements listed in every integration are compatible.
  • Verify each check specifies a CHECKS_BASE_REQ variable for datadog-checks-base requirement
  • Optionally verify that the datadog-checks-base requirement is lower-bounded
  • Optionally verify that the datadog-checks-base requirement satisfies specific version

Usage:

ddev validate dep [OPTIONS] [CHECK]

Options:

Name Type Description Default
--require-base-check-version boolean Require specific version for datadog-checks-base requirement False
--min-base-check-version text Specify minimum version for datadog-checks-base requirement, e.g. 11.0.0 required
--help boolean Show this message and exit. False

ddev validate eula

Validate all EULA definition files.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate eula [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate http

Validate all integrations for usage of http wrapper.

Usage:

ddev validate http [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate imports

Validate proper imports in checks.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate imports [OPTIONS] [CHECK]

Options:

Name Type Description Default
--autofix boolean Apply suggested fix False
--help boolean Show this message and exit. False

ddev validate jmx-metrics

Validate all default JMX metrics definitions.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate jmx-metrics [OPTIONS] [CHECK]

Options:

Name Type Description Default
--verbose, -v boolean Verbose mode False
--help boolean Show this message and exit. False

ddev validate legacy-signature

Validate that no integration uses the legacy signature.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate legacy-signature [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate licenses

Validate third-party license list.

Usage:

ddev validate licenses [OPTIONS]

Options:

Name Type Description Default
--sync, -s boolean Generate the LICENSE-3rdparty.csv file False
--help boolean Show this message and exit. False

ddev validate manifest

Validate manifest.json files.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate manifest [OPTIONS] [CHECK]

Options:

Name Type Description Default
--fix boolean Attempt to fix errors False
--help boolean Show this message and exit. False

ddev validate metadata

Validates metadata.csv files

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate metadata [OPTIONS] [CHECK]

Options:

Name Type Description Default
--check-duplicates boolean Output warnings if there are duplicate short names and descriptions False
--show-warnings, -w boolean Show warnings in addition to failures False
--help boolean Show this message and exit. False

ddev validate models

Validate configuration data models.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate models [OPTIONS] [CHECK]

Options:

Name Type Description Default
--sync, -s boolean Generate data models based on specifications False
--verbose, -v boolean Verbose mode False
--help boolean Show this message and exit. False

ddev validate package

Validate all setup.py files.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate package [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate readmes

Validates README files.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate readmes [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

Validate all recommended monitors definition files.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate recommended-monitors [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate saved-views

Validates saved view files

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all saved view files.

Usage:

ddev validate saved-views [OPTIONS] [CHECK]

Options:

Name Type Description Default
--help boolean Show this message and exit. False

ddev validate service-checks

Validate all service_checks.json files.

If check is specified, only the check will be validated, if check value is 'changed' will only apply to changed checks, an 'all' or empty check value will validate all README files.

Usage:

ddev validate service-checks [OPTIONS] [CHECK]

Options:

Name Type Description Default
--sync boolean Generate example configuration files based on specifications False
--help boolean Show this message and exit. False

ddev validate typos

Validate spelling in the source code.

If check is specified, only the directory is validated. Use codespell command line tool to detect spelling errors.

Usage:

ddev validate typos [OPTIONS] [CHECK]

Options:

Name Type Description Default
--fix boolean Apply suggested fix False
--help boolean Show this message and exit. False

Last update: February 19, 2021