142
143
c.Assert(err, jc.ErrorIsNil)
143
144
defer fhr.Close()
145
s.PatchValue(backups.ReplaceableFolders, func() (map[string]os.FileMode, error) {
146
s.PatchValue(backups.ReplaceableFolders, func(_ string, _ mongo.Version) (map[string]os.FileMode, error) {
146
147
replaceables := map[string]os.FileMode{}
147
148
for _, replaceable := range []string{
148
149
recreatableFolder,
175
176
c.Assert(recreatableFolder1Info.Sys().(*syscall.Stat_t).Ino, gc.Not(gc.Equals), recreatedFolder1Info.Sys().(*syscall.Stat_t).Ino)
179
func (s *filesSuite) setupReplaceableFolders(c *gc.C) string {
181
c.Assert(os.Mkdir(filepath.Join(dataDir, "init"), 0640), jc.ErrorIsNil)
182
c.Assert(os.Mkdir(filepath.Join(dataDir, "tools"), 0660), jc.ErrorIsNil)
183
c.Assert(os.Mkdir(filepath.Join(dataDir, "agents"), 0600), jc.ErrorIsNil)
184
c.Assert(os.Mkdir(filepath.Join(dataDir, "db"), 0600), jc.ErrorIsNil)
188
func (s *filesSuite) TestReplaceableFoldersMongo2(c *gc.C) {
189
dataDir := s.setupReplaceableFolders(c)
191
result, err := (*backups.ReplaceableFolders)(dataDir, mongo.Version{Major: 2, Minor: 4})
192
c.Assert(err, jc.ErrorIsNil)
193
c.Assert(result, jc.DeepEquals, map[string]os.FileMode{
194
filepath.Join(dataDir, "init"): 0640 | os.ModeDir,
195
filepath.Join(dataDir, "tools"): 0660 | os.ModeDir,
196
filepath.Join(dataDir, "agents"): 0600 | os.ModeDir,
197
filepath.Join(dataDir, "db"): 0600 | os.ModeDir,
201
func (s *filesSuite) TestReplaceableFoldersMongo3(c *gc.C) {
202
dataDir := s.setupReplaceableFolders(c)
204
result, err := (*backups.ReplaceableFolders)(dataDir, mongo.Version{Major: 3, Minor: 2})
205
c.Assert(err, jc.ErrorIsNil)
206
c.Assert(result, jc.DeepEquals, map[string]os.FileMode{
207
filepath.Join(dataDir, "init"): 0640 | os.ModeDir,
208
filepath.Join(dataDir, "tools"): 0660 | os.ModeDir,
209
filepath.Join(dataDir, "agents"): 0600 | os.ModeDir,
178
213
func (s *filesSuite) TestGetFilesToBackUpMachine10(c *gc.C) {
179
214
paths := backups.Paths{
180
215
DataDir: "/var/lib/juju",