Architecture #11913
closedno reporting if value to report contains a variable
Description
Let's say you want your technique to edit a file /tmp/${bar} with a file_ensure_lines_present method where bar is either a variable definedby another method or a parameter of the technique (value defined in a Directive in 4.3). You will never get a report for this method since the variable won't have any value while expanding reporting file (expected_reports.csv)
We should comppletely change the way reporting is made on ncf techniques; by replacing the csv file system by creating a context where the reporting method will get the value of the current technique/directive/method.
Values extracted from CSV are:
- The technique name
- Component to report
- Value of the component to report
- The reporting identifier (aka the tracking key) composed of:
- THe Rule ID
- The Directive ID
Thus will largeky simplify logger_rudder method and remove a lot of magic.
Context needs to be set befor elogger method is called.
The techniqe needs to change the reproting context before each method call ( component to report, and it's value, and the technique name)
*
Rudder needs to set Directive/Rule context before calling the technique bundle.