func (s *bootstrapSuite) setupBootstrapSpecificVersion(c *gc.C, clientMajor, clientMinor int, toolsVersion *version.Number) (error, int, version.Number) { currentVersion := version.Current currentVersion.Major = clientMajor currentVersion.Minor = clientMinor currentVersion.Tag = "" s.PatchValue(&version.Current, currentVersion) s.PatchValue(&series.HostSeries, func() string { return "trusty" }) s.PatchValue(&arch.HostArch, func() string { return arch.AMD64 }) env := newEnviron("foo", useDefaultKeys, nil) s.setDummyStorage(c, env) envtools.RegisterToolsDataSourceFunc("local storage", func(environs.Environ) (simplestreams.DataSource, error) { return storage.NewStorageSimpleStreamsDataSource("test datasource", env.storage, "tools", simplestreams.CUSTOM_CLOUD_DATA, false), nil }) defer envtools.UnregisterToolsDataSourceFunc("local storage") toolsBinaries := []version.Binary{ version.MustParseBinary("10.11.12-trusty-amd64"), version.MustParseBinary("10.11.13-trusty-amd64"), version.MustParseBinary("10.11-beta1-trusty-amd64"), } stream := "released" if toolsVersion != nil && toolsVersion.Tag != "" { stream = "devel" currentVersion.Tag = toolsVersion.Tag } _, err := envtesting.UploadFakeToolsVersions(env.storage, stream, stream, toolsBinaries...) c.Assert(err, jc.ErrorIsNil) err = bootstrap.Bootstrap(envtesting.BootstrapContext(c), env, bootstrap.BootstrapParams{ AgentVersion: toolsVersion, }) vers, _ := env.cfg.AgentVersion() return err, env.bootstrapCount, vers }
func (s *bootstrapSuite) setupBootstrapSpecificVersion( c *gc.C, clientMajor, clientMinor int, toolsVersion *version.Number, ) (error, int, version.Number) { currentVersion := version.Current currentVersion.Major = clientMajor currentVersion.Minor = clientMinor currentVersion.Series = "trusty" currentVersion.Arch = "amd64" s.PatchValue(&version.Current, currentVersion) env := newEnviron("foo", useDefaultKeys, nil) s.setDummyStorage(c, env) envtools.RegisterToolsDataSourceFunc("local storage", func(environs.Environ) (simplestreams.DataSource, error) { return storage.NewStorageSimpleStreamsDataSource("test datasource", env.storage, "tools"), nil }) defer envtools.UnregisterToolsDataSourceFunc("local storage") toolsBinaries := []version.Binary{ version.MustParseBinary("10.11.12-trusty-amd64"), version.MustParseBinary("10.11.13-trusty-amd64"), } _, err := envtesting.UploadFakeToolsVersions(env.storage, "released", "released", toolsBinaries...) c.Assert(err, jc.ErrorIsNil) err = bootstrap.Bootstrap(envtesting.BootstrapContext(c), env, bootstrap.BootstrapParams{ AgentVersion: toolsVersion, }) vers, _ := env.cfg.AgentVersion() return err, env.bootstrapCount, vers }
func (s *bootstrapSuite) setupBootstrapSpecificVersion(c *gc.C, clientMajor, clientMinor int, toolsVersion *version.Number) (error, int, version.Number) { currentVersion := jujuversion.Current currentVersion.Major = clientMajor currentVersion.Minor = clientMinor currentVersion.Tag = "" s.PatchValue(&jujuversion.Current, currentVersion) s.PatchValue(&series.HostSeries, func() string { return "trusty" }) s.PatchValue(&arch.HostArch, func() string { return arch.AMD64 }) env := newEnviron("foo", useDefaultKeys, nil) s.setDummyStorage(c, env) envtools.RegisterToolsDataSourceFunc("local storage", func(environs.Environ) (simplestreams.DataSource, error) { return storage.NewStorageSimpleStreamsDataSource("test datasource", env.storage, "tools", simplestreams.CUSTOM_CLOUD_DATA, false), nil }) defer envtools.UnregisterToolsDataSourceFunc("local storage") toolsBinaries := []version.Binary{ version.MustParseBinary("10.11.12-trusty-amd64"), version.MustParseBinary("10.11.13-trusty-amd64"), version.MustParseBinary("10.11-beta1-trusty-amd64"), } stream := "released" if toolsVersion != nil && toolsVersion.Tag != "" { stream = "devel" currentVersion.Tag = toolsVersion.Tag } _, err := envtesting.UploadFakeToolsVersions(env.storage, stream, stream, toolsBinaries...) c.Assert(err, jc.ErrorIsNil) err = bootstrap.Bootstrap(envtesting.BootstrapContext(c), env, bootstrap.BootstrapParams{ ControllerConfig: coretesting.FakeControllerConfig(), AdminSecret: "admin-secret", CAPrivateKey: coretesting.CAKey, AgentVersion: toolsVersion, BuildAgentTarball: func(build bool, ver *version.Number, _ string) (*sync.BuiltAgent, error) { c.Logf("BuildAgentTarball version %s", ver) c.Assert(build, jc.IsFalse) return &sync.BuiltAgent{Dir: c.MkDir()}, nil }, }) vers, _ := env.cfg.AgentVersion() return err, env.bootstrapCount, vers }