juju bootstrap fails with openstack provider (failed unmarshaling the response body)

Bug #1209003 reported by Francois Deppierraz
32
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Go OpenStack Exchange
Fix Released
High
sodre
juju-core
Fix Released
High
Ian Booth

Bug Description

Running juju-core version 1.13.0-1~1594~raring1 which connects to a local openstack grizzly environment.

francois@claw: juju bootstrap -v
2013-08-06 21:25:33 INFO juju provider.go:121 environs/openstack: opening environment "openstack"
2013-08-06 21:25:33 INFO juju tools.go:25 environs: reading tools with major version 1
2013-08-06 21:25:33 INFO juju tools.go:29 environs: falling back to public bucket
2013-08-06 21:25:34 INFO juju provider.go:121 environs/openstack: opening environment "openstack"
2013-08-06 21:25:34 INFO juju.environs.sync sync.go:69 listing available tools
listing available tools
2013-08-06 21:25:34 INFO juju.environs.sync sync.go:82 found 6 tools
found 6 tools
2013-08-06 21:25:34 INFO juju.environs.sync sync.go:86 found 6 recent tools (version 1.10.0)
found 6 recent tools (version 1.10.0)
2013-08-06 21:25:34 INFO juju.environs.sync sync.go:92 listing target bucket
listing target bucket
2013-08-06 21:25:35 INFO juju.environs.sync sync.go:118 found 0 tools in target; 6 tools to be copied
found 0 tools in target; 6 tools to be copied
2013-08-06 21:25:35 INFO juju.environs.sync sync.go:138 copying 1.10.0-precise-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-precise-amd64.tgz
copying 1.10.0-precise-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-precise-amd64.tgz
2013-08-06 21:25:35 INFO juju.environs.sync sync.go:152 copying tools/juju-1.10.0-precise-amd64.tgz
copying tools/juju-1.10.0-precise-amd64.tgz
2013-08-06 21:25:39 INFO juju.environs.sync sync.go:165 downloaded tools/juju-1.10.0-precise-amd64.tgz (2205kB), uploading
downloaded tools/juju-1.10.0-precise-amd64.tgz (2205kB), uploading
2013-08-06 21:25:39 INFO juju.environs.sync sync.go:166 download 2205kB, uploading
download 2205kB, uploading
2013-08-06 21:25:41 INFO juju.environs.sync sync.go:138 copying 1.10.0-precise-i386 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-precise-i386.tgz
copying 1.10.0-precise-i386 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-precise-i386.tgz
2013-08-06 21:25:41 INFO juju.environs.sync sync.go:152 copying tools/juju-1.10.0-precise-i386.tgz
copying tools/juju-1.10.0-precise-i386.tgz
2013-08-06 21:25:46 INFO juju.environs.sync sync.go:165 downloaded tools/juju-1.10.0-precise-i386.tgz (2306kB), uploading
downloaded tools/juju-1.10.0-precise-i386.tgz (2306kB), uploading
2013-08-06 21:25:46 INFO juju.environs.sync sync.go:166 download 2306kB, uploading
download 2306kB, uploading
2013-08-06 21:25:47 INFO juju.environs.sync sync.go:138 copying 1.10.0-quantal-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-quantal-amd64.tgz
copying 1.10.0-quantal-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-quantal-amd64.tgz
2013-08-06 21:25:47 INFO juju.environs.sync sync.go:152 copying tools/juju-1.10.0-quantal-amd64.tgz
copying tools/juju-1.10.0-quantal-amd64.tgz
2013-08-06 21:25:50 INFO juju.environs.sync sync.go:165 downloaded tools/juju-1.10.0-quantal-amd64.tgz (2209kB), uploading
downloaded tools/juju-1.10.0-quantal-amd64.tgz (2209kB), uploading
2013-08-06 21:25:50 INFO juju.environs.sync sync.go:166 download 2209kB, uploading
download 2209kB, uploading
2013-08-06 21:25:51 INFO juju.environs.sync sync.go:138 copying 1.10.0-quantal-i386 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-quantal-i386.tgz
copying 1.10.0-quantal-i386 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-quantal-i386.tgz
2013-08-06 21:25:51 INFO juju.environs.sync sync.go:152 copying tools/juju-1.10.0-quantal-i386.tgz
copying tools/juju-1.10.0-quantal-i386.tgz
2013-08-06 21:25:54 INFO juju.environs.sync sync.go:165 downloaded tools/juju-1.10.0-quantal-i386.tgz (2311kB), uploading
downloaded tools/juju-1.10.0-quantal-i386.tgz (2311kB), uploading
2013-08-06 21:25:54 INFO juju.environs.sync sync.go:166 download 2311kB, uploading
download 2311kB, uploading
2013-08-06 21:25:55 INFO juju.environs.sync sync.go:138 copying 1.10.0-raring-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-raring-amd64.tgz
copying 1.10.0-raring-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-raring-amd64.tgz
2013-08-06 21:25:55 INFO juju.environs.sync sync.go:152 copying tools/juju-1.10.0-raring-amd64.tgz
copying tools/juju-1.10.0-raring-amd64.tgz
2013-08-06 21:25:58 INFO juju.environs.sync sync.go:165 downloaded tools/juju-1.10.0-raring-amd64.tgz (2208kB), uploading
downloaded tools/juju-1.10.0-raring-amd64.tgz (2208kB), uploading
2013-08-06 21:25:58 INFO juju.environs.sync sync.go:166 download 2208kB, uploading
download 2208kB, uploading
2013-08-06 21:25:59 INFO juju.environs.sync sync.go:138 copying 1.10.0-raring-i386 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-raring-i386.tgz
copying 1.10.0-raring-i386 from https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-raring-i386.tgz
2013-08-06 21:25:59 INFO juju.environs.sync sync.go:152 copying tools/juju-1.10.0-raring-i386.tgz
copying tools/juju-1.10.0-raring-i386.tgz
2013-08-06 21:26:02 INFO juju.environs.sync sync.go:165 downloaded tools/juju-1.10.0-raring-i386.tgz (2312kB), uploading
downloaded tools/juju-1.10.0-raring-i386.tgz (2312kB), uploading
2013-08-06 21:26:02 INFO juju.environs.sync sync.go:166 download 2312kB, uploading
download 2312kB, uploading
2013-08-06 21:26:03 INFO juju.environs.sync sync.go:123 copied 6 tools
copied 6 tools
2013-08-06 21:26:03 INFO juju tools.go:25 environs: reading tools with major version 1
2013-08-06 21:26:03 ERROR juju supercommand.go:274 command failed: failed to list contents of container: juju-1e759fe58485c94142c7d9e3bac61667
caused by: failed unmarshaling the response body: tools/juju-1.10.0-precise-amd64.tgz
tools/juju-1.10.0-precise-i386.tgz
tools/juju-1.10.0-quantal-amd64.tgz
tools/juju-1.10.0-quantal-i386.tgz
tools/juju-1.10.0-raring-amd64.tgz
tools/juju-1.10.0-raring-i386.tgz
caused by: invalid character 'o' in literal true (expecting 'r')
error: failed to list contents of container: juju-1e759fe58485c94142c7d9e3bac61667
caused by: failed unmarshaling the response body: tools/juju-1.10.0-precise-amd64.tgz
tools/juju-1.10.0-precise-i386.tgz
tools/juju-1.10.0-quantal-amd64.tgz
tools/juju-1.10.0-quantal-i386.tgz
tools/juju-1.10.0-raring-amd64.tgz
tools/juju-1.10.0-raring-i386.tgz
caused by: invalid character 'o' in literal true (expecting 'r')
francois@claw: ~$

