Project

General

Profile

Actions

Bug #9359

closed

Agent capabilities should be per agent, and not per node

Added by Nicolas CHARLES about 8 years ago. Updated over 2 years ago.

Status:
Released
Priority:
1 (highest)
Category:
Agent
Target version:
Severity:
Minor - inconvenience | misleading | easy workaround
UX impact:
User visibility:
Effort required:
Priority:
0
Name check:
Fix check:
Regression:

Description

Agent capabilities should be per agent, rather than system global.
For instance, if you have a Rudder server with Rudder agent + Enterprise agent, the Rudder Agent has capabilities that Enterprise agent doesn't
So, as a result, the promises run with Enterprise fail (like dumpdatastate), and break the promise generation


Related issues 4 (0 open4 closed)

Related to Rudder - Bug #9361: /usr/share/ncf/tree/30_generic_methods/file_from_template_jinja2.cf prevents Rudder to generate promises when CFEngine Enterprise is installedRejected2016-10-13Actions
Related to Rudder - Architecture #9384: Create a cfengine_rudder classReleasedBenoît PECCATTEActions
Related to Rudder - Architecture #9108: Add a capabilities files in rudder agent packageReleasedAlexis Mousset2016-09-14Actions
Related to Rudder - User story #12109: Agent capabilities in inventory are not parsedReleasedVincent MEMBRÉActions
Actions #1

Updated by Nicolas CHARLES about 8 years ago

  • Related to Bug #9361: /usr/share/ncf/tree/30_generic_methods/file_from_template_jinja2.cf prevents Rudder to generate promises when CFEngine Enterprise is installed added
Actions #2

Updated by Benoît PECCATTE about 8 years ago

Arrg !
It should probably.

However, we try to support the main cfengine directly without modification. Which means that an enterprise version of the cfengine agent should never have capabilities.
So the solution could be to just ignore the capabilities file when we are running on a nova agent.

Actions #3

Updated by Benoît PECCATTE about 8 years ago

  • Status changed from New to In progress
Actions #4

Updated by Benoît PECCATTE about 8 years ago

  • Status changed from In progress to Pending technical review
  • Assignee changed from Benoît PECCATTE to Nicolas CHARLES
  • Pull Request set to https://github.com/Normation/rudder-techniques/pull/1058
Actions #5

Updated by Benoît PECCATTE about 8 years ago

Actions #6

Updated by Benoît PECCATTE about 8 years ago

  • Translation missing: en.field_tag_list changed from Sponsored to Sponsored, Blocking 4.0
Actions #7

Updated by Benoît PECCATTE about 8 years ago

  • Status changed from Pending technical review to Pending release
  • % Done changed from 0 to 100
Actions #8

Updated by Vincent MEMBRÉ almost 8 years ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 4.0.1 and 3.2.10 which were released today.

Actions #9

Updated by Nicolas CHARLES almost 8 years ago

Transient errors may remain during upgrade.
In the policies, ncf generic methods are loaded through /var/rudder/ncf/common/10_ncf_internals/list-compatible-inputs script
When Rudder and ncf is upgraded, ncf and Rudder Techniques are updated using different methods:
  • Rudder Techniques are generated by the Web Interface, post installation
  • ncf files are updated by packaging in /usr/share/ncf/, and copied by agent run to /var/rudder/ncf

Only when the agent is run does the list-compatible-inputs file is updated, so there may be a temporary de-synchronisation between Rudder policies and ncf, causing the error to be still present during upgrade. Symptom may be a red cross during policy generation in the Web Interface

To prevent issues, you can:
  1. upgrade Rudder and ncf
  2. (optionally) upgrade Rudder Techniques
  3. run "rudder agent update && rudder agent run" on the Rudder server
  4. log in the Web Interface - if policy generation shows a red cross, click on "Regenerate policies", which will solve the issue
Actions #10

Updated by Nicolas CHARLES over 7 years ago

David just told me this issue still happens

Actions #11

Updated by François ARMAND over 7 years ago

  • Translation missing: en.field_tag_list changed from Sponsored, Blocking 4.0 to Sponsored
  • Severity set to Minor - inconvenience | misleading | easy workaround
Actions #12

Updated by François ARMAND almost 7 years ago

Actions #13

Updated by François ARMAND almost 7 years ago

Actions #14

Updated by Alexis Mousset over 2 years ago

  • Priority set to 0
Actions

Also available in: Atom PDF