On 24/01/12 16:44 +0000, mtaylor(a)redhat.com wrote:
From: Martyn Taylor <mtaylor(a)redhat.com>
This seems to solve the stated problem, though this woudl be a good
thing to have a test for. That would both prove it was fixed and
guard against future regressions. Running the same commands in the
BZ, I got the following output, which looks reasonable to me, so I
think I can ACK this, just please add a test before pushing. Results:
aeolus-image build --target mock --template f14x86_64.tdl
Target Image Target Status
Image Build
------------------------------------ ------ ---------
------------------------------------
------------------------------------
1c1ed817-cb32-466f-abd3-f227cfe3e0f5 mock COMPLETED
906a3c33-82ba-4147-ae14-53eb688c63a3
2221e49f-8f32-4e16-b6dd-5996a26a03ec
aeolus-image status --providerimage
1c1ed817-cb32-466f-abd3-f227cfe3e0f5
ERROR: ProviderImageStatusNotFound => Could not find status for
ProviderImage 1c1ed817-cb32-466f-abd3-f227cfe3e0f5
---
lib/aeolus_image/model/factory/provider_image.rb | 7 ++++++-
lib/aeolus_image/model/factory/target_image.rb | 7 ++++++-
2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/lib/aeolus_image/model/factory/provider_image.rb
b/lib/aeolus_image/model/factory/provider_image.rb
index dec34d9..1f61f65 100644
--- a/lib/aeolus_image/model/factory/provider_image.rb
+++ b/lib/aeolus_image/model/factory/provider_image.rb
@@ -4,7 +4,12 @@ module Aeolus
class ProviderImage < Base
def self.status(id)
begin
- Aeolus::Image::Factory::Builder.find(id).status
+ builder = Aeolus::Image::Factory::Builder.find(id)
+ if builder.operation == "push"
+ builder.status
+ else
+ nil
+ end
rescue ActiveResource::ResourceNotFound
nil
end
diff --git a/lib/aeolus_image/model/factory/target_image.rb
b/lib/aeolus_image/model/factory/target_image.rb
index bda78c7..81b118e 100644
--- a/lib/aeolus_image/model/factory/target_image.rb
+++ b/lib/aeolus_image/model/factory/target_image.rb
@@ -6,7 +6,12 @@ module Aeolus
def self.status(id)
begin
- Aeolus::Image::Factory::Builder.find(id).status
+ builder = Aeolus::Image::Factory::Builder.find(id)
+ if builder.operation == "build"
+ builder.status
+ else
+ nil
+ end
rescue ActiveResource::ResourceNotFound
nil
end
--
1.7.6.4