Architecture #10625
closedDon't merge directive from same technique on generation
Description
For historical reason, all directives from a same technique are merged during generation. That means that only one set of parameters is generated for the directive, and only one set of files is written for all of them.
This leads to a lot of problems, like:
- it is impossible to have two directives from the same Technique, but with different Technique version, on the same node (see #2736, which immensely complexify Technique migration, see #4293)
- it is not possible to have two directives from the same Technique, on the same node, one in Audit, the other in Enforce mode (see #10580)
- you can't sort Directive from the same technique at different stage, even if they are in different rules,
- debugging is complex as it is impossible to clearly isolate the life cycle of one directive
Important note: UniqueVariable are not supported anymore after that merge. See #11940.
It is likely that you don't know what an unique variable is in all case.
Updated by François ARMAND over 7 years ago
- Related to Bug #2736: We can't apply Directives from different versions of the same Technique on a node added
Updated by François ARMAND over 7 years ago
- Related to User story #4293: Migrating from a Technique version to another one in a Directive is long and painful added
Updated by François ARMAND over 7 years ago
- Related to Bug #10580: Cannot mix audit/enforce mode on directives based on the same technique added
Updated by Jonathan CLARKE over 7 years ago
- Description updated (diff)
- Effort required set to Very large
Updated by François ARMAND about 7 years ago
- Status changed from New to In progress
- Assignee set to François ARMAND
- Target version set to 4.3.0~beta1
Starting probing on the policy generation part.
Updated by François ARMAND about 7 years ago
Work in progess here: https://github.com/fanf/rudder/commit/8dac39b586d876e1842c2545cace124a3ac0ea6d
Updated by François ARMAND about 7 years ago
Work in progess here: https://github.com/fanf/rudder/commit/702e6d1b4f8310ad91c5fd44d9653f4ada84fc42
Updated by François ARMAND about 7 years ago
Work in progess here: https://github.com/fanf/rudder/commit/702e6d1b4f8310ad91c5fd44d9653f4ada84fc42
Updated by François ARMAND about 7 years ago
Work in progess here: https://github.com/fanf/rudder/commit/111011324ff3440db8afef3d56c8386be1991ca9
Updated by François ARMAND about 7 years ago
- Status changed from In progress to Pending technical review
- Assignee changed from François ARMAND to Vincent MEMBRÉ
- Pull Request set to https://github.com/Normation/rudder/pull/1780
Updated by François ARMAND about 7 years ago
- Status changed from Pending technical review to Pending release
Applied in changeset rudder|1fbe616d59614711479e27e9d7ae0c1bf12178f1.
Updated by Nicolas CHARLES about 7 years ago
- Related to User story #11832: Document multiversionned technique added
Updated by Nicolas CHARLES about 7 years ago
- Related to User story #11844: Port some more techniques to multi-versionned format added
Updated by François ARMAND almost 7 years ago
- Related to Bug #11876: Broken reporting in Rudder 4.3 with standard directives added
Updated by Vincent MEMBRÉ almost 7 years ago
- Related to deleted (Bug #11876: Broken reporting in Rudder 4.3 with standard directives)
Updated by Vincent MEMBRÉ almost 7 years ago
- Status changed from Pending release to Released
This bug has been fixed in Rudder 4.3.0~beta1 which was released today.
- 4.3.0~beta1: Announce Changelog
- Download: https://www.rudder-project.org/site/get-rudder/downloads/
Updated by Benoît PECCATTE almost 7 years ago
- Has duplicate Architecture #2880: Change promise generation to have one promise by rule and no more multiplexation added
Updated by Nicolas CHARLES about 6 years ago
- Related to User story #14002: Port techniques downloadFile & cronManagement to separated policy generation added