Bug #4130
closedWhen upgrading 2.4 -> 2.8, promises are generated before the migration of CFEngine variable, leading to wrong promises generated
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.
Updated by Vincent MEMBRÉ about 11 years ago
- Status changed from New to Pending technical review
- Assignee changed from Vincent MEMBRÉ to François ARMAND
- Pull Request set to https://github.com/Normation/rudder/pull/363
Pull request here: https://github.com/Normation/rudder/pull/363
Updated by Vincent MEMBRÉ about 11 years ago
- Status changed from Pending technical review to Pending release
- % Done changed from 0 to 100
Applied in changeset 7fea5eef92f243674330c572b6fbd36a5f88ea9b.
Updated by Anonymous about 11 years ago
Applied in changeset 36a6f16e95ad5a7ffd95644088fe3ca28f89b17a.
Updated by Vincent MEMBRÉ about 11 years ago
- Status changed from Pending release to Released
This bug has been fixed in Rudder 2.8.0, which was released today.
Check out:
- The release announcement: http://www.rudder-project.org/pipermail/rudder-announce/2013-November/000060.html
- The full ChangeLog: http://www.rudder-project.org/foswiki/bin/view/System/Documentation:ChangeLog28
- Download information: https://www.rudder-project.org/site/get-rudder/downloads/
Updated by Benoît PECCATTE almost 10 years ago
- Category changed from 14 to Web - Config management