Project

General

Profile

Architecture #10625

Don't merge directive from same technique on generation

Added by François ARMAND over 1 year ago. Updated 8 months ago.

Status:
Released
Priority:
N/A
Category:
Web - Config management
Target version:
Effort required:
Very large

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.


Subtasks

Architecture #11705: Remove the use of serial in rulesReleasedVincent MEMBRÉ
User story #11846: Display in web interface that technique support multivalued versionReleasedVincent MEMBRÉ
Bug #11862: RudderUniqueID is not replaced when used in OUTPATHReleasedNicolas CHARLES
Bug #11876: Broken reporting in Rudder 4.3 with standard directivesReleasedFrançois ARMAND
Bug #11995: Error when deserializing JSON for expected node configuration in Rudder 4.3ReleasedNicolas CHARLES
Bug #12003: Error when deserializing JSON for expected node configuration in Rudder 4.3ReleasedNicolas CHARLES
Architecture #11940: Warn if an "uniqueVariable" is found in a techniqueReleasedFrançois ARMAND
Architecture #11941: Remove unique variable in our TechniqueReleasedNicolas CHARLES

Related issues

Related to Rudder - Bug #2736: We can't apply Directives from different versions of the same Technique on a nodeRejected
Related to Rudder - User story #4293: Migrating from a Technique version to another one in a Directive is long and painfulNew2013-12-19
Related to Rudder - Bug #10580: Cannot mix audit/enforce mode on directives based on the same techniqueRejected
Related to Rudder - User story #11832: Document multiversionned techniqueReleased
Related to Rudder - User story #11844: Port some more techniques to multi-versionned formatReleased
Has duplicate Rudder - Architecture #2880: Change promise generation to have one promise by rule and no more multiplexationRejected

Associated revisions

Revision 1fbe616d (diff)
Added by François ARMAND about 1 year ago

Fixes #10625: Don't merge directive from same technique on generation

Revision 647c8fde (diff)
Added by François ARMAND about 1 year ago

Fixes #10625: Don't merge directive from same technique on generation

History

#1 Updated by François ARMAND over 1 year ago

  • Related to Bug #2736: We can't apply Directives from different versions of the same Technique on a node added

#2 Updated by François ARMAND over 1 year ago

  • Related to User story #4293: Migrating from a Technique version to another one in a Directive is long and painful added

#3 Updated by François ARMAND over 1 year ago

  • Related to Bug #10580: Cannot mix audit/enforce mode on directives based on the same technique added

#4 Updated by Jonathan CLARKE over 1 year ago

  • Description updated (diff)
  • Effort required set to Very large

#5 Updated by François ARMAND about 1 year 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.

#10 Updated by François ARMAND about 1 year 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

#11 Updated by François ARMAND about 1 year ago

  • Status changed from Pending technical review to Pending release

#12 Updated by Nicolas CHARLES about 1 year ago

#13 Updated by Nicolas CHARLES about 1 year ago

  • Related to User story #11844: Port some more techniques to multi-versionned format added

#14 Updated by François ARMAND 11 months ago

  • Related to Bug #11876: Broken reporting in Rudder 4.3 with standard directives added

#15 Updated by François ARMAND 11 months ago

  • Description updated (diff)

#16 Updated by Vincent MEMBRÉ 11 months ago

  • Related to deleted (Bug #11876: Broken reporting in Rudder 4.3 with standard directives)

#17 Updated by Vincent MEMBRÉ 10 months ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 4.3.0~beta1 which was released today.

#18 Updated by Benoît PECCATTE 10 months ago

  • Has duplicate Architecture #2880: Change promise generation to have one promise by rule and no more multiplexation added

Also available in: Atom PDF