Related branches

Revision history for this message
John A Meinel (jameinel) wrote :

That looks like we are making a request and are expecting to get back a JSON formatted response, but instead we are getting back just a list of the contents.

Revision history for this message
Francois Deppierraz (francois-ctrlaltdel) wrote :

Yes, indeed, it seems that the goose library fails to explicitely ask for JSON when it lists a swift container.

The following hack works:

~/go/src/launchpad.net/goose$ bzr diff
=== modified file 'swift/swift.go'
--- swift/swift.go 2013-02-11 05:01:34 +0000
+++ swift/swift.go 2013-08-15 15:12:51 +0000
@@ -134,6 +134,7 @@
  params.Add("prefix", prefix)
  params.Add("delimiter", delim)
  params.Add("marker", marker)
+ params.Add("format", "json")
  if limit > 0 {
   params.Add("limit", fmt.Sprintf("%d", limit))
  }

~/go/src/launchpad.net/goose$

Revision history for this message
Dave Cheney (dave-cheney) wrote : Re: [Bug 1209003] Re: juju bootstrap fails with openstack provider (failed unmarshaling the response body)
Download full text (8.0 KiB)

Sounds like a useful change to make irrespective of this fix. At least this
way we can say to the swift api authors we are following the rules.

On Fri, Aug 16, 2013 at 1:23 AM, Francois Deppierraz <
<email address hidden>> wrote:

> Yes, indeed, it seems that the goose library fails to explicitely ask
> for JSON when it lists a swift container.
>
> The following hack works:
>
> ~/go/src/launchpad.net/goose$ bzr diff
> === modified file 'swift/swift.go'
> --- swift/swift.go 2013-02-11 05:01:34 +0000
> +++ swift/swift.go 2013-08-15 15:12:51 +0000
> @@ -134,6 +134,7 @@
> params.Add("prefix", prefix)
> params.Add("delimiter", delim)
> params.Add("marker", marker)
> + params.Add("format", "json")
> if limit > 0 {
> params.Add("limit", fmt.Sprintf("%d", limit))
> }
>
> ~/go/src/launchpad.net/goose$
>
> --
> You received this bug notification because you are subscribed to juju-
> core.
> Matching subscriptions: MOAR JUJU SPAM!
> https://bugs.launchpad.net/bugs/1209003
>
> Title:
> juju bootstrap fails with openstack provider (failed unmarshaling the
> response body)
>
> Status in Go OpenStack Exchange:
> New
> Status in juju-core:
> New
>
> Bug description:
> Running juju-core version 1.13.0-1~1594~raring1 which connects to a
> local openstack grizzly environment.
>
> francois@claw: juju bootstrap -v
> 2013-08-06 21:25:33 INFO juju provider.go:121 environs/openstack:
> opening environment "openstack"
> 2013-08-06 21:25:33 INFO juju tools.go:25 environs: reading tools with
> major version 1
> 2013-08-06 21:25:33 INFO juju tools.go:29 environs: falling back to
> public bucket
> 2013-08-06 21:25:34 INFO juju provider.go:121 environs/openstack:
> opening environment "openstack"
> 2013-08-06 21:25:34 INFO juju.environs.sync sync.go:69 listing available
> tools
> listing available tools
> 2013-08-06 21:25:34 INFO juju.environs.sync sync.go:82 found 6 tools
> found 6 tools
> 2013-08-06 21:25:34 INFO juju.environs.sync sync.go:86 found 6 recent
> tools (version 1.10.0)
> found 6 recent tools (version 1.10.0)
> 2013-08-06 21:25:34 INFO juju.environs.sync sync.go:92 listing target
> bucket
> listing target bucket
> 2013-08-06 21:25:35 INFO juju.environs.sync sync.go:118 found 0 tools in
> target; 6 tools to be copied
> found 0 tools in target; 6 tools to be copied
> 2013-08-06 21:25:35 INFO juju.environs.sync sync.go:138 copying
> 1.10.0-precise-amd64 from
> https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-precise-amd64.tgz
> copying 1.10.0-precise-amd64 from
> https://juju-dist.s3.amazonaws.com/tools/juju-1.10.0-precise-amd64.tgz
> 2013-08-06 21:25:35 INFO juju.environs.sync sync.go:152 copying
> tools/juju-1.10.0-precise-amd64.tgz
> copying tools/juju-1.10.0-precise-amd64.tgz
> 2013-08-06 21:25:39 INFO juju.environs.sync sync.go:165 downloaded
> tools/juju-1.10.0-precise-amd64.tgz (2205kB), uploading
> downloaded tools/juju-1.10.0-precise-amd64.tgz (2205kB), uploading
> 2013-08-06 21:25:39 INFO juju.environs.sync sync.go:166 download 2205kB,
> uploading
> download 2205kB, uploading
> 2013-08-06 21:25:41 INFO juju.envi...

Read more...

John A Meinel (jameinel)
Changed in goose:
importance: Undecided → High
status: New → Triaged
Revision history for this message
Matt Rae (mattrae) wrote :
Download full text (9.7 KiB)

This is happening to me in juju-core 1.14.1

ubuntu@matt-vm1:~$ juju --version
1.14.1-precise-amd64

