← Back to team overview

launchpad-dev team mailing list archive

Re: Problems updating ec2 image

 

Jonathan Lange wrote:
> Hello,
> 
> I've been trying to update the ec2 image that we use for testing in
> response to the recent changes to launchpad-developer-dependencies.
> I've been following the instructions at
> https://dev.launchpad.net/EC2Test/Image.
> 
> I had to make some changes to the image updating code in response to
> what appears to be a change in ec2-register. See
> https://code.edge.launchpad.net/~jml/launchpad/update-ec2-image/+merge/21804.

I guess you're on lucid?  ec2-register --help doesn't say a thing about
a --name argument for me.

> Even so, the image update fails:
> 
> $ ./utilities/ec2 update-image --public launchpad-ec2test117 -m
> based-on:ami-e6f6158f
> [ELIDED]
> Uploaded image.part.105
> Uploaded image.part.106
> Uploaded image.part.107
> Uploaded image.part.108
> Uploaded image.part.109
> Uploading manifest ...
> Uploaded manifest.
> Bundle upload completed.
> Executing command: ec2-register
> --private-key=/home/jml/.ec2/pk-UVCHXZRTFCUUCLXTKTL7FZVYA234ZNJN.pem
> --cert=/home/jml/.ec2/cert-UVCHXZRTFCUUCLXTKTL7FZVYA234ZNJN.pem
> --name=launchpad-ec2test117
> launchpad-ec2test117/image.manifest.xmlUnexpected error:
> java.net.SocketException: Invalid argument or cannot assign requested address

Well, I've no idea what that means, but...

> 	at java.net.PlainSocketImpl.socketConnect(Native Method)
> 	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:310)
> 	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:176)
> 	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:163)
> 	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:384)
> 	at java.net.Socket.connect(Socket.java:542)
> 	at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:570)
> 	at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:414)
> 	at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:142)
> 	at org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory.createSocket(SSLProtocolSocketFactory.java:81)
> 	at org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory.createSocket(SSLProtocolSocketFactory.java:126)
> 	at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:706)
> 	at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(MultiThreadedHttpConnectionManager.java:1321)
> 	at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:386)
> 	at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
> 	at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
> 	at org.codehaus.xfire.transport.http.CommonsHttpMessageSender.send(CommonsHttpMessageSender.java:369)
> 	at org.codehaus.xfire.transport.http.HttpChannel.sendViaClient(HttpChannel.java:123)
> 	at org.codehaus.xfire.transport.http.HttpChannel.send(HttpChannel.java:48)
> 	at org.codehaus.xfire.handler.OutMessageSender.invoke(OutMessageSender.java:26)
> 	at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
> 	at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:79)
> 	at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:114)
> 	at org.codehaus.xfire.client.Client.invoke(Client.java:336)
> 	at org.codehaus.xfire.client.XFireProxy.handleRequest(XFireProxy.java:77)
> 	at org.codehaus.xfire.client.XFireProxy.invoke(XFireProxy.java:57)
> 	at $Proxy12.registerImage(Unknown Source)
> 	at com.amazon.aes.webservices.client.Jec2.registerImage(Jec2.java:318)
> 	at com.amazon.aes.webservices.client.cmd.RegisterImage.invokeOnline(RegisterImage.java:189)
> 	at com.amazon.aes.webservices.client.cmd.BaseCmd.invoke(BaseCmd.java:742)
> 	at com.amazon.aes.webservices.client.cmd.RegisterImage.main(RegisterImage.java:233)
> Traceback (most recent call last):
>   File "/home/jml/src/launchpad/update-ec2-image/lib/devscripts/ec2test/instance.py",
> line 426, in set_up_and_run
>     retval = func(*args, **kw)
>   File "/home/jml/src/launchpad/update-ec2-image/lib/devscripts/ec2test/builtins.py",
> line 575, in update_image
>     instance.bundle(ami_name, credentials)
>   File "/home/jml/src/launchpad/update-ec2-image/lib/devscripts/ec2test/instance.py",
> line 567, in bundle
>     subprocess.check_call(cmd, env=env)
>   File "/usr/lib/python2.5/subprocess.py", line 462, in check_call
>     raise CalledProcessError(retcode, cmd)
> CalledProcessError: Command '['ec2-register',
> '--private-key=/home/jml/.ec2/pk-UVCHXZRTFCUUCLXTKTL7FZVYA234ZNJN.pem',
> '--cert=/home/jml/.ec2/cert-UVCHXZRTFCUUCLXTKTL7FZVYA234ZNJN.pem',
> '--name=launchpad-ec2test117',
> 'launchpad-ec2test117/image.manifest.xml']' returned non-zero exit
> status 1
> instance shutting-down
> 
> Note that I'm running lucid.
> 
> I don't care a great deal about getting to the heart of this. I just
> want a new image so I can land my new-zope-testing branch.

... the good news at least is that at this stage the image is built.
ec2-register is run on your machine and I guess you just need to figure
out how to run it, run it, and then update your branch above.

Cheers,
mwh



Follow ups

References