Update bootstrap logic to output all changed files on disk (#4800)

pull/4813/head
Brian Downs 3 years ago committed by GitHub
parent 2e91913f54
commit 3ae550ae51
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -556,6 +556,7 @@ func (c *Cluster) ReconcileBootstrapData(ctx context.Context, buf io.ReadSeeker,
} }
} }
var newerOnDisk []string
for path, res := range results { for path, res := range results {
switch { switch {
case res.disk: case res.disk:
@ -567,12 +568,16 @@ func (c *Cluster) ReconcileBootstrapData(ctx context.Context, buf io.ReadSeeker,
updateDisk = true updateDisk = true
continue continue
} }
logrus.Fatal(path + " newer than datastore and could cause cluster outage. Remove the file from disk and restart to be recreated from datastore.") newerOnDisk = append(newerOnDisk, path)
case res.conflict: case res.conflict:
logrus.Warnf("datastore / disk conflict: %s newer than in the datastore", path) logrus.Warnf("datastore / disk conflict: %s newer than in the datastore", path)
} }
} }
if len(newerOnDisk) > 0 {
logrus.Fatal(strings.Join(newerOnDisk, ", ") + " newer than datastore and could cause a cluster outage. Remove the file(s) from disk and restart to be recreated from datastore.")
}
if updateDisk { if updateDisk {
logrus.Warn("updating bootstrap data on disk from datastore") logrus.Warn("updating bootstrap data on disk from datastore")
return bootstrap.WriteToDiskFromStorage(files, crb) return bootstrap.WriteToDiskFromStorage(files, crb)

Loading…
Cancel
Save