Add ability to pass credentials to InfluxDB publisher client #432
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR adds two methods for passing credentials to the
InfluxDBClientwithin the InfluxDB publisher agent.Credentials can be passed either directly through
INFLUXDB_USERNAMEandINFLUXDB_PASSWORD, or by reading files specified withINFLUXDB_USERNAME_FILEandINFLUXDB_PASSWORD_FILE.Motivation and Context
Resolves #431.
How Has This Been Tested?
There's a new unit test for testing loading credentials via the various methods. I also tested this locally with an instance of InfluxDB 1.8.10 where I created a username/password, then enabled HTTP auth via setting
INFLUXDB_HTTP_AUTH_ENABLED=truein the compose file, like this:Then I tested passing no credentials (defaults to 'root'/'root'), which fails. I tested passing credentials from file via Docker Secrets. And then tested passing credentials via the environment variables directly, also testing that this takes precedence over reading from file.
Types of changes
Checklist: