         (ec2 stop-instances  (instance-id uuid))
         (wait-for-status this "stopped" {:timeout [2 :minute]}))
   (status [this] 
-          (-> (ec2 describe-instances (instance-id-filter (instance-id uuid)))
-              first :instances first :state :name
-              ))) 
+          (instance-desc endpoint uuid :state :name))) 
 
 (defmethod translate :aws [{:keys [aws machine]}] 
   [(aws :endpoint) (dissoc aws :endpoint) (UUID/randomUUID)])

  Vm
  (create [this] 
          (debug "creating" uuid)
          (swap! ids assoc uuid (-> (ec2 run-instances conf) :instances first :id)) 
          this)
  (delete [this]
          (debug "deleting" uuid)
          (ec2 terminate-instances (instance-id uuid))
          (wait-for-status this "terminated" {:timeout [5 :minute]}) 
          (swap! ids dissoc uuid))
  (start [this]
         (debug "starting" uuid)
         (ec2 start-instances (instance-id uuid))
         (wait-for-status this "running" {:timeout [5 :minute]}))
  (stop [this]

  (use 'celestial.fixtures)
  (def m (.create (vconstruct celestial.fixtures/redis-ec2-spec))) 
  (.start m)

  (-> (ec2/describe-images (creds) (ec2/image-id-filter "ami-64636a10"))
      first :root-device-type  
      )

  (-> (ec2/describe-images (creds) (ec2/image-id-filter "ami-5a60692e"))
      first :root-device-type  
      )

  (let [endpoint "ec2.eu-west-1.amazonaws.com" uuid (:uuid m)]
    (wait-for-attach endpoint (:uuid m) {:timeout [1 :minute]}) )


  (.status m) 
  (.stop m) 
  (.delete m)

  (wait-for-status m "stopped") 
  (parse-time-unit [1 :minute])
  (wait-for-status m "running" {:timeout [1 :minute]}) 
  ) 
