Project

General

Profile

Actions

Bug #5881

closed

Architecture #5305: Rewrite techniques so they all use ncf report methods

Architecture #5353: Rewrite reports to use rudder_common_report

Architecture #5689: Rewrite system techniques to use rudder_common_report

rudder_report_generic is not available from failsafe.cf

Added by Jonathan CLARKE over 9 years ago. Updated about 9 years ago.

Status:
Released
Priority:
N/A
Category:
Techniques
Target version:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:

Description

When running cf-promises on the failsafe.cf (which includes update.cf), since the change in #5689:

# /var/rudder/cfengine-community/bin/cf-promises -f failsafe.cf
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:238:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:240:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:270:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:273:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:276:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:279:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:282:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:285:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:288:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:291:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:294:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:297:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:300:0: error: Undefined bundle rudder_common_report with type usebundle
/var/rudder/cfengine-community/inputs/common/1.0/update.cf:303:0: error: Undefined bundle rudder_common_report with type usebundle

This is because rudder_common_report comes from rudder_stdlib.cf which is not included in failsafe.cf

I don't want to duplicate all the bundles for reporting in failsafe.cf like we have for other bodies in failsafe.cf, because this would be too much duplication, and inevitably lead to the two versions drifting. I also don't really feel comfortable including the whole of rudder_stdlib.cf in failsafe.cf, because we could very well add a body or a bundle in there that breaks failsafe.cf, and that we should never do.

So, I think the cleanest and simplest solution is to split rudder_stdlib.cf into 2: rudder_stdlib_core.cf for the main reporting and classes bundles that we use ALL THE TIME in Rudder techniques, and rarely change (except for very real bugs in reporting), and keep rudder_stdlib.cf for any other bodies/bundles we want to put in a stdlib. That way, we can safely include rudder_stdlib_core.cf in failsafe.cf and resolve this issue.


Subtasks 1 (0 open1 closed)

Bug #5885: Body introduced in failsafe.cf by #5881 contains deprecated $(var) syntaxReleasedNicolas CHARLES2014-11-30Actions
Actions

Also available in: Atom PDF