Upgraded lxd today and I'm now unable to bootstrap the lxd provider. I suspect some changes in their API.
Platform: Ubuntu 14.04 amd64
Juju: built from source (recent master, 1c3373611a025791e28c191dca59eacd97a4b03d)
LXD: installed from ppa:ubuntu-lxc/lxd-stable
ii lxd 2.0.0~beta3-0ubuntu1~ubuntu14.04.1~ppa1 amd64 Container hypervisor based on LXC - daemon
ii lxd-client 2.0.0~beta3-0ubuntu1~ubuntu14.04.1~ppa1 amd64 Container hypervisor based on LXC - client
ii lxd-tools 2.0.0~beta3-0ubuntu1~ubuntu14.04.1~ppa1 amd64 Container hypervisor based on LXC - extra tools
---
$ juju bootstrap --upload-tools --verbose
Bootstrapping model "lxd"
Starting new instance for initial controller
Launching instance
Bootstrap failed, destroying model
ERROR failed to bootstrap model: cannot start bootstrap instance: can't get info for image 'ubuntu-trusty': json: cannot unmarshal string into Go value
of type int64
$ juju bootstrap --upload-tools --debug
2016-02-19 00:00:02 INFO juju.cmd supercommand.go:59 running juju [2.0-alpha2 gc go1.5.2]
2016-02-19 00:00:04 DEBUG juju.container.lxd.lxdclient client.go:53 loading LXD client config from "/home/cmars/.config/lxc/juju-lxd"
2016-02-19 00:00:04 DEBUG juju.container.lxd.lxdclient client.go:64 using LXD remote "local"
2016-02-19 00:00:04 DEBUG juju.container.lxd.lxdclient config.go:164 initializing config dir "/home/cmars/.config/lxc/juju-lxd"
2016-02-19 00:00:04 DEBUG juju.container.lxd.lxdclient config.go:207 writing config file "/home/cmars/.config/lxc/juju-lxd/config.yml"
2016-02-19 00:00:04 DEBUG juju.container.lxd.lxdclient config.go:257 writing cert PEM file "/home/cmars/.config/lxc/juju-lxd/client.crt"
2016-02-19 00:00:04 DEBUG juju.container.lxd.lxdclient config.go:273 writing key PEM file "/home/cmars/.config/lxc/juju-lxd/client.key"
2016-02-19 00:00:04 DEBUG juju.container.lxd.lxdclient client.go:53 loading LXD client config from "/home/cmars/.config/lxc/juju-lxd"
2016-02-19 00:00:04 DEBUG juju.container.lxd.lxdclient client.go:64 using LXD remote "juju-remote"
2016-02-19 00:00:04 DEBUG juju.environs.configstore disk.go:326 writing cache file
2016-02-19 00:00:04 INFO juju.cmd.juju bootstrap.go:292 combined bootstrap constraints:
2016-02-19 00:00:04 INFO juju.network network.go:248 setting prefer-ipv6 to false
2016-02-19 00:00:04 INFO cmd cmd.go:129 Bootstrapping model "lxd"
2016-02-19 00:00:04 DEBUG juju.environs.bootstrap bootstrap.go:137 model "lxd" supports service/machine networks: false
2016-02-19 00:00:04 DEBUG juju.environs.bootstrap bootstrap.go:139 network management by juju enabled: true
2016-02-19 00:00:04 INFO cmd cmd.go:129 Starting new instance for initial controller
Launching instance
2016-02-19 00:00:04 DEBUG juju.provider.lxd environ_broker.go:47 StartInstance: "0", trusty
2016-02-19 00:00:04 DEBUG juju.provider.lxd environ_broker.go:73 tools: &tools.Tools{Version:version.Binary{Number:version.Number{Major:2, Minor:0, Tag
:"alpha", Patch:2, Build:1}, Series:"trusty", Arch:"amd64"}, URL:"", SHA256:"", Size:0}
2016-02-19 00:00:04 DEBUG juju.cloudconfig.instancecfg instancecfg.go:545 Setting numa ctl preference to false
2016-02-19 00:00:04 DEBUG juju.service discovery.go:59 discovered init system "upstart" from series "trusty"
2016-02-19 00:00:04 DEBUG juju.provider.lxd environ_broker.go:145 LXD user data; 1171 bytes
2016-02-19 00:00:04 INFO juju.provider.lxd environ_broker.go:129 starting instance "juju-091ab62e-0da6-4288-880b-55342c0107a1-machine-0" (image "ubuntu
-trusty")...
2016-02-19 00:00:05 DEBUG juju.cmd.juju common.go:88 Destroying model.
2016-02-19 00:00:05 INFO cmd cmd.go:129 Bootstrap failed, destroying model
2016-02-19 00:00:05 INFO juju.provider.common destroy.go:22 destroying model "lxd"
2016-02-19 00:00:05 INFO juju.provider.common destroy.go:33 destroying instances
2016-02-19 00:00:05 INFO juju.provider.common destroy.go:53 destroying storage
2016-02-19 00:00:05 ERROR cmd supercommand.go:448 failed to bootstrap model: cannot start bootstrap instance: can't get info for image 'ubuntu-trusty':
json: cannot unmarshal string into Go value of type int64
Also confirmed this on latest xenial server w/juju master & 2.0~alpha2 compiled from source. xenial also currently installs lxd 2.0.0~beta3. Looks like this release of LXD has introduced some API changes that are incompatible with Juju's LXD provider.