Skip to content

Commit 9eedb0f

Browse files
committed
Delete more old code
1 parent c5993b6 commit 9eedb0f

File tree

12 files changed

+40
-158
lines changed

12 files changed

+40
-158
lines changed

cmd/jujud/agent/machine.go

+9-10
Original file line numberDiff line numberDiff line change
@@ -90,16 +90,15 @@ var (
9090

9191
// The following are defined as variables to allow the tests to
9292
// intercept calls to the functions.
93-
useMultipleCPUs = utils.UseMultipleCPUs
94-
maybeInitiateMongoServer = peergrouper.MaybeInitiateMongoServer
95-
ensureMongoAdminUser = mongo.EnsureAdminUser
96-
modelManifolds = model.Manifolds
97-
newSingularRunner = singular.New
98-
peergrouperNew = peergrouper.New
99-
newCertificateUpdater = certupdater.NewCertificateUpdater
100-
newMetadataUpdater = imagemetadataworker.NewWorker
101-
newUpgradeMongoWorker = mongoupgrader.New
102-
reportOpenedState = func(io.Closer) {}
93+
useMultipleCPUs = utils.UseMultipleCPUs
94+
ensureMongoAdminUser = mongo.EnsureAdminUser
95+
modelManifolds = model.Manifolds
96+
newSingularRunner = singular.New
97+
peergrouperNew = peergrouper.New
98+
newCertificateUpdater = certupdater.NewCertificateUpdater
99+
newMetadataUpdater = imagemetadataworker.NewWorker
100+
newUpgradeMongoWorker = mongoupgrader.New
101+
reportOpenedState = func(io.Closer) {}
103102
)
104103

105104
// Variable to override in tests, default is true

cmd/jujud/agent/machine_test.go

+2-43
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,6 @@ func (s *commonMachineSuite) SetUpTest(c *gc.C) {
128128
})
129129

130130
s.fakeEnsureMongo = agenttesting.InstallFakeEnsureMongo(s)
131-
s.AgentSuite.PatchValue(&maybeInitiateMongoServer, s.fakeEnsureMongo.MaybeInitiateMongo)
132131
}
133132

