juju metadata generate-metadata clumsy to use for private clouds
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
juju-core |
Fix Released
|
High
|
Ian Booth |
Bug Description
We do have code now that will generate the index.json and imagemetadata.json files.
However, it is still hard to actually get that content into the right location on the cloud and have it actually configured correctly. It is also hard (often) to figure out what values go into what flag.
Consider things like "-n" name (which seems entirely arbitrary), and then "-r" region which we've already declared in your environment.jenv file.
We should be able to easily take all the values from an existing enviroment setting, and just have the user set what image id they want to use.
So something like:
juju generate-
-s and -a will have precise/amd64 as defaults, and the end result of the command is to have that data published into their private cloud bucket at the location that juju will look at.
Related branches
- Juju Engineering: Pending requested
-
Diff: 1144 lines (+501/-212)11 files modifiedcmd/plugins/juju-metadata/imagemetadata.go (+8/-6)
cmd/plugins/juju-metadata/imagemetadata_test.go (+18/-19)
cmd/plugins/juju-metadata/validateimagemetadata_test.go (+4/-6)
environs/imagemetadata/generate.go (+84/-30)
environs/imagemetadata/generate_test.go (+173/-7)
environs/imagemetadata/marshal.go (+16/-22)
environs/imagemetadata/marshal_test.go (+9/-6)
environs/imagemetadata/simplestreams.go (+28/-19)
environs/imagemetadata/simplestreams_test.go (+138/-84)
environs/imagemetadata/validation_test.go (+6/-4)
environs/simplestreams/simplestreams.go (+17/-9)
- Juju Engineering: Pending requested
-
Diff: 677 lines (+406/-137)12 files modifiedcmd/plugins/juju-metadata/imagemetadata.go (+6/-1)
cmd/plugins/juju-metadata/imagemetadata_test.go (+1/-1)
cmd/plugins/juju-metadata/validateimagemetadata_test.go (+6/-1)
environs/imagemetadata/generate.go (+37/-124)
environs/imagemetadata/generate_test.go (+40/-0)
environs/imagemetadata/marshal.go (+97/-0)
environs/imagemetadata/marshal_test.go (+127/-0)
environs/imagemetadata/simplestreams.go (+15/-6)
environs/imagemetadata/testing/testing.go (+70/-0)
environs/imagemetadata/validation_test.go (+4/-1)
environs/simplestreams/simplestreams.go (+2/-2)
environs/tools/marshal.go (+1/-1)
- Juju Engineering: Pending requested
-
Diff: 750 lines (+262/-148)5 files modifiedcmd/plugins/juju-metadata/imagemetadata.go (+99/-25)
cmd/plugins/juju-metadata/imagemetadata_test.go (+127/-66)
cmd/plugins/juju-metadata/validateimagemetadata_test.go (+22/-18)
environs/imagemetadata/generate.go (+9/-25)
environs/imagemetadata/validation_test.go (+5/-14)
tags: | added: cts-cloud-review |
Changed in juju-core: | |
milestone: | none → 1.17.0 |
assignee: | nobody → Ian Booth (wallyworld) |
status: | Triaged → In Progress |
importance: | Low → High |
tags: |
added: cts removed: cts-cloud-review |
tags: |
added: cts-cloud-review removed: cts |
Changed in juju-core: | |
status: | In Progress → Fix Committed |
Changed in juju-core: | |
status: | Fix Committed → Fix Released |
This command was written initially as a developer tool where it is not a problem to have fine grained parameters being required. Subsequently, other similar commands for tools metadata have been done and these do allow sensible values to be extracted from a specified environment. The new functionality from these latter commands needs to be back ported.