Comment 14 for bug 1190043

Revision history for this message
Dan Bode (bodepd) wrote :

I had a quick look at the logs:

1. the fact that it ran the second time is kind of misleading, it failed b/c the keystone service was restarted on the second run. Ideally, puppet should do nothing on the second run, but for some reason, it is still configuring things, which leads to the keystone service restart.

2. This command seems to fail b/c it is the first command that runs after the keystone service restart.

3. A fix would be easy enough:

The following code is supposed to handle the case where keystone is not ready:

https://github.com/stackforge/puppet-keystone/blob/master/lib/puppet/provider/keystone.rb#L77

We have identified two cases which indicate the server is not ready:

   (e.message =~ /\[Errno 111\] Connection refused/) or (e.message =~ /\(HTTP 400\)/)

It seems that we are running into a third case now, this new message:

    HTTP Unable to establish connection to http://127.0.0.1:35357/v2.0/OS-KSADM/roles

so, you can fix it by adding:

  (e.message =~ /\[Errno 111\] Connection refused/) or (e.message =~ /\(HTTP 400\)/) or
  (e.message => /HTTP Unable to establish connection/)

Even if this resolves the issue, it raises a bigger question of why are other folks not seeing the same issue with the upstream modules and package repos. Is there any easy way to see the diffs between our packages and the upstream packages (sorry if it's an easy question, I still have not wrapped my head around our packages)