]> granicus.if.org Git - icinga2/commitdiff
Cli: Bail early on 'repository commit' if changelog dir does not exist
authorMichael Friedrich <michael.friedrich@netways.de>
Tue, 28 Oct 2014 18:43:37 +0000 (19:43 +0100)
committerMichael Friedrich <michael.friedrich@netways.de>
Tue, 28 Oct 2014 18:43:37 +0000 (19:43 +0100)
refs #7255

lib/cli/repositorycommitcommand.cpp
lib/cli/repositoryobjectcommand.cpp
lib/cli/repositoryutility.cpp

index b29e94af6bef7fe243b96e6f6360c4110ca737f2..04979cc4cea87b5dd819db43071754a9a4c95624 100644 (file)
@@ -60,8 +60,10 @@ ImpersonationLevel RepositoryCommitCommand::GetImpersonationLevel(void) const
  */
 int RepositoryCommitCommand::Run(const boost::program_options::variables_map& vm, const std::vector<std::string>& ap) const
 {
-       /* create required repositories first, just in case */
-       Utility::MkDirP(RepositoryUtility::GetRepositoryChangeLogPath(), 0750);
+       if (!Utility::PathExists(RepositoryUtility::GetRepositoryChangeLogPath())) {
+               std::cout << "Repository Changelog path '" << RepositoryUtility::GetRepositoryChangeLogPath() << "' does not exist. Add objects first!\n";
+               return 1;
+       }
 
        if (vm.count("simulate")) {
                RepositoryUtility::PrintChangeLog(std::cout);
index 36bfb6108f5ea03319468e826e22c88f3de489a1..b8beb46b05e44b041780f5b649475473112f8816 100644 (file)
@@ -150,14 +150,14 @@ std::vector<String> RepositoryObjectCommand::GetPositionalSuggestions(const Stri
                return CLICommand::GetPositionalSuggestions(word);
 }
 
-int RepositoryObjectCommand::GetMaxArguments(void) const
+ImpersonationLevel RepositoryObjectCommand::GetImpersonationLevel(void) const
 {
-       return -1;
+       return ImpersonateRoot;
 }
 
-ImpersonationLevel RepositoryObjectCommand::GetImpersonationLevel(void) const
+int RepositoryObjectCommand::GetMaxArguments(void) const
 {
-       return ImpersonateRoot;
+       return -1;
 }
 
 /**
index 5796155f7298264153804438745e1485cb2d8e08..a98fdf05910718d30790f09896157451fde2b82c 100644 (file)
@@ -629,7 +629,7 @@ void RepositoryUtility::SerializeObject(std::ostream& fp, const String& name, co
        }
 
        BOOST_FOREACH(const Dictionary::Pair& kv, object) {
-               if (kv.first == "import" || kv.first == "name") {
+               if (kv.first == "import" || kv.first == "name" || kv.first == "__name") {
                        continue;
                } else {
                        fp << "\t" << kv.first << " = ";