Project

General

Profile

Actions

Architecture #2775

closed

Common promises have redondant classes definition about root server and policy server

Added by Nicolas PERRON over 12 years ago. Updated almost 3 years ago.

Status:
Resolved
Priority:
1 (highest)
Assignee:
-
Category:
System techniques
Effort required:
Name check:
Fix check:
Regression:

Description

Since #2687 , the common promises have redondant definition of classes. Extract from common/1.0/promises.st:

[...]
bundle common va {

[...]

# definition of the machine roles
&NODEROLE&
}

bundle common rudder_roles {

    classes:
        # Abort if no uuid is defined
        "should_not_continue" not => fileexists("${g.uuid_file}");
        # Policy Server is a machine which delivers promises
        "policy_server" expression => strcmp("root","$(g.uuid)");
        # Root Server is the top policy server machine
        "root_server" expression => strcmp("root","$(g.uuid)");
}
[...]

And as said the #2687 issue:
&NODEROLE& can contains:

On the root server :

classes:
  "policy_server" expression => "any";
  "root_server" expression => "any";

On a relay server

classes:
  "policy_server" expression => "any";

or on a simple Node

# This node doesn't have any specific role

Into the initial promises, the &NODEROLE& part doesn't exist. It seems that there is two choices:
  • Remove &NODEROLE& which became obsolete.
  • Remove classes defined without &NODEROLE& in order to let them exist only for initial promises.

No matter what choice is made, the definition of relay server is not enough elaborated.


Related issues 1 (0 open1 closed)

Related to Rudder - Architecture #2687: Add class to check uuid of the machine and to know if it's a root server or a nodeReleasedNicolas PERRON2012-07-20Actions
Actions #1

Updated by Nicolas CHARLES over 12 years ago

Just a remark :

"policy_server" expression => strcmp("root","$(g.uuid)");

is invalid (or incomplet at least)
The root server is a policy server, but the opposite is not true.

Actions #2

Updated by Jonathan CLARKE over 12 years ago

  • Assignee deleted (Nicolas CHARLES)
  • Target version changed from 2.4.0~beta4 to 24
Actions #3

Updated by Nicolas CHARLES almost 12 years ago

  • Target version changed from 24 to Ideas (not version specific)
Actions #4

Updated by Alexis Mousset almost 3 years ago

  • Status changed from New to Resolved

fixed in 7.0

Actions

Also available in: Atom PDF