diff --git a/cmd/rook/ceph/osd.go b/cmd/rook/ceph/osd.go index a7183452c..4ec9d94d5 100644 --- a/cmd/rook/ceph/osd.go +++ b/cmd/rook/ceph/osd.go @@ -29,6 +29,7 @@ import ( "github.com/pkg/errors" "github.com/rook/rook/cmd/rook/rook" cephv1 "github.com/rook/rook/pkg/apis/ceph.rook.io/v1" + "github.com/rook/rook/pkg/daemon/ceph/client" osddaemon "github.com/rook/rook/pkg/daemon/ceph/osd" "github.com/rook/rook/pkg/operator/ceph/cluster/mon" oposd "github.com/rook/rook/pkg/operator/ceph/cluster/osd" @@ -255,6 +256,10 @@ func prepareOSD(cmd *cobra.Command, args []string) error { clusterInfo.Context = cmd.Context() kv := k8sutil.NewConfigMapKVStore(clusterInfo.Namespace, context.Clientset, ownerInfo) + if err := client.WriteCephConfig(context, &clusterInfo); err != nil { + return errors.Wrap(err, "failed to generate ceph config") + } + // destroy the OSD using the OSD ID var replaceOSD *oposd.OSDReplaceInfo if replaceOSDID != -1 { diff --git a/pkg/daemon/ceph/osd/daemon.go b/pkg/daemon/ceph/osd/daemon.go index e8e9b68a1..61063aa83 100644 --- a/pkg/daemon/ceph/osd/daemon.go +++ b/pkg/daemon/ceph/osd/daemon.go @@ -181,10 +181,6 @@ func Provision(context *clusterd.Context, agent *OsdAgent, crushLocation, topolo status := oposd.OrchestrationStatus{Status: oposd.OrchestrationStatusOrchestrating} oposd.UpdateNodeOrPVCStatus(agent.clusterInfo.Context, agent.kv, agent.nodeName, status) - if err := client.WriteCephConfig(context, agent.clusterInfo); err != nil { - return errors.Wrap(err, "failed to generate ceph config") - } - logger.Infof("discovering hardware") var rawDevices []*sys.LocalDisk