Harry Hoffman wrote:
According to func-inventory (yay!) I was running 'cobbler 0 1.2.5 1.el5 noarch'
I've synced regularly over the past few days as we've been installing a few systems.
I'm using serializers_yaml and can see the profile listed in /var/lib/cobbler/profiles:
I can see the profiles in there.
Should I erase and re-install cobbler? b/c I don't think that I'll be able to just do a rpm -Uvh if the versions are the same.
Cheers, Harry
Michael DeHaan wrote:
Harry Hoffman wrote:
Just upgraded to the latest cobbler from epel-testing... the post-install script fails :-(
Updating : cobbler ####################### [ 5/10] profile CentOS-5.2-x86_64 not found, inheritance not possible
Stopping cobbler daemon: [ OK ] Starting cobbler daemon: Traceback (most recent call last): File "/usr/bin/cobblerd", line 32, in ? api = bootapi.BootAPI() File "/usr/lib/python2.4/site-packages/cobbler/api.py", line 90, in __init__ self.deserialize() File "/usr/lib/python2.4/site-packages/cobbler/api.py", line 448, in deserialize return self._config.deserialize() File "/usr/lib/python2.4/site-packages/cobbler/config.py", line 186, in deserialize serializer.deserialize(self._profiles) File "/usr/lib/python2.4/site-packages/cobbler/serializer.py", line 125, in deserialize rc = storage_module.deserialize(obj,topological) File "/usr/lib/python2.4/site-packages/cobbler/modules/serializer_yaml.py", line 136, in deserialize obj.from_datastruct(datastruct) File "/usr/lib/python2.4/site-packages/cobbler/collection.py", line 144, in from_datastruct item = self.factory_produce(self.config,seed_data) File "/usr/lib/python2.4/site-packages/cobbler/collection_profiles.py", line 41, in factory_produce return profile.Profile(config).from_datastruct(seed_data) File "/usr/lib/python2.4/site-packages/cobbler/item_profile.py", line 87, in from_datastruct self.set_parent(self.parent) File "/usr/lib/python2.4/site-packages/cobbler/item_profile.py", line 131, in set_parent raise CX(_("profile %s not found, inheritance not possible") % parent_name) cobbler.cexceptions.CX: 'profile CentOS-5.2-x86_64 not found, inheritance not possible' [FAILED] error: %post(cobbler-1.2.6-1.el5.noarch) scriptlet failed, exit status 1
Any ideas?
Cheers, Harry _______________________________________________ cobbler mailing list cobbler@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/cobbler
What version were you running previously? Could it be that the profile just didn't exist before and now the problem with the subprofile lacking a parent was caught?
Since cobbler no longer requires cobbler sync to be run frequently, that kind of error detection might not occur until an event that requires the object to be re-processed. Removal of the parent object should not be possible without the API getting in the way, though it might have been removed manually.
You can do a "rpm -Uvh --noscripts" to skip the call to "cobbler reserialize" and /sbin/services cobblerd restart in the bottom. This may help you look at the problem.
Depending on whether you are using serializers_yaml or serializer_catalog in /etc/cobbler/modules.conf, check /var/lib/cobbler/profiles or /var/lib/cobbler/config/profiles.d and see what you have in there.
--Michael
cobbler mailing list cobbler@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/cobbler
cobbler mailing list cobbler@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/cobbler
The solution (and I'll admit the serializer's depth sorting should have avoided this to begin with), seems to be that we should not be enforcing the parent assignment rules at the time when we create the objects in memory, only when we change the parentage of the subprofile. Apologies if that sounds too complicated (it is complicated), but it's just a one line patch:
http://git.fedorahosted.org/git/cobbler?p=cobbler;a=commitdiff;h=cc6d9e98623...
I'd be interested to know if others are seeing similar or not. I reviewed the diffs between 1.2.5 and 1.2.6 and there's nothing that would cause this, but somehow if the depth numbers got out of line it's possible.
I tried your config files and "cobbler list" prints the right tree. I think this possiblity was always there but it's not serious, if anyone hits this error they can apply the above patch.
If we get anyone else saying they hit this we can think about doing an update later.
--Michael