https://github.com/springerpe/datadog-agent-boshrelease
Datadog agent from source!
https://github.com/springerpe/datadog-agent-boshrelease
bosh bosh-release datadog-agent
Last synced: 21 days ago
JSON representation
Datadog agent from source!
- Host: GitHub
- URL: https://github.com/springerpe/datadog-agent-boshrelease
- Owner: SpringerPE
- License: apache-2.0
- Created: 2017-01-18T09:54:53.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2018-08-14T13:58:05.000Z (almost 8 years ago)
- Last Synced: 2025-12-03T22:40:46.435Z (7 months ago)
- Topics: bosh, bosh-release, datadog-agent
- Language: Shell
- Size: 58.6 KB
- Stars: 2
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Datadog Agent release for BOSH
* For all stemcells (Python source implementation)
* Automatically defines tags based on deployments, names and jobs
* Process, network, ntp and disk integrations by default
* Monit processes are added automatically to process integration
* You can define additional integrations
# Configuration
Upload the release to Bosh director
Create a `runtime-config.yaml` file:
```
releases:
- name: datadog-agent
version: 1
addons:
- name: dd-agent
jobs:
- name: dd-agent
release: datadog-agent
properties:
dd:
use_dogstatsd: yes
api_key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
tags: ["pe", "bosh", "bosh:bosh-exp"]
tags:
owner: pe
email: platform-engineering@springernature.com
```
Upload runtime-config to Bosh Director: `bosh update runtime-config runtime-config.yaml`
Re-deploy the deployments to automatically add the agent.
You can also add the release to the manifest and deploy it
# Development
After cloning this repository, run:
```
git submodule init
git submodule update
```
to update the gohai submodule. Gohai is a binary (golang) program used by Datadog Agent to collect
basic information from the server. There is a script `bosh_prepare` which also runs the git
submouldes commands and downloads all sources to the `blobs` directory:
```
./bosh_prepare
```
It will get all sources specified in the packages/*/spec files (commented out) for
local development, then you can create the release (final) with:
```
./bosh_final_release
```
which will upload the tarball to github and make the new blobs public available in the S3 bucket
### Note
`bosh_prepare` ensures that `gohai` git submodule is populated in `src/gohai`. In order
to avoid including a git package -only needed because of `go get` command to download
the dependencies- the script runs `go get` locally to get all dependencies, so it is
assuming you have `go` installed. After those dependencies were downloaded, the
binary package can be compiled, but a new folder `src/gohai/src` appears, because of
that bosh will complain about untracked git changes, but there are two workarounds:
* use `bosh create release --force`
* add to the `.gitmodules` file a config parameter for ignoring dirty state of the submodule: `ignore = dirty`
Here, the second option is used.
# Author
Springer Nature Platform Engineering, Jose Riguera Lopez (jose.riguera@springer.com)
Copyright 2017 Springer Nature
# License
Apache 2.0 License