Project

General

Profile

Actions

Bug #3382

closed

A pristine Rudder 2.6 nightly installation fails any deployment as long as the root server did not register its own inventory

Added by Matthieu CERDA over 11 years ago. Updated over 11 years ago.

Status:
Released
Priority:
1 (highest)
Category:
Web - Nodes & inventories
Target version:
Severity:
UX impact:
User visibility:
Effort required:
Priority:
Name check:
Fix check:
Regression:

Description

A pristine Rudder 2.6 nightly installation fails any deployment as long as the root server did not register its own inventory.

We get at first a "None.get" error, and when forcing a deployment:

[2013-03-29 09:50:12] ERROR com.normation.rudder.batch.AsyncDeploymentAgent$DeployerAgent - Error when doing deployment, reason Cannot build Rule vals <- Could not replace variables <- Error when processing rule (hasPolicyServer-root/common:1.0/common-root) with variables: Stream(OWNER User launching cfe (usually root) : ArrayBuffer(${rudder.node.admin}), ?) <- DN machineId=121E0991-CBAB-3D30-D265-EB27C9753F60,ou=Machines,ou=Pending Inventories,ou=Inventories,cn=rudder-configuration does not belong to machine inventories DN ou=Machines,ou=Accepted Inventories,ou=Inventories,cn=rudder-configuration
[2013-03-29 09:50:12] ERROR com.normation.rudder.batch.AsyncDeploymentAgent - Deployment error for process '2' at 2013/03/29 09:50:12: Cannot build Rule vals

When forcing the root server to send its own inventory, things start to work normally.

Expected result: Rudder should work even without this inventory, (with just no information in the root server inventory page)

Actions #1

Updated by Jonathan CLARKE over 11 years ago

  • Status changed from New to 8
  • Assignee changed from François ARMAND to Vincent MEMBRÉ

It appears that this bug was introduced by https://github.com/Normation/rudder/commit/bce41850a674f0865d6377d3260580ebf0872de8. It didn't happen before, and it looks pretty damn similar.

Actions #2

Updated by Vincent MEMBRÉ over 11 years ago

  • Status changed from 8 to In progress

In fact Rudder server inventory is correctly handled.

At Rudder initialisation, The node inventory is considered as Accepted, but the new machine One is handled is in Pending inventorues

So the node container is stocked in DN : machineId=121E0991-CBAB-3D30-D265-EB27C9753F60,ou=Machines,ou= Pending Inventories,ou=Inventories,cn=rudder-configuration

But after the inventory saving, the machine inventory is transfered in machineId=121E0991-CBAB-3D30-D265-EB27C9753F60,ou=Machines,ou= Accepted Inventories,ou=Inventories,cn=rudder-configuration, but the container is still looking in machineId=121E0991-CBAB-3D30-D265-EB27C9753F60,ou=Machines,ou=Pending Inventories,ou=Inventories,cn=rudder-configuration for it.

The conatiner should have been changed when the inventory was moved from pending to accepted

Beside that, the case of "No machine inventory" should be treated like commit bce41850a in NodeInfoService

There is two things to correct (one in ldap inventory, one in Rudder, pull requests are coming very soon)

Actions #3

Updated by Vincent MEMBRÉ over 11 years ago

  • Status changed from In progress to Pending technical review
  • Assignee changed from Vincent MEMBRÉ to Nicolas CHARLES
Actions #4

Updated by Nicolas CHARLES over 11 years ago

  • Status changed from Pending technical review to Pending release

This looks valid, thank you !

Actions #5

Updated by Vincent MEMBRÉ over 11 years ago

  • % Done changed from 0 to 100
Actions #7

Updated by Vincent MEMBRÉ over 11 years ago

  • Pull Request set to https://github.com/Normation/ldap-inventory/pull/16
Actions #8

Updated by Jonathan CLARKE over 11 years ago

  • Status changed from Pending release to Released

This ticket has been addressed in version 2.6.0~beta1 of Rudder, which has just been released. Please see the changelog here: https://www.rudder-project.org/foswiki/System/Documentation:ChangeLog26.

Actions

Also available in: Atom PDF