Important Juju simplestreams tools changes

Ian Booth ian.booth at
Thu Aug 1 00:48:48 UTC 2013

Hi folks

Some work has landed in juju-core trunk which adds a new simplestreams
validation tool and changes how the existing image metadata generation tool is

To avoid "polluting" the day-to-day Juju command space with more esoteric
commands that aren't really core Juju (end user) functionality, the
simplestreams metadata tools ship as a plugin. This means that the commands are
no longer listed as part of "juju help commands". But if you do "juju help
plugins" you'll see the command listed there.

The plugin is called "metadata" and has 2 sub commands:

You can do "juju help metadata" for more details. You can also get detailed help
on each sub command eg "juju help metadata validate-images".

The image generation tool already exists so I won't cover that in detail.
Instead I want to introduce the validate-images tool. This tool has 2 main purposes:

1. Checks that simplestreams image metadata is valid, can be parsed, and has
data for specified criteria (series, region, arch, cloud vendor etc)

2. Lists the image ids that juju would use when starting an instance.

The tool can be used with a normally configured Juju environment. So you can do
things like:

juju metadata validate-images
juju metadata validate-images -e myenv
juju metadata validate-images -s raring -r us-west-1

The last example is used when you might have configured precise as the default
series and want to see what would happen if you wanted a raring image in

You can also specify every required parameter individually when there is no
environment configured. Help gives more details. But the purpose is to allow the
simplestreams metadata generation process to iterate over each
region/series/provider etc and ensure that images exist before the metadata is
published. For this case, the metadata files are saved to a local directory and
the -d option is used to tell the tool where to find them.

When the Juju tools metadata comes online, another sub command will be
introduced to deal with that too.

More information about the Juju-dev mailing list