ubuntu@matt-vm1:~$ juju -v bootstrap
2013-09-27 09:08:55 INFO juju.provider.openstack provider.go:126 opening environment "openstack"
2013-09-27 09:08:55 INFO juju.environs.tools tools.go:82 filtering tools by released version
2013-09-27 09:08:55 INFO juju.environs.tools tools.go:29 reading tools with major version 1
2013-09-27 09:08:55 INFO juju.environs.tools tools.go:37 filtering tools by series: precise
2013-09-27 09:08:57 INFO juju.environs.tools tools.go:44 falling back to public bucket
2013-09-27 09:08:58 INFO juju.environs.sync sync.go:63 listing available tools
listing available tools
2013-09-27 09:09:03 INFO juju.environs.sync sync.go:76 found 32 tools
found 32 tools
2013-09-27 09:09:03 INFO juju.environs.sync sync.go:80 found 9 recent tools (version 1.14.1)
found 9 recent tools (version 1.14.1)
2013-09-27 09:09:03 INFO juju.environs.sync sync.go:86 listing target bucket
listing target bucket
2013-09-27 09:09:04 INFO juju.environs.sync sync.go:112 found 0 tools in target; 9 tools to be copied
found 0 tools in target; 9 tools to be copied
2013-09-27 09:09:04 INFO juju.environs.sync sync.go:132 copying 1.14.1-precise-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.14.1-precise-amd64.tgz
copying 1.14.1-precise-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.14.1-precise-amd64.tgz
2013-09-27 09:09:04 INFO juju.environs.sync sync.go:146 copying tools/juju-1.14.1-precise-amd64.tgz
copying tools/juju-1.14.1-precise-amd64.tgz
2013-09-27 09:09:29 INFO juju.environs.sync sync.go:159 downloaded tools/juju-1.14.1-precise-amd64.tgz (4212kB), uploading
downloaded tools/juju-1.14.1-precise-amd64.tgz (4212kB), uploading
2013-09-27 09:09:29 INFO juju.environs.sync sync.go:160 download 4212kB, uploading
download 4212kB, uploading
2013-09-27 09:09:30 INFO juju.environs.sync sync.go:132 copying 1.14.1-precise-i386 from https://juju-dist.s3.amazonaws.com/tools/juju-1.14.1-precise-i386.tgz
copying 1.14.1-precise-i386 from https://juju-dist.s3.amazonaws.com/tools/juju-1.14.1-precise-i386.tgz
2013-09-27 09:09:30 INFO juju.environs.sync sync.go:146 copying tools/juju-1.14.1-precise-i386.tgz
copying tools/juju-1.14.1-precise-i386.tgz
2013-09-27 09:09:53 INFO juju.environs.sync sync.go:159 downloaded tools/juju-1.14.1-precise-i386.tgz (4081kB), uploading
downloaded tools/juju-1.14.1-precise-i386.tgz (4081kB), uploading
2013-09-27 09:09:53 INFO juju.environs.sync sync.go:160 download 4081kB, uploading
download 4081kB, uploading
2013-09-27 09:09:53 INFO juju.environs.sync sync.go:132 copying 1.14.1-quantal-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.14.1-quantal-amd64.tgz
copying 1.14.1-quantal-amd64 from https://juju-dist.s3.amazonaws.com/tools/juju-1.14.1-quantal-amd64.tgz
2013-09-27 09:09:53 INFO juju.environs.sync sync.go:146 copying tools/juju-1.14.1-quantal-amd64.tgz
copying tools/juju-1.14.1-quantal-amd64.tgz
2013-09-27 09:10:25 INFO juju.environs.sync sync.go:159 downloaded tools/juju-1.14.1-quantal-amd64.tgz (4212kB), uploading
downloaded tools/juju-1.14.1-quantal-amd64.tgz (4212kB), uploading
2013-09-27 09:10:25 IN...

Read more...

Curtis Hovey (sinzui)
Changed in juju-core:
status: New → Triaged
importance: Undecided → High
tags: added: openstack
Curtis Hovey (sinzui)
Changed in goose:
status: Triaged → In Progress
assignee: nobody → sodre (psodre)
Ian Booth (wallyworld)
Changed in goose:
status: In Progress → Fix Committed
Changed in juju-core:
assignee: nobody → Ian Booth (wallyworld)
milestone: none → 1.17.0
Ian Booth (wallyworld)
Changed in juju-core:
status: Triaged → In Progress
Ian Booth (wallyworld)
Changed in juju-core:
status: In Progress → Fix Committed
Curtis Hovey (sinzui)
tags: added: openstack-provider
removed: openstack
Curtis Hovey (sinzui)
Changed in goose:
status: Fix Committed → Fix Released
Curtis Hovey (sinzui)
Changed in juju-core:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.