Skip to content

Latest commit

 

History

History
45 lines (32 loc) · 2.53 KB

README.adoc

File metadata and controls

45 lines (32 loc) · 2.53 KB

Jenkins Infra Datadog monitoring

Table of Contents

This repository is meant to hold configuration files of Jenkins infrastructure monitoring stuff.

This repository hosts the infrastructure-as-code definition for all the DataDog monitoring resources for the Jenkins Infrastructure Project.

Requirements

  • An access to the Jenkins Datadog account for the Jenkins Infrastructure at https://jenkins.datadoghq.com.

  • The requirements (of the shared tools) listed at shared-tools/terraform#requirements

  • The Terraform AzureRM Backend Configuration on a local file named backend-config:

    • The content can be retrieved from the credentials of infra.ci.jenkins.io.

    • This file (backend-config) is git-ignored

  • The git command line to allow cloning the repository and its submodule shared-tools

    • This repository has submodules. Once you cloned the repository, execute the following command to obtain the shared tools:

git submodule update --init --recursive

Monitors

DataDog monitors are configured through Terraform with the datadog provider.

Once you’ve fulfilled the Requirements, you may execute any command from https://github.com/jenkins-infra/shared-tools/blob/main/terraform/README.adoc#available-commands by adding the correct flag --directory pointing to .shared-tools/terraform/:

make --directory=.shared-tools/terraform help
make --directory=.shared-tools/terraform lint
# ...

A usual change (add/update/remove a datadog monitor for instance) to this repository looks like the following:

  • Fork the repository and clone it locally

  • Follow the Requirements steps to obtain the shared tools

  • Start by running a full make --directory=.shared-tools/terraform validate command to ensure that you work on a sane base (should generate a report TXT file with no changes to be applied)

  • Edit the Terraform project files

  • Run the command make --directory=.shared-tools/terraform validate again to ensure that your changes are OK

  • Commit, push and open a pull request to let the Jenkins pipeline run the test + plan (as per https://github.com/jenkins-infra/shared-tools/blob/main/terraform/README.adoc#jenkins-pipeline)