Skip to content

luong-komorebi/documentation

 
 

Repository files navigation

Documentation site for Datadog

Built with hugo, a static website generation tool.

Setup

Installation

  1. Install Node / npm (node >=14.16.0)

  2. Install Python3 (you can also use pyenv)

  3. Install hugo

  4. Install Go (at minimum, go version 1.12)

  5. Install yarn: npm install -g yarn

  6. Download the documentation repo git clone https://github.com/DataDog/documentation.git

Run the server

Inside documentation/ folder, create a Makefile.config file from the Makefile.config.example

If you are a Datadog employee, add your GitHub personal token

To run the documentation site locally, execute:

Command Description
make start-no-pre-build Build the lightweight version of the documentation with no extra content
make start Build the full documentation with all extra content (integrations, extra pulled files, localized content, etc). Only useful if you have a GitHub personal token setup in your Makefile.config or the extra content is available locally. If you are working with local content, the repo must be downloaded to the same folder as the documentation repo.

Documentation is then available at http://localhost:1313

To learn more about how the documentation is built, refer to the Documentation Build Wiki.

Makefile

To use the Makefile, create a Makefile.config. See the instructions at the top of the Makefile.config.example.

After you have a config file, run make help to see options:

clean-all                 Clean everything.
clean-build               Remove build artifacts.
clean-exe                 Remove execs.
clean-integrations        Remove built integrations files.
clean-node                Remove node_modules.
clean-virt                Remove python virtual env.
clean                     Clean all make installs.
hugpython                 Build virtualenv used for tests.
source-helpers            Source the helper functions used to build, test, deploy.
start-no-pre-build        Build the documentation without automatically pulled content.
start                     Build the documentation with all external content.
stop                      Stop wepack watch/hugo server.

Working on Docs

Datadog Staff

  • Always branch off of master; never commit directly to master.
  • Name your branch <SLACK_HANDLE>/<FEATURE_NAME> if you would like to create a preview site and run tests.
  • When you are ready to commit, create a new pull request to master from your branch.
  • Consult our contributing guidelines, and the Documentation Build Wiki.
  • Use GitHub's draft pull request feature and appropriate labels such as "Do Not Merge" or "Work in Progress" until your PR is ready to be merged and live on production.

Outside Contributors

  • Fork the master branch.
  • Consult our contributing guidelines.
  • When you are ready to finalize your changes, commit them, and then make a pull request back to DataDog/master.
  • A DataDog technical writer might change your PR title with a DOCS ticket number, such as "[DOCS-9000]" which just means it has been added to the team's internal Jira queue to triage and review. No action is necessary from you if we change the title of your PR.

A note about markdown

This site uses Goldmark for markdown, which is compliant with CommonMark 0.29.

If you include ANY Markdown in a file, give it an .md extension.

Make sure all files are lowercase. Macs are case insensitive when creating links to images and pages, but our build server is not, so tests may work locally, but the site will fail in production.

Releasing

Within 10 minutes of merging to master, it deploys automatically.

How to add a new integration

See the dedicated doc page.

Docker development

Prerequsites:

  • Running Monterey OSX
  • Docker Desktop >= 4.7.1 is installed
  • At least 6GB of RAM is dedicated towards Docker for Mac
    1. Open the Docker for Mac app dashboard
    2. Click the gear icon
    3. Click Resources
    4. The memory slider should be set to 6GB
  • VirtioFS is enabled
    1. Open the Docker for Mac app dashboard
    2. Click the gear icon
    3. Click Experimental Features
    4. Click Enable VirtioFS accelerated directory sharing
    5. Click Apply & Restart

How to run documentation inside a Docker container

  1. Go to project root
  2. Make a copy of Makefile.config.example called Makefile.config
  3. Enter value for GITHUB_TOKEN
  4. Set DOCKER to true
  5. Run make start-docker

To stop the app, hit Ctrl-C or run make stop-docker

About

The source for Datadog's documentation site.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 39.3%
  • HTML 27.3%
  • SCSS 14.2%
  • Python 13.7%
  • Ruby 2.4%
  • Makefile 1.5%
  • Other 1.6%