Fix an issue where the SSH key processor will complain about missing SSHKey objects...
authorMarius Mathiesen <marius@shortcut.no>
Tue, 17 Aug 2010 11:20:14 +0000 (13:20 +0200)
committerMarius Mathiesen <marius@shortcut.no>
Tue, 17 Aug 2010 11:20:14 +0000 (13:20 +0200)
commitdfd5a9182f7f2b5daadfca8098ed2da51d435498
tree07ea2a832c5d3a534d94533e1e3e4e80b6405e20
parent21c9756def76c4bfee39c2bc4678d59ca3568bb1
Fix an issue where the SSH key processor will complain about missing SSHKey objects in the database.

The message sent to the Message queue to have the key added to the key file was sent by a after_create hook in the SSHKey model.
Since this happens inside a SQL transaction, the message will be sent before the transaction is committed to the database. In situations where the
poller has little load, the message could be picked up and processed before the record was available outside the database transaction in the model.
This would cause the processor to complain that the SSHKey with a given ID could not be found.

This commit moves the call to publish the MQ message to the caller, ie. the controller.
app/controllers/keys_controller.rb
app/models/ssh_key.rb
test/functional/keys_controller_test.rb
test/unit/ssh_key_test.rb