134133
func (s *commonMachineSuite) assertChannelActive(c *gc.C, aChannel chan struct{}, intent string) {
@@ -201,7 +200,7 @@ func (s *commonMachineSuite) configureMachine(c *gc.C, machineId string, vers ve
201200
inst, md := jujutesting.AssertStartInstance(c, s.Environ, machineId)
202201
c.Assert(m.SetProvisioned(inst.Id(), agent.BootstrapNonce, md), jc.ErrorIsNil)
203202

204-
// Add an address for the tests in case the maybeInitiateMongoServer
203+
// Add an address for the tests in case the initiateMongoServer
205204
// codepath is exercised.
206205
s.setFakeMachineAddresses(c, m)
207206

@@ -1495,45 +1494,6 @@ func (s *MachineSuite) TestMachineAgentIgnoreAddressesContainer(c *gc.C) {
14951494
s.waitStopped(c, state.JobHostUnits, a, doneCh)
14961495
}
14971496

1498-
func (s *MachineSuite) TestMachineAgentUpgradeMongo(c *gc.C) {
1499-
m, agentConfig, _ := s.primeAgent(c, state.JobManageModel)
1500-
agentConfig.SetUpgradedToVersion(version.MustParse("1.18.0"))
1501-
err := agentConfig.Write()
1502-
c.Assert(err, jc.ErrorIsNil)
1503-
err = s.State.MongoSession().DB("admin").RemoveUser(m.Tag().String())
1504-
c.Assert(err, jc.ErrorIsNil)
1505-
1506-
s.fakeEnsureMongo.ServiceInstalled = true
1507-
s.fakeEnsureMongo.ReplicasetInitiated = false
1508-
1509-
s.AgentSuite.PatchValue(&ensureMongoAdminUser, func(p mongo.EnsureAdminUserParams) (bool, error) {
1510-
err := s.State.MongoSession().DB("admin").AddUser(p.User, p.Password, false)
1511-
c.Assert(err, jc.ErrorIsNil)
1512-
return true, nil
1513-
})
1514-
1515-
stateOpened := make(chan interface{}, 1)
1516-
s.AgentSuite.PatchValue(&reportOpenedState, func(st io.Closer) {
1517-
select {
1518-
case stateOpened <- st:
1519-
default:
1520-
}
1521-
})
1522-
1523-
// Start the machine agent, and wait for state to be opened.
1524-
a := s.newAgent(c, m)
1525-
done := make(chan error)
1526-
go func() { done <- a.Run(nil) }()
1527-
defer a.Stop() // in case of failure
1528-
select {
1529-
case st := <-stateOpened:
1530-
c.Assert(st, gc.NotNil)
1531-
case <-time.After(coretesting.LongWait):
1532-
c.Fatalf("state not opened")
1533-
}
1534-
s.waitStopped(c, state.JobManageModel, a, done)
1535-
}
1536-
15371497
func (s *MachineSuite) TestMachineAgentSetsPrepareRestore(c *gc.C) {
15381498
// Start the machine agent.
15391499
m, _, _ := s.primeAgent(c, state.JobHostUnits)
@@ -1745,7 +1705,6 @@ func (s *MachineSuite) TestReplicasetInitForNewController(c *gc.C) {
17451705
}
17461706

17471707
s.fakeEnsureMongo.ServiceInstalled = false
1748-
s.fakeEnsureMongo.ReplicasetInitiated = true
17491708

17501709
m, _, _ := s.primeAgent(c, state.JobManageModel)
17511710
a := s.newAgent(c, m)
@@ -1843,7 +1802,7 @@ func (s *mongoSuite) testStateWorkerDialSetsWriteMajority(c *gc.C, configureRepl
18431802
DialInfo: info,
18441803
MemberHostPort: inst.Addr(),
18451804
}
1846-
err = peergrouper.MaybeInitiateMongoServer(args)
1805+
err = peergrouper.InitiateMongoServer(args)
18471806
c.Assert(err, jc.ErrorIsNil)
18481807
expectedWMode = "majority"
18491808
} else {

cmd/jujud/agent/testing/agent.go

+14-30
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import (
88
"time"
99

1010
"github.com/juju/cmd"
11-
"github.com/juju/errors"
1211
"github.com/juju/names"
1312
"github.com/juju/replicaset"
1413
gitjujutesting "github.com/juju/testing"
@@ -45,8 +44,7 @@ type patchingSuite interface {
4544
// out replicaset.CurrentConfig and cmdutil.EnsureMongoServer.
4645
func InstallFakeEnsureMongo(suite patchingSuite) *FakeEnsureMongo {
4746
f := &FakeEnsureMongo{
48-
ServiceInstalled: true,
49-
ReplicasetInitiated: true,
47+
ServiceInstalled: true,
5048
}
5149
suite.PatchValue(&mongo.IsServiceInstalled, f.IsServiceInstalled)
5250
suite.PatchValue(&replicaset.CurrentConfig, f.CurrentConfig)
@@ -57,30 +55,26 @@ func InstallFakeEnsureMongo(suite patchingSuite) *FakeEnsureMongo {
5755
// FakeEnsureMongo provides test fakes for the functions used to
5856
// initialise MongoDB.
5957
type FakeEnsureMongo struct {
60-
EnsureCount int
61-
InitiateCount int
62-
DataDir string
63-
OplogSize int
64-
Info state.StateServingInfo
65-
InitiateParams peergrouper.InitiateMongoParams
66-
Err error
67-
ServiceInstalled bool
68-
ReplicasetInitiated bool
58+
EnsureCount int
59+
InitiateCount int
60+
DataDir string
61+
OplogSize int
62+
Info state.StateServingInfo
63+
InitiateParams peergrouper.InitiateMongoParams
64+
Err error
65+
ServiceInstalled bool
6966
}
7067

7168
func (f *FakeEnsureMongo) IsServiceInstalled() (bool, error) {
7269
return f.ServiceInstalled, nil
7370
}
7471

7572
func (f *FakeEnsureMongo) CurrentConfig(*mgo.Session) (*replicaset.Config, error) {
76-
if f.ReplicasetInitiated {
77-
// Return a dummy replicaset config that's good enough to
78-
// indicate that the replicaset is initiated.
79-
return &replicaset.Config{
80-
Members: []replicaset.Member{{}},
81-
}, nil
82-
}
83-
return nil, errors.NotFoundf("replicaset")
73+
// Return a dummy replicaset config that's good enough to
74+
// indicate that the replicaset is initiated.
75+
return &replicaset.Config{
76+
Members: []replicaset.Member{{}},
77+
}, nil
8478
}
8579

8680
func (f *FakeEnsureMongo) EnsureMongo(args mongo.EnsureServerParams) error {
@@ -98,16 +92,6 @@ func (f *FakeEnsureMongo) EnsureMongo(args mongo.EnsureServerParams) error {
9892
return f.Err
9993
}
10094

101-
func (f *FakeEnsureMongo) MaybeInitiateMongo(p peergrouper.InitiateMongoParams) error {
102-
return f.InitiateMongo(p, false)
103-
}
104-
105-
func (f *FakeEnsureMongo) InitiateMongo(p peergrouper.InitiateMongoParams, force bool) error {
106-
f.InitiateCount++
107-
f.InitiateParams = p
108-
return nil
109-
}
110-
11195
// agentSuite is a fixture to be used by agent test suites.
11296
type AgentSuite struct {
11397
oldRestartDelay time.Duration

cmd/jujud/bootstrap.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -363,7 +363,7 @@ func (c *BootstrapCommand) startMongo(addrs []network.Address, agentConfig agent
363363
return initiateMongoServer(peergrouper.InitiateMongoParams{
364364
DialInfo: dialInfo,
365365
MemberHostPort: peerHostPort,
366-
}, true)
366+
})
367367
}
368368

369369
// populateDefaultStoragePools creates the default storage pools.

cmd/jujud/bootstrap_test.go

-1
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,6 @@ func (s *BootstrapSuite) SetUpTest(c *gc.C) {
116116
s.logDir = c.MkDir()
117117
s.mongoOplogSize = "1234"
118118
s.fakeEnsureMongo = agenttesting.InstallFakeEnsureMongo(s)
119-
s.PatchValue(&initiateMongoServer, s.fakeEnsureMongo.InitiateMongo)
120119

121120
// Create fake tools.tar.gz and downloaded-tools.txt.
122121
current := version.Binary{

cmd/jujud/upgrade_mongo.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ type mongoService func() error
101101
type mongoEnsureService func(string, int, int, bool, mongo.Version, bool) error
102102
type mongoDialInfo func(mongo.Info, mongo.DialOpts) (*mgo.DialInfo, error)
103103

104-
type initiateMongoServerFunc func(peergrouper.InitiateMongoParams, bool) error
104+
type initiateMongoServerFunc func(peergrouper.InitiateMongoParams) error
105105

106106
type replicaAddFunc func(mgoSession, ...replicaset.Member) error
107107
type replicaRemoveFunc func(mgoSession, ...string) error
@@ -516,7 +516,7 @@ func (u *UpgradeMongoCommand) maybeUpgrade26to3x(dataDir string) error {
516516
err = u.initiateMongoServer(peergrouper.InitiateMongoParams{
517517
DialInfo: dialInfo,
518518
MemberHostPort: peerHostPort,
519-
}, true)
519+
})
520520
if err != nil {
521521
return errors.Annotate(err, "cannot initiate replicaset")
522522
}

cmd/jujud/upgrade_mongo_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ func (f *fakeRunCommand) mongoDialInfo(info mongo.Info, opts mongo.DialOpts) (*m
278278
f.ranCommands = append(f.ranCommands, ran)
279279
return &mgo.DialInfo{}, nil
280280
}
281-
func (f *fakeRunCommand) initiateMongoServer(args peergrouper.InitiateMongoParams, force bool) error {
281+
func (f *fakeRunCommand) initiateMongoServer(args peergrouper.InitiateMongoParams) error {
282282
ran := []string{"peergrouper.InitiateMongoServer"}
283283
f.ranCommands = append(f.ranCommands, ran)
284284
return nil

featuretests/dblog_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ func (s *debugLogDbSuite) SetUpSuite(c *gc.C) {
129129
DialInfo: info,
130130
MemberHostPort: mongod.Addr(),
131131
}
132-
err := peergrouper.MaybeInitiateMongoServer(args)
132+
err := peergrouper.InitiateMongoServer(args)
133133
c.Assert(err, jc.ErrorIsNil)
134134

135135
s.AgentSuite.SetUpSuite(c)

featuretests/initiate_replset_test.go

+3-20
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,6 @@ type InitiateSuite struct {
1818

1919
var _ = gc.Suite(&InitiateSuite{})
2020

21-
// TODO(natefinch) add a test that InitiateMongoServer works when
22-
// we support upgrading of existing environments.
23-
2421
func (s *InitiateSuite) TestInitiateReplicaSet(c *gc.C) {
2522
var err error
2623
inst := &gitjujutesting.MgoInstance{Params: []string{"--replSet", "juju"}}
@@ -34,25 +31,11 @@ func (s *InitiateSuite) TestInitiateReplicaSet(c *gc.C) {
3431
MemberHostPort: inst.Addr(),
3532
}
3633

37-
err = peergrouper.MaybeInitiateMongoServer(args)
34+
err = peergrouper.InitiateMongoServer(args)
3835
c.Assert(err, jc.ErrorIsNil)
3936

40-
// This would return a mgo.QueryError if a ReplicaSet
41-
// configuration already existed but we tried to create
42-
// one with replicaset.Initiate again.
43-
// ErrReplicaSetAlreadyInitiated is not a failure but an
44-
// indication that we tried to initiate an initiated rs
45-
err = peergrouper.MaybeInitiateMongoServer(args)
46-
c.Assert(err, gc.Equals, peergrouper.ErrReplicaSetAlreadyInitiated)
47-
48-
// Make sure running InitiateMongoServer without forcing will behave
49-
// in the same way as MaybeInitiateMongoServer
50-
err = peergrouper.InitiateMongoServer(args, false)
51-
c.Assert(err, gc.Equals, peergrouper.ErrReplicaSetAlreadyInitiated)
52-
53-
// Assert that passing Force to initiate will re-create the replicaset
54-
// even though it exists already
55-
err = peergrouper.InitiateMongoServer(args, true)
37+
// Calling initiate again will re-create the replicaset even though it exists already
38+
err = peergrouper.InitiateMongoServer(args)
5639
c.Assert(err, jc.ErrorIsNil)
5740

5841
// TODO test login

mongo/oplog_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ func (s *oplogSuite) startMongoWithReplicaset(c *gc.C) (*jujutesting.MgoInstance
232232
DialInfo: info,
233233
MemberHostPort: inst.Addr(),
234234
}
235-
err = peergrouper.MaybeInitiateMongoServer(args)
235+
err = peergrouper.InitiateMongoServer(args)
236236
c.Assert(err, jc.ErrorIsNil)
237237

238238
return inst, s.dialMongo(c, inst)

state/backups/restore.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ func resetReplicaSet(dialInfo *mgo.DialInfo, memberHostPort string) error {
4040
User: dialInfo.Username,
4141
Password: dialInfo.Password,
4242
}
43-
return peergrouper.InitiateMongoServer(params, true)
43+
return peergrouper.InitiateMongoServer(params)
4444
}
4545

4646
var filesystemRoot = getFilesystemRoot

worker/peergrouper/initiate.go

+5-47
Original file line numberDiff line numberDiff line change
@@ -35,38 +35,25 @@ type InitiateMongoParams struct {
3535
Password string
3636
}
3737

38-
// MaybeInitiateMongoServer is a convenience function for initiating a mongo
39-
// replicaset only if it is not already initiated.
40-
func MaybeInitiateMongoServer(p InitiateMongoParams) error {
41-
return InitiateMongoServer(p, false)
42-
}
43-
4438
// InitiateMongoServer checks for an existing mongo configuration.
4539
// If no existing configuration is found one is created using Initiate.
4640
// If force flag is true, the configuration will be started anyway.
47-
func InitiateMongoServer(p InitiateMongoParams, force bool) error {
41+
func InitiateMongoServer(p InitiateMongoParams) error {
4842
logger.Debugf("Initiating mongo replicaset; dialInfo %#v; memberHostport %q; user %q; password %q", p.DialInfo, p.MemberHostPort, p.User, p.Password)
49-
defer logger.Infof("finished MaybeInitiateMongoServer")
43+
defer logger.Infof("finished InitiateMongoServer")
5044

5145
if len(p.DialInfo.Addrs) > 1 {
5246
logger.Infof("more than one member; replica set must be already initiated")
5347
return nil
5448
}
5549
p.DialInfo.Direct = true
5650

57-
// TODO(rog) remove this code when we no longer need to upgrade
58-
// from pre-HA-capable environments.
59-
if p.User != "" {
60-
p.DialInfo.Username = p.User
61-
p.DialInfo.Password = p.Password
62-
}
63-
6451
// Initiate may fail while mongo is initialising, so we retry until
6552
// we successfully populate the replicaset config.
6653
var err error
6754
for attempt := initiateAttemptStrategy.Start(); attempt.Next(); {
68-
err = attemptInitiateMongoServer(p.DialInfo, p.MemberHostPort, force)
69-
if err == nil || err == ErrReplicaSetAlreadyInitiated {
55+
err = attemptInitiateMongoServer(p.DialInfo, p.MemberHostPort)
56+
if err == nil {
7057
logger.Infof("replica set initiated")
7158
return err
7259
}
@@ -77,44 +64,15 @@ func InitiateMongoServer(p InitiateMongoParams, force bool) error {
7764
return errors.Annotatef(err, "cannot initiate replica set")
7865
}
7966

80-
// ErrReplicaSetAlreadyInitiated is returned with attemptInitiateMongoServer is called
81-
// on a mongo with an existing relicaset, it helps to assert which of the two valid
82-
// paths was taking when calling MaybeInitiateMongoServer/InitiateMongoServer which
83-
// is useful for testing purposes and also when debugging cases of faulty replica sets
84-
var ErrReplicaSetAlreadyInitiated = errors.New("replicaset is already initiated")
85-
86-
func isNotUnreachableError(err error) bool {
87-
return err.Error() != "no reachable servers"
88-
}
89-
9067
// attemptInitiateMongoServer attempts to initiate the replica set.
91-
func attemptInitiateMongoServer(dialInfo *mgo.DialInfo, memberHostPort string, force bool) error {
68+
func attemptInitiateMongoServer(dialInfo *mgo.DialInfo, memberHostPort string) error {
9269
session, err := mgo.DialWithInfo(dialInfo)
9370
if err != nil {
9471
return errors.Annotatef(err, "cannot dial mongo to initiate replicaset")
9572
}
9673
defer session.Close()
9774
session.SetSocketTimeout(mongo.SocketTimeout)
9875

99-
if !force {
100-
bInfo, err := session.BuildInfo()
101-
if err != nil && isNotUnreachableError(err) {
102-
return errors.Annotate(err, "cannot determine mongo build information")
103-
}
104-
var cfg *replicaset.Config
105-
if err != nil || !bInfo.VersionAtLeast(3) {
106-
cfg, err = replicaset.CurrentConfig(session)
107-
if err != nil && err != mgo.ErrNotFound {
108-
return errors.Errorf("cannot get replica set configuration: %v", err)
109-
}
110-
}
111-
112-
if cfg != nil && len(cfg.Members) > 0 {
113-
logger.Infof("replica set configuration found: %#v", cfg)
114-
return ErrReplicaSetAlreadyInitiated
115-
}
116-
}
117-
11876
return replicaset.Initiate(
11977
session,
12078
memberHostPort,

0 commit comments

Comments
 (0)