Bug #3382
closedA pristine Rudder 2.6 nightly installation fails any deployment as long as the root server did not register its own inventory
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)
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.
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)
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
Pull requests here :
LDAP Inventory : https://github.com/Normation/ldap-inventory/pull/16
Updated by Nicolas CHARLES over 11 years ago
- Status changed from Pending technical review to Pending release
This looks valid, thank you !
Updated by Vincent MEMBRÉ over 11 years ago
- % Done changed from 0 to 100
Applied in changeset ca342087b8437ea53d647cb39559b66e4854763d.
Updated by Nicolas CHARLES over 11 years ago
Applied in changeset fa1d96bec51820951976e26af4d37af648367924.
Updated by Vincent MEMBRÉ over 11 years ago
- Pull Request set to https://github.com/Normation/ldap-inventory/pull/16
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.