From 4865061ab9902af0e04002977800edba5e85ad80 Mon Sep 17 00:00:00 2001 From: Madhu Rajanna Date: Wed, 1 Sep 2021 17:45:33 +0530 Subject: [PATCH] util: create ceph configuration files if not present create ceph.conf and keyring files if its not present in the /et/ceph/ path. Signed-off-by: Madhu Rajanna --- internal/util/cephconf.go | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/internal/util/cephconf.go b/internal/util/cephconf.go index 66ba11a9b..e8e3e26fa 100644 --- a/internal/util/cephconf.go +++ b/internal/util/cephconf.go @@ -50,11 +50,16 @@ func createCephConfigRoot() error { // WriteCephConfig writes out a basic ceph.conf file, making it easy to use // ceph related CLIs. func WriteCephConfig() error { - if err := createCephConfigRoot(); err != nil { + var err error + if err = createCephConfigRoot(); err != nil { return err } - err := ioutil.WriteFile(CephConfigPath, cephConfig, 0o600) + // create config file if it does not exist to support backward compatibility + if _, err = os.Stat(CephConfigPath); os.IsNotExist(err) { + err = ioutil.WriteFile(CephConfigPath, cephConfig, 0o600) + } + if err != nil { return err } @@ -71,7 +76,11 @@ if any ceph commands fails it will log below error message */ // createKeyRingFile creates the keyring files to fix above error message logging. func createKeyRingFile() error { - _, err := os.Create(keyRing) + var err error + // create keyring file if it does not exist to support backward compatibility + if _, err = os.Stat(keyRing); os.IsNotExist(err) { + _, err = os.Create(keyRing) + } return err }