User story #6264
closedGet directive parameter value from external source (kv store, rest, etc)
Description
We want to allows user to get the value of a directive from an external source, at run time (not at promise generation time like done in #1203). Typical sources are:
- database, especially K/V store à la Redis,
- third party REST API
- file content
- and more generally, command execution result
We will have to take some care for things like:
- error management: what happen if the call fails? (easy idea: always provide a defaults value - but not applicable in all case)
- performance: that can take a lot of time, so it needs to be run only once by agent run, and always have a timeout
On that user story, we only observe values when agent is run: there is no reactive run of the agent when such an external changes. The reactive part would have to be implemented on the behalf of the value owner. For example, if the external value provider is consul, we could use https://github.com/hashicorp/consul-template to make it runs rudder-agent each time a value change.
Updated by Vincent MEMBRÉ over 9 years ago
- Target version changed from 3.1.0~beta1 to 3.1.0~rc1
Updated by Vincent MEMBRÉ over 9 years ago
- Target version changed from 3.1.0~rc1 to 3.1.0
Updated by Vincent MEMBRÉ over 9 years ago
- Target version changed from 3.1.0 to 3.1.1
Updated by Vincent MEMBRÉ over 9 years ago
- Target version changed from 3.1.1 to 3.1.2
Updated by Jonathan CLARKE over 9 years ago
- Target version changed from 3.1.2 to Ideas (not version specific)
Updated by Benoît PECCATTE over 7 years ago
- Related to User story #9698: Import node properties from external data sources added
Updated by Benoît PECCATTE over 7 years ago
- Related to User story #8629: Allows generation-time javascript eval in directive parameters added
Updated by François ARMAND about 4 years ago
- Status changed from New to Resolved
I'm marking this one resolved:
- since then, we added node and group properties that can be used to fill-up directive parameters,
- we have several demostrator that these properties can be provided by third-party things (datasource plugin, inventoy extension hooks, etc).