Merge lp://staging/~fwereade/juju-core/environs-rework-instance-launch into lp://staging/~juju/juju-core/trunk
Status: | Work in progress |
---|---|
Proposed branch: | lp://staging/~fwereade/juju-core/environs-rework-instance-launch |
Merge into: | lp://staging/~juju/juju-core/trunk |
Prerequisite: | lp://staging/~fwereade/juju-core/config-default-agent-version |
Diff against target: |
1198 lines (+413/-330) 12 files modified
environs/bootstrap.go (+194/-40) environs/cloudinit/cloudinit.go (+0/-6) environs/config.go (+0/-22) environs/ec2/ec2.go (+42/-139) environs/ec2/image.go (+12/-3) environs/ec2/live_test.go (+9/-10) environs/ec2/local_test.go (+2/-2) environs/instance.go (+55/-0) environs/interface.go (+24/-27) environs/jujutest/livetests.go (+33/-35) environs/jujutest/tests.go (+37/-24) worker/provisioner/provisioner.go (+5/-22) |
To merge this branch: | bzr merge lp://staging/~fwereade/juju-core/environs-rework-instance-launch |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
The Go Language Gophers | Pending | ||
Review via email: mp+150286@code.staging.launchpad.net |
Description of the change
environs: rework instance creation
Bootstrap methods, and StartInstance-
gradually-diverging non-provider-
but the worst abuses have been factored out into environs.Bootstrap and
environs.
Unmerged revisions
- 929. By William Reade
-
fix ec2 to work with new Environ interface
- 928. By William Reade
-
AgentVersion now defaults to the current version
- 927. By William Reade
-
move agent-relevant tools code into environs/agent
- 926. By William Reade
-
add arch constraint
- 925. By William Reade
-
test machines that will be used with environs now specify realistic series
- 924. By Dave Cheney
-
version: update development version to 1.9.10
Also, gofmt
- 923. By Frank Mueller
-
local: add storage
Added environ.Storage implementation using the local
storage backend. The tests so far are a copy from
environs/jujutest to check if the behavior is adequate.R=dimitern, fwereade
CC=
https://codereview. appspot. com/7346052 - 922. By Dimiter Naydenov
-
uniter: WantAllRelation
sEvents( ) filter This is the first CL in preparation for the
implementation of upgrade-charm. Here, we'll
prepare the Uniter to handle upgrades better,
by restarting the relations watcher in the
filter, when requested with WantAllRelationsEvents( ). R=fwereade, TheMue
CC=
https://codereview. appspot. com/7373046 - 921. By Frank Mueller
-
local: added storage backend
Added a small web server acting as storage backend.
R=fwereade, dimitern
CC=
https://codereview. appspot. com/7303097 - 920. By Brad Crittenden
-
Refactor guts of cmd/juju/get/Run to statecmd.
This is the first of two branches to provide API support for 'juju get'. This
one does the preliminary work of moving the common code to statecmd. The next
branch will add support in client and apiserver.Did some drive-by changes including typo fixes that were visible in output and
added some content to the README.R=dfc, jameinel, dimitern, fwereade
CC=
https://codereview. appspot. com/7401043
Looks very good so far. So StartInstance is gone, LaunchInstance is the
new thing?
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ bootstrap. go bootstrap. go (right):
File environs/
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ bootstrap. go#newcode18 bootstrap. go:18: // BootstrapParams contains the information
environs/
required to start a new
I like this!
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ bootstrap. go#newcode97 bootstrap. go:97: if err2 := e.StopInstances (insts) ; err2 != nil
environs/
{
Nice to have err2, but I've been told repeatedly reusing the same err in
nested ifs is OK :)
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ ec2/ec2. go
File environs/ec2/ec2.go (right):
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ ec2/ec2. go#newcode233 ec2/ec2. go:233: func (e *environ) IsBootstrapped() (bool,
environs/
error) {
We should fix openstack and others eventually (probably in a follow-up
though, unless the build breaks, which is inevitable with interface
changes).
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ ec2/ec2. go#newcode310 ec2/ec2. go:310: func (e *environ) GetInstanceSpec (series InstanceSpec, error) {
environs/
string, cons state.Constraints) (environs.
Comment?
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ ec2/ec2. go#newcode344 ec2/ec2. go:344: func (e *environ) LaunchInstance(spec InstanceSpec, mcfg *cloudinit. MachineConfig)
environs/
environs.
(environs.Instance, error) {
Comment?
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ interface. go interface. go (right):
File environs/
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ interface. go#newcode148 interface. go:148: IsBootstrapped() (bool, error)
environs/
Good to have this exposed.
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ jujutest/ livetests. go jujutest/ livetests. go (right):
File environs/
https:/ /codereview. appspot. com/7394048/ diff/2001/ environs/ jujutest/ livetests. go#newcode26 jujutest/ livetests. go:26: func StartInstance(e
environs/
environs.Environ, machineId string) (environs.Instance, error) {
Nice! About time to cut on the long list of mostly unused args.
https:/ /codereview. appspot. com/7394048/