Project

General

Profile

Actions

User story #2295

closed

BREAKING CHANGE: Rename Policy Template, Policy Instance and Configuration Rules

Added by François ARMAND over 12 years ago. Updated almost 12 years ago.

Status:
Released
Priority:
N/A
Category:
Architecture - Code maintenance
Target version:
UX impact:
Suggestion strength:
User visibility:
Effort required:
Name check:
Fix check:
Regression:

Description

This is a BIG evolution in Rudder. The following renaming are going to be done, hopefully making the whole domain model clearer and easier to get.

New terme are in strong italic.

Policy Template => Technique

The policy template term is discarded in favor of Technique.
A technique is a technical thing, created and updated by configuration management and application/services experts.

It is used as a template to create your configuration management rules. It generally cover a given software or infrastructure service, like "Apache Server", or "Unix Passwords".

Metadata file for a technique is renamed from policy.xml into metadata.xml

Techniques are distributed in a library (the Technique Library) by these experts or reference institution (for example, "our local Rudder gurus").

In Rudder, in can choose to only use a subset of the technique Library. That subset is called Active techniques.

Policy Instance => Directive

A Directive is a business policy, generally comming down from the hierarchy, like "all our password must have at least 10 characters, with symbols, numbers and letters".

In Rudder, a directive is defined from a technique used as template, in which the functional parameter are filled.
For our password directive, we could use the "Unix password" technique example of the previous chapter.

Nodes => Nodes

Well, that one is simple :) We keep the well-established term Node to design "something on which we want to use configuration management", be it a server (most of the time), a desktop computer, a smartphone, a router, or anything else.

A set of nodes, somehow semantically grouped ("the servers used for the MySQL cluster", "all Debian Linux server in that plage of IPs", etc) is simply named a group (of nodes).

Configuration Rules => Rules

Finally, we want to applied set of directives to groups of nodes. That give us a Rule applied to our infrastructure.
Rudder work is to check that rules are correctly applied and take actions if they are not.

Other renaming in code

CFCPolicyInstance => Cfe3PolicyDraft

The object that bind a directive to a given node and other contextual variables, used to generate CFEngine3 promise file, will be called a Cfe3PolicyDraft.

Policy Server => RootServer and RelayServer

The generic term "policy server", designing the server on which Rudder is installed and/or to which nodes come getting there configurations will be split in two terms:

  • RootServer for the main Rudder Server
  • RelayServer for servers used to link two network zones.

Related issues 6 (0 open6 closed)

Related to Rudder - Architecture #2299: Rename the column names in the Rudder postgres databaseReleasedFrançois ARMAND2012-02-17Actions
Related to Rudder - User story #2301: Rename in the LDAP tree and change index accordinglyReleasedFrançois ARMAND2012-02-17Actions
Related to Rudder - Architecture #2298: Rename POLICY to TECHNIQUE in the POLICY.XML, and rename the POLICY.XMLReleasedNicolas CHARLES2012-02-17Actions
Related to Rudder - Architecture #2312: Rename PT/PI/CR in packagingReleasedJonathan CLARKE2012-02-22Actions
Related to Rudder - Architecture #2314: Upgrade migration script for LDAP database schema (2.3 -> 2.4 renaming)ReleasedMatthieu CERDA2012-02-22Actions
Related to Rudder - User story #2323: Rename Policy Template, Policy Instance and Configuration Rules in the Rudder webappReleased2012-02-23Actions
Actions #1

Updated by François ARMAND about 12 years ago

There is also the following remaning:

In UserPolicyTemplate => ActivatedTechnique
  • referencePolicyTemplateName => techniqueName

In all object: isActivated => isEnabled, to disambiguate with ActivatedTechnique (which can be enabled/disabled)

In code, "Active Techniques" is called "ActiveTechniqueLibrary" to desambiguate between the library and a list/set of active techniques.

ComponentCard => ReportComponent

Actions #2

Updated by François ARMAND about 12 years ago

For the refactoring, we use a branch named refactoring/renaming_pt_pi_cr for Git projects.

Actions #3

Updated by François ARMAND about 12 years ago

  • Description updated (diff)

Update technique metadata file name into metadata.xml

Actions #4

Updated by François ARMAND about 12 years ago

On the file system, in /var/rudder/configuration-repository

  • configuration-rules => rules
  • policy-templates => techniques
  • policy-library => directives
  • userPolicyTemplateSettings.xml => activeTechniqueSettings.xml
  • policy.xml => metadata.xml
Actions #5

Updated by François ARMAND about 12 years ago

  • Status changed from 2 to In progress
Actions #6

Updated by Jonathan CLARKE almost 12 years ago

  • Status changed from In progress to Pending technical review

This is finished, closing this old ticket.

Actions #7

Updated by Jonathan CLARKE almost 12 years ago

  • Status changed from Pending technical review to 10

Exceptionnaly skipping Technical review - this code change has been around for a while, and is huge, and has been worked on by many many people since it was commited. It is practically impossible to review the whole change now, and any bugs have most likely been flattened out.

Actions #8

Updated by Jonathan CLARKE almost 12 years ago

  • Status changed from 10 to Released
Actions

Also available in: Atom PDF