Merge lp:~themue/juju-core/050-prepare-openstack into lp:~go-bot/juju-core/trunk
Proposed by
Frank Mueller
Status: | Rejected |
---|---|
Rejected by: | William Reade |
Proposed branch: | lp:~themue/juju-core/050-prepare-openstack |
Merge into: | lp:~go-bot/juju-core/trunk |
Diff against target: |
68 lines (+50/-1) 2 files modified
provider/openstack/config_test.go (+32/-0) provider/openstack/provider.go (+18/-1) |
To merge this branch: | bzr merge lp:~themue/juju-core/050-prepare-openstack |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Juju Engineering | Pending | ||
Review via email: mp+188883@code.launchpad.net |
Description of the change
openstack: implemented prepare of configuration
Second CL regarding the implementation of Environ.Prepare()
of the different providers.
To post a comment you must log in.
Unmerged revisions
- 1929. By Frank Mueller
-
merged trunk
- 1928. By Frank Mueller
-
openstack: implemented prepare
Reviewers: mp+188883_ code.launchpad. net,
Message:
Please take a look.
Description:
openstack: implemented prepare of configuration
Second CL regarding the implementation of Environ.Prepare()
of the different providers.
https:/ /code.launchpad .net/~themue/ juju-core/ 050-prepare- openstack/ +merge/ 188883
(do not edit description out of merge proposal)
Please review this at https:/ /codereview. appspot. com/14291043/
Affected files (+52, -1 lines): openstack/ config_ test.go openstack/ provider. go
A [revision details]
M provider/
M provider/
Index: [revision details] 20131002161148- 7a4twmj22x7jxu0 p
=== added file '[revision details]'
--- [revision details] 2012-01-01 00:00:00 +0000
+++ [revision details] 2012-01-01 00:00:00 +0000
@@ -0,0 +1,2 @@
+Old revision: tarmac-
+New revision: <email address hidden>
Index: provider/ openstack/ config_ test.go openstack/ config_ test.go' openstack/ config_ test.go 2013-09-30 13:39:24 +0000 openstack/ config_ test.go 2013-10-02 16:25:18 +0000 stripped, gc.Matches, expected) ntials( ) FakeConfig( ).Merge( testing. Attrs{ New(config. NoDefaults, attrs) Provider( cfg.Type( )) ecfg.controlBuc ket(), gc.Matches, "juju-[ a-f0-9] {32}") FakeConfig( ).Merge( testing. Attrs{ New(config. NoDefaults, attrs) Provider( cfg.Type( )) ecfg.controlBuc ket(), gc.Matches, "juju-[ a-f0-9] {32}")
=== modified file 'provider/
--- provider/
+++ provider/
@@ -507,3 +507,35 @@
c.Assert(
}
}
+
+func (s *ConfigSuite) TestPrepare(c *gc.C) {
+ s.setupEnvCrede
+
+ // No value for control bucket.
+ attrs := testing.
+ "type": "openstack",
+ })
+ cfg, err := config.
+ c.Assert(err, gc.IsNil)
+ p, err := environs.
+ c.Assert(err, gc.IsNil)
+ e, err := p.Prepare(cfg)
+ c.Assert(err, gc.IsNil)
+ ecfg := e.(*environ).ecfg()
+ c.Assert(
+
+ // Wrong type of control bucket value.
+ attrs = testing.
+ "type": "openstack",
+ "control-bucket": 1234,
+ })
+ cfg, err = config.
+ c.Assert(err, gc.IsNil)
+ p, err = environs.
+ c.Assert(err, gc.IsNil)
+ e, err = p.Prepare(cfg)
+ c.Assert(err, gc.IsNil)
+ ecfg = e.(*environ).ecfg()
+ c.Assert(
+
+}
Index: provider/ openstack/ provider. go openstack/ provider. go' openstack/ provider. go 2013-10-02 13:01:10 +0000 openstack/ provider. go 2013-10-02 16:25:18 +0000
=== modified file 'provider/
--- provider/
+++ provider/
@@ -124,7 +124,24 @@
}
func (p environProvider) Prepare(cfg *config.Config) (environs.Environ, Infof(" preparing environment %q", cfg.Name()) control- bucket" ].(string) Errorf( "error generating random id: %v", err)) control- bucket" ] = fmt.Sprintf( "juju-% x", uuid.Raw())
error) {
- // TODO prepare environment
+ logger.
+ attrs := cfg.AllAttrs()
+
+ // Check control bucket.
+ controlBucket, ok := attrs["
+ if !ok || controlBucket == "" {
+ uuid, err := utils.NewUUID()
+ if err != nil {
+ panic(fmt.
+ }
+ attrs["
+ }
+
+ // Apply changes.
+ cfg, err := cfg.Apply(attrs)
+ if err != nil {
+ return nil, err
+ }
return p.Open(cfg)
}