Actions
Bug #4130
closedWhen upgrading 2.4 -> 2.8, promises are generated before the migration of CFEngine variable, leading to wrong promises generated
Status:
Released
Priority:
N/A
Assignee:
Category:
Web - Config management
Target version:
Pull Request:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:
Description
After an upgrade from 2.4.11 to 2.8.0~rc2, nodes managed by rudder server cannot update their policy anymore.
failsafe.cf file is still generated using ${node.id} instead of ${rudder.node.id} but ${node.id} is not used anymore. resulting in a failsafe.cf looking like that:
"uuid" string => "${node.id}";
also update.cf has a problem, and the node can't connect anymore to update the server
"policy_files" string => "/var/rudder/share/${node.id}"; #directory where to look for promises in the server for that client
THis is due because a reload of the technique library occurs before the variable are migrated, leading to a generation using a wrong parameter
[2013-11-05 15:36:02] INFO com.normation.rudder.batch.CheckTechniqueLibrary - Flag file '/opt/rudder/etc/force_technique_reload' found, reload Technique library now [2013-11-05 15:36:02] INFO com.normation.cfclerk.services.impl.TechniqueRepositoryImpl - Reloading technique library, found modified technique(s): inventory/1.0, common/1.0, distributePolicy/1.0 [2013-11-05 15:36:03] INFO com.normation.rudder.services.policies.DeployOnTechniqueCallback - Reload Technique library at start up [2013-11-05 15:36:03] INFO com.normation.rudder.batch.CheckTechniqueLibrary - Successfully reloaded Technique library on start up. now deleting flag file '/opt/rudder/etc/force_technique_reload' [2013-11-05 15:36:03] INFO com.normation.rudder.batch.CheckTechniqueLibrary - Flag file '/opt/rudder/etc/force_technique_reload' successfully removed . . . [2013-11-05 15:36:05] INFO com.normation.rudder.services.servers.NodeConfigurationServiceImpl - Configuration of following nodes were updated, their promises are going to be written: ff260631-77e6-4ca7-ba7a-9855b919250d, root . . . [2013-11-05 15:36:07] INFO migration - Starting migration of inline variables in Directives (i.e variables with ${XXX} syntax) to new 'rudder' namespace (i.e to syntax ${rudder.XXX}) [2013-11-05 15:36:07] INFO migration - Migrating inline variables in Directive Common (uuid: common-root) so that they use the new 'rudder' namespace [2013-11-05 15:36:08] INFO migration - Migration of inline variables in Directives to new 'rudder' namespace succeeded [2013-11-05 15:36:08] INFO migration - No variable name with dot defined in the generic CFEngine Variable Definition, skipping . . . [2013-11-05 15:36:09] INFO com.normation.rudder.batch.AsyncDeploymentAgent - Successful deployment 1 [2013/11/05 15:36:03 - 2013/11/05 15:36:09]
The update of technique library should be made after that, or the migration of of variable should trigger a new deployment.
Actions