amazonica icon indicating copy to clipboard operation
amazonica copied to clipboard

Waiters are difficult to get to

Open joekiller opened this issue 7 years ago • 1 comments

It would be nice if waiters were a little more easily exposed. It took me a while to tease it out but for CloudFormationWaiters I had to do the following:

(def client (AmazonCloudFormationClientBuilder/defaultClient))

(defn wait-complete [stack-name]
  (let [waiter (.stackCreateComplete (.waiters client))]
    (.run waiter (WaiterParameters. (let [request (DescribeStacksRequest.)]
                                      (.setStackName request stack-name)
                                      request)))))

(defn wait-delete [stack-name]
  (let [waiter (.stackDeleteComplete (.waiters client))]
    (.run waiter (WaiterParameters. (let [request (DescribeStacksRequest.)]
                                      (.setStackName request stack-name)
                                      request)))))

Other services that use waiters: appstream, autoscaling, cloudfront, cloudwatch, codedeploy, dynamodbv2, ec2, ecs, elasticache, elasticloadbalancing, elasticmapreduce, elastictranscoder, glacier, identitymanagement, kinesis, machinelearning, opsworks, rds, redshift, route53, s3, simplemail,

joekiller avatar Mar 10 '17 21:03 joekiller

I used a similar code, but instead of the defaultClient above, I used:

(amazonica.core/candidate-client com.amazonaws.services.rds.AmazonRDSClient {})

This would be awesome to get added to the library.

asrail avatar May 23 '19 03:05 asrail