Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AMI waiter needs to be more verbose #126

Open
Jc2k opened this issue May 25, 2016 · 3 comments
Open

AMI waiter needs to be more verbose #126

Jc2k opened this issue May 25, 2016 · 3 comments

Comments

@Jc2k
Copy link
Member

Jc2k commented May 25, 2016

Can take longer than 10m on travis to copy an ec2 instance to an AMI, during which time the build is silent and thus it fails.

@Jc2k
Copy link
Member Author

Jc2k commented Sep 13, 2016

AMI builder (touchdown/aws/ec2/ami.py) does this:

self.plan.client.get_waiter('image_available').wait(ImageIds=[image['ImageId']])

which won't emit anything useful to console.

The rest of the waiters implement extra logic - see:

https://github.com/yaybu/touchdown/blob/master/touchdown/aws/common.py#L36

But because this is an action it can't be used here. We should probably make a waiter helper that wraps a botocore waiter and isn't tied to an Action so that the AMI waiter can use it too.

@sHtev
Copy link
Contributor

sHtev commented Oct 20, 2016

Yup have this issue on home broadband uploading lambda zips too

@Jc2k
Copy link
Member Author

Jc2k commented Oct 21, 2016

That's a different one. Ami building starts a task on AWS and then polls AWS until it's done. So it's fairly easy to inject some more verbosity there. Your issue is with an API call that is blocking in botocore. To make that verbose we'll need to pass the upload function a magic stringio/bytesio or some other fp-like adapter that emits status updates, assuming botocore streams fp-like objects in this case...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants