Project

General

Profile

Actions

User story #6264

closed

Get directive parameter value from external source (kv store, rest, etc)

Added by François ARMAND almost 10 years ago. Updated about 4 years ago.

Status:
Resolved
Priority:
N/A
Assignee:
-
Category:
Techniques
UX impact:
Suggestion strength:
User visibility:
Effort required:
Name check:
Fix check:
Regression:

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.


Related issues 4 (1 open3 closed)

Related to Rudder - User story #1203: Provision options list from external source (URL, JSON, XML...)New2011-04-05Actions
Related to Rudder - User story #6246: Feature idea: Allow other variable types when using the cfengine variable techniqueRejectedActions
Related to Rudder - User story #9698: Import node properties from external data sourcesReleased2016-11-21Actions
Related to Rudder - User story #8629: Allows generation-time javascript eval in directive parametersReleasedFrançois ARMAND2016-07-28Actions
Actions #1

Updated by Vincent MEMBRÉ over 9 years ago

  • Target version changed from 3.1.0~beta1 to 3.1.0~rc1
Actions #2

Updated by Vincent MEMBRÉ over 9 years ago

  • Target version changed from 3.1.0~rc1 to 3.1.0
Actions #3

Updated by Vincent MEMBRÉ over 9 years ago

  • Target version changed from 3.1.0 to 3.1.1
Actions #4

Updated by Vincent MEMBRÉ over 9 years ago

  • Target version changed from 3.1.1 to 3.1.2
Actions #5

Updated by Jonathan CLARKE over 9 years ago

  • Target version changed from 3.1.2 to Ideas (not version specific)
Actions #6

Updated by Benoît PECCATTE over 7 years ago

  • Related to User story #9698: Import node properties from external data sources added
Actions #7

Updated by Benoît PECCATTE over 7 years ago

  • Related to User story #8629: Allows generation-time javascript eval in directive parameters added
Actions #8

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).

Actions

Also available in: Atom PDF