diff --git a/lib/cli/CMakeLists.txt b/lib/cli/CMakeLists.txt index dd72801c6..7213e3aee 100644 --- a/lib/cli/CMakeLists.txt +++ b/lib/cli/CMakeLists.txt @@ -16,8 +16,8 @@ # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. set(cli_SOURCES - agentaddcommand.cpp agentblackandwhitelistcommand.cpp agentlistcommand.cpp agentremovecommand.cpp - agentsetcommand.cpp agentsetupcommand.cpp agentupdateconfigcommand.cpp agentwizardcommand.cpp agentutility.cpp + nodeaddcommand.cpp nodeblackandwhitelistcommand.cpp nodelistcommand.cpp noderemovecommand.cpp + nodesetcommand.cpp nodesetupcommand.cpp nodeupdateconfigcommand.cpp nodewizardcommand.cpp nodeutility.cpp clicommand.cpp daemoncommand.cpp featureenablecommand.cpp featuredisablecommand.cpp featurelistcommand.cpp featureutility.cpp diff --git a/lib/cli/agentaddcommand.cpp b/lib/cli/nodeaddcommand.cpp similarity index 82% rename from lib/cli/agentaddcommand.cpp rename to lib/cli/nodeaddcommand.cpp index 034e425b4..58c057a79 100644 --- a/lib/cli/agentaddcommand.cpp +++ b/lib/cli/nodeaddcommand.cpp @@ -17,8 +17,8 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentaddcommand.hpp" -#include "cli/agentutility.hpp" +#include "cli/nodeaddcommand.hpp" +#include "cli/nodeutility.hpp" #include "base/logger.hpp" #include "base/application.hpp" #include @@ -31,19 +31,19 @@ using namespace icinga; namespace po = boost::program_options; -REGISTER_CLICOMMAND("agent/add", AgentAddCommand); +REGISTER_CLICOMMAND("node/add", NodeAddCommand); -String AgentAddCommand::GetDescription(void) const +String NodeAddCommand::GetDescription(void) const { return "Add Icinga 2 agent."; } -String AgentAddCommand::GetShortDescription(void) const +String NodeAddCommand::GetShortDescription(void) const { return "add agent"; } -int AgentAddCommand::GetMinArguments(void) const +int NodeAddCommand::GetMinArguments(void) const { return 1; } @@ -53,9 +53,9 @@ int AgentAddCommand::GetMinArguments(void) const * * @returns An exit status. */ -int AgentAddCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const +int NodeAddCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const { - AgentUtility::AddAgent(ap[0]); + NodeUtility::AddNode(ap[0]); return 0; } diff --git a/lib/cli/agentaddcommand.hpp b/lib/cli/nodeaddcommand.hpp similarity index 95% rename from lib/cli/agentaddcommand.hpp rename to lib/cli/nodeaddcommand.hpp index 5bf1ed89b..fcb2badcc 100644 --- a/lib/cli/agentaddcommand.hpp +++ b/lib/cli/nodeaddcommand.hpp @@ -30,10 +30,10 @@ namespace icinga * * @ingroup cli */ -class AgentAddCommand : public CLICommand +class NodeAddCommand : public CLICommand { public: - DECLARE_PTR_TYPEDEFS(AgentAddCommand); + DECLARE_PTR_TYPEDEFS(NodeAddCommand); virtual String GetDescription(void) const; virtual String GetShortDescription(void) const; diff --git a/lib/cli/agentblackandwhitelistcommand.cpp b/lib/cli/nodeblackandwhitelistcommand.cpp similarity index 91% rename from lib/cli/agentblackandwhitelistcommand.cpp rename to lib/cli/nodeblackandwhitelistcommand.cpp index 7cb204e38..3545c2c04 100644 --- a/lib/cli/agentblackandwhitelistcommand.cpp +++ b/lib/cli/nodeblackandwhitelistcommand.cpp @@ -17,8 +17,8 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentblackandwhitelistcommand.hpp" -#include "cli/agentutility.hpp" +#include "cli/nodeblackandwhitelistcommand.hpp" +#include "cli/nodeutility.hpp" #include "base/logger.hpp" #include "base/application.hpp" #include "base/objectlock.hpp" @@ -40,7 +40,7 @@ RegisterBlackAndWhitelistCLICommandHelper::RegisterBlackAndWhitelistCLICommandHe boost::algorithm::to_lower(ltype); std::vector name; - name.push_back("agent"); + name.push_back("node"); name.push_back(ltype); name.push_back("add"); CLICommand::Register(name, make_shared(type, BlackAndWhitelistCommandAdd)); @@ -124,7 +124,7 @@ void BlackAndWhitelistCommand::InitParameters(boost::program_options::options_de */ int BlackAndWhitelistCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const { - String list_path = AgentUtility::GetRepositoryPath() + "/" + m_Type + ".list"; + String list_path = NodeUtility::GetRepositoryPath() + "/" + m_Type + ".list"; Dictionary::Ptr lists = make_shared(); @@ -147,7 +147,7 @@ int BlackAndWhitelistCommand::Run(const boost::program_options::variables_map& v if (vm.count("service")) service_filter = vm["service"].as(); - return AgentUtility::UpdateBlackAndWhiteList(m_Type, vm["agent"].as(), vm["host"].as(), service_filter); + return NodeUtility::UpdateBlackAndWhiteList(m_Type, vm["agent"].as(), vm["host"].as(), service_filter); } else if (m_Command == BlackAndWhitelistCommandList) { if (vm.count("agent") || vm.count("host") || vm.count("service")) { @@ -155,7 +155,7 @@ int BlackAndWhitelistCommand::Run(const boost::program_options::variables_map& v return 1; } - return AgentUtility::PrintBlackAndWhiteList(std::cout, m_Type); + return NodeUtility::PrintBlackAndWhiteList(std::cout, m_Type); } else if (m_Command == BlackAndWhitelistCommandRemove) { if (!vm.count("agent")) { Log(LogCritical, "cli", "At least the agent name filter is required!"); @@ -174,7 +174,7 @@ int BlackAndWhitelistCommand::Run(const boost::program_options::variables_map& v service_filter = vm["service"].as(); } - return AgentUtility::RemoveBlackAndWhiteList(m_Type, vm["agent"].as(), vm["host"].as(), service_filter); + return NodeUtility::RemoveBlackAndWhiteList(m_Type, vm["agent"].as(), vm["host"].as(), service_filter); } diff --git a/lib/cli/agentblackandwhitelistcommand.hpp b/lib/cli/nodeblackandwhitelistcommand.hpp similarity index 100% rename from lib/cli/agentblackandwhitelistcommand.hpp rename to lib/cli/nodeblackandwhitelistcommand.hpp diff --git a/lib/cli/agentlistcommand.cpp b/lib/cli/nodelistcommand.cpp similarity index 80% rename from lib/cli/agentlistcommand.cpp rename to lib/cli/nodelistcommand.cpp index 4d237b9b4..b55380d0d 100644 --- a/lib/cli/agentlistcommand.cpp +++ b/lib/cli/nodelistcommand.cpp @@ -17,8 +17,8 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentlistcommand.hpp" -#include "cli/agentutility.hpp" +#include "cli/nodelistcommand.hpp" +#include "cli/nodeutility.hpp" #include "base/logger.hpp" #include "base/application.hpp" #include "base/console.hpp" @@ -32,19 +32,19 @@ using namespace icinga; namespace po = boost::program_options; -REGISTER_CLICOMMAND("agent/list", AgentListCommand); +REGISTER_CLICOMMAND("node/list", NodeListCommand); -String AgentListCommand::GetDescription(void) const +String NodeListCommand::GetDescription(void) const { return "Lists all Icinga 2 agents."; } -String AgentListCommand::GetShortDescription(void) const +String NodeListCommand::GetShortDescription(void) const { return "lists all agents"; } -void AgentListCommand::InitParameters(boost::program_options::options_description& visibleDesc, +void NodeListCommand::InitParameters(boost::program_options::options_description& visibleDesc, boost::program_options::options_description& hiddenDesc) const { visibleDesc.add_options() @@ -56,7 +56,7 @@ void AgentListCommand::InitParameters(boost::program_options::options_descriptio * * @returns An exit status. */ -int AgentListCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const +int NodeListCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const { if (!ap.empty()) { Log(LogWarning, "cli") @@ -64,9 +64,9 @@ int AgentListCommand::Run(const boost::program_options::variables_map& vm, const } if (vm.count("batch")) - AgentUtility::PrintAgentsJson(std::cout); + NodeUtility::PrintNodesJson(std::cout); else - AgentUtility::PrintAgents(std::cout); + NodeUtility::PrintNodes(std::cout); return 0; } diff --git a/lib/cli/agentlistcommand.hpp b/lib/cli/nodelistcommand.hpp similarity index 95% rename from lib/cli/agentlistcommand.hpp rename to lib/cli/nodelistcommand.hpp index df02c745f..02a37f2f0 100644 --- a/lib/cli/agentlistcommand.hpp +++ b/lib/cli/nodelistcommand.hpp @@ -30,10 +30,10 @@ namespace icinga * * @ingroup cli */ -class AgentListCommand : public CLICommand +class NodeListCommand : public CLICommand { public: - DECLARE_PTR_TYPEDEFS(AgentListCommand); + DECLARE_PTR_TYPEDEFS(NodeListCommand); virtual String GetDescription(void) const; virtual String GetShortDescription(void) const; diff --git a/lib/cli/agentremovecommand.cpp b/lib/cli/noderemovecommand.cpp similarity index 75% rename from lib/cli/agentremovecommand.cpp rename to lib/cli/noderemovecommand.cpp index d8f9394d9..df7bdb745 100644 --- a/lib/cli/agentremovecommand.cpp +++ b/lib/cli/noderemovecommand.cpp @@ -17,8 +17,8 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentremovecommand.hpp" -#include "cli/agentutility.hpp" +#include "cli/noderemovecommand.hpp" +#include "cli/nodeutility.hpp" #include "base/logger.hpp" #include "base/application.hpp" #include @@ -31,29 +31,29 @@ using namespace icinga; namespace po = boost::program_options; -REGISTER_CLICOMMAND("agent/remove", AgentRemoveCommand); +REGISTER_CLICOMMAND("node/remove", NodeRemoveCommand); -String AgentRemoveCommand::GetDescription(void) const +String NodeRemoveCommand::GetDescription(void) const { return "Removes Icinga 2 agent."; } -String AgentRemoveCommand::GetShortDescription(void) const +String NodeRemoveCommand::GetShortDescription(void) const { return "removes agent"; } -std::vector AgentRemoveCommand::GetPositionalSuggestions(const String& word) const +std::vector NodeRemoveCommand::GetPositionalSuggestions(const String& word) const { - return AgentUtility::GetAgentCompletionSuggestions(word); + return NodeUtility::GetNodeCompletionSuggestions(word); } -int AgentRemoveCommand::GetMinArguments(void) const +int NodeRemoveCommand::GetMinArguments(void) const { return 1; } -int AgentRemoveCommand::GetMaxArguments(void) const +int NodeRemoveCommand::GetMaxArguments(void) const { return -1; } @@ -63,10 +63,10 @@ int AgentRemoveCommand::GetMaxArguments(void) const * * @returns An exit status. */ -int AgentRemoveCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const +int NodeRemoveCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const { BOOST_FOREACH(const String& agent, ap) { - AgentUtility::RemoveAgent(agent); + NodeUtility::RemoveNode(agent); } return 0; diff --git a/lib/cli/agentremovecommand.hpp b/lib/cli/noderemovecommand.hpp similarity index 95% rename from lib/cli/agentremovecommand.hpp rename to lib/cli/noderemovecommand.hpp index e7689341b..d3d539971 100644 --- a/lib/cli/agentremovecommand.hpp +++ b/lib/cli/noderemovecommand.hpp @@ -30,10 +30,10 @@ namespace icinga * * @ingroup cli */ -class AgentRemoveCommand : public CLICommand +class NodeRemoveCommand : public CLICommand { public: - DECLARE_PTR_TYPEDEFS(AgentRemoveCommand); + DECLARE_PTR_TYPEDEFS(NodeRemoveCommand); virtual String GetDescription(void) const; virtual String GetShortDescription(void) const; diff --git a/lib/cli/agentsetcommand.cpp b/lib/cli/nodesetcommand.cpp similarity index 79% rename from lib/cli/agentsetcommand.cpp rename to lib/cli/nodesetcommand.cpp index 60ad59256..66afb36de 100644 --- a/lib/cli/agentsetcommand.cpp +++ b/lib/cli/nodesetcommand.cpp @@ -17,8 +17,8 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentsetcommand.hpp" -#include "cli/agentutility.hpp" +#include "cli/nodesetcommand.hpp" +#include "cli/nodeutility.hpp" #include "base/logger.hpp" #include "base/application.hpp" #include @@ -31,19 +31,19 @@ using namespace icinga; namespace po = boost::program_options; -REGISTER_CLICOMMAND("agent/set", AgentSetCommand); +REGISTER_CLICOMMAND("node/set", NodeSetCommand); -String AgentSetCommand::GetDescription(void) const +String NodeSetCommand::GetDescription(void) const { return "Set agent attribute(s)."; } -String AgentSetCommand::GetShortDescription(void) const +String NodeSetCommand::GetShortDescription(void) const { return "set agent attributes"; } -void AgentSetCommand::InitParameters(boost::program_options::options_description& visibleDesc, +void NodeSetCommand::InitParameters(boost::program_options::options_description& visibleDesc, boost::program_options::options_description& hiddenDesc) const { visibleDesc.add_options() @@ -52,7 +52,7 @@ void AgentSetCommand::InitParameters(boost::program_options::options_description ("log_duration", po::value(), "Log duration (in seconds)"); } -int AgentSetCommand::GetMinArguments(void) const +int NodeSetCommand::GetMinArguments(void) const { return 1; } @@ -62,13 +62,13 @@ int AgentSetCommand::GetMinArguments(void) const * * @returns An exit status. */ -int AgentSetCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const +int NodeSetCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const { - String repoFile = AgentUtility::GetAgentRepositoryFile(ap[0]); + String repoFile = NodeUtility::GetNodeRepositoryFile(ap[0]); if (!Utility::PathExists(repoFile)) { Log(LogCritical, "cli") - << "Agent '" << ap[0] << "' does not exist."; + << "Node '" << ap[0] << "' does not exist."; return 1; } @@ -84,7 +84,7 @@ int AgentSetCommand::Run(const boost::program_options::variables_map& vm, const if (vm.count("log_duration")) log_duration = vm["log_duration"].as(); - AgentUtility::AddAgentSettings(ap[0], host, port, log_duration); + NodeUtility::AddNodeSettings(ap[0], host, port, log_duration); return 0; } diff --git a/lib/cli/agentsetcommand.hpp b/lib/cli/nodesetcommand.hpp similarity index 96% rename from lib/cli/agentsetcommand.hpp rename to lib/cli/nodesetcommand.hpp index ace39dafb..f247c78cd 100644 --- a/lib/cli/agentsetcommand.hpp +++ b/lib/cli/nodesetcommand.hpp @@ -30,10 +30,10 @@ namespace icinga * * @ingroup cli */ -class AgentSetCommand : public CLICommand +class NodeSetCommand : public CLICommand { public: - DECLARE_PTR_TYPEDEFS(AgentSetCommand); + DECLARE_PTR_TYPEDEFS(NodeSetCommand); virtual String GetDescription(void) const; virtual String GetShortDescription(void) const; diff --git a/lib/cli/agentsetupcommand.cpp b/lib/cli/nodesetupcommand.cpp similarity index 90% rename from lib/cli/agentsetupcommand.cpp rename to lib/cli/nodesetupcommand.cpp index aed639798..08d5077d3 100644 --- a/lib/cli/agentsetupcommand.cpp +++ b/lib/cli/nodesetupcommand.cpp @@ -17,8 +17,8 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentsetupcommand.hpp" -#include "cli/agentutility.hpp" +#include "cli/nodesetupcommand.hpp" +#include "cli/nodeutility.hpp" #include "cli/featureutility.hpp" #include "cli/pkiutility.hpp" #include "base/logger.hpp" @@ -39,19 +39,19 @@ using namespace icinga; namespace po = boost::program_options; -REGISTER_CLICOMMAND("agent/setup", AgentSetupCommand); +REGISTER_CLICOMMAND("node/setup", NodeSetupCommand); -String AgentSetupCommand::GetDescription(void) const +String NodeSetupCommand::GetDescription(void) const { return "Sets up an Icinga 2 agent."; } -String AgentSetupCommand::GetShortDescription(void) const +String NodeSetupCommand::GetShortDescription(void) const { return "set up agent"; } -void AgentSetupCommand::InitParameters(boost::program_options::options_description& visibleDesc, +void NodeSetupCommand::InitParameters(boost::program_options::options_description& visibleDesc, boost::program_options::options_description& hiddenDesc) const { visibleDesc.add_options() @@ -66,7 +66,7 @@ void AgentSetupCommand::InitParameters(boost::program_options::options_descripti ("master", "Use setup for a master instance"); } -std::vector AgentSetupCommand::GetArgumentSuggestions(const String& argument, const String& word) const +std::vector NodeSetupCommand::GetArgumentSuggestions(const String& argument, const String& word) const { if (argument == "key" || argument == "cert" || argument == "trustedcert") return GetBashCompletionSuggestions("file", word); @@ -78,7 +78,7 @@ std::vector AgentSetupCommand::GetArgumentSuggestions(const String& argu return CLICommand::GetArgumentSuggestions(argument, word); } -ImpersonationLevel AgentSetupCommand::GetImpersonationLevel(void) const +ImpersonationLevel NodeSetupCommand::GetImpersonationLevel(void) const { return ImpersonateRoot; } @@ -88,7 +88,7 @@ ImpersonationLevel AgentSetupCommand::GetImpersonationLevel(void) const * * @returns An exit status. */ -int AgentSetupCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const +int NodeSetupCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const { if (!ap.empty()) { Log(LogWarning, "cli") @@ -98,20 +98,20 @@ int AgentSetupCommand::Run(const boost::program_options::variables_map& vm, cons if (vm.count("master")) return SetupMaster(vm, ap); else - return SetupAgent(vm, ap); + return SetupNode(vm, ap); } -int AgentSetupCommand::SetupMaster(const boost::program_options::variables_map& vm, const std::vector& ap) +int NodeSetupCommand::SetupMaster(const boost::program_options::variables_map& vm, const std::vector& ap) { /* Ignore not required parameters */ if (vm.count("ticket")) - Log(LogWarning, "cli", "Master for Agent setup: Ignoring --ticket"); + Log(LogWarning, "cli", "Master for Node setup: Ignoring --ticket"); if (vm.count("endpoint")) - Log(LogWarning, "cli", "Master for Agent setup: Ignoring --endpoint"); + Log(LogWarning, "cli", "Master for Node setup: Ignoring --endpoint"); if (vm.count("trustedcert")) - Log(LogWarning, "cli", "Master for Agent setup: Ignoring --trustedcert"); + Log(LogWarning, "cli", "Master for Node setup: Ignoring --trustedcert"); /* Generate a new CA, if not already existing */ @@ -205,7 +205,7 @@ int AgentSetupCommand::SetupMaster(const boost::program_options::variables_map& Log(LogInformation, "cli", "Generating zone and object configuration."); - AgentUtility::GenerateAgentMasterIcingaConfig(cn); + NodeUtility::GenerateNodeMasterIcingaConfig(cn); /* enable the ApiListener config */ @@ -216,7 +216,7 @@ int AgentSetupCommand::SetupMaster(const boost::program_options::variables_map& FeatureUtility::EnableFeatures(enable); String apipath = FeatureUtility::GetFeaturesAvailablePath() + "/api.conf"; - AgentUtility::CreateBackupFile(apipath); + NodeUtility::CreateBackupFile(apipath); String apipathtmp = apipath + ".tmp"; @@ -266,13 +266,13 @@ int AgentSetupCommand::SetupMaster(const boost::program_options::variables_map& Log(LogInformation, "cli", "Updating constants.conf."); - AgentUtility::CreateBackupFile(Application::GetSysconfDir() + "/icinga2/constants.conf"); + NodeUtility::CreateBackupFile(Application::GetSysconfDir() + "/icinga2/constants.conf"); - AgentUtility::UpdateConstant("NodeName", cn); + NodeUtility::UpdateConstant("NodeName", cn); String salt = RandomString(16); - AgentUtility::UpdateConstant("TicketSalt", salt); + NodeUtility::UpdateConstant("TicketSalt", salt); Log(LogInformation, "cli") << "Edit the api feature config file '" << apipath << "' and set a secure 'ticket_salt' attribute."; @@ -284,7 +284,7 @@ int AgentSetupCommand::SetupMaster(const boost::program_options::variables_map& return 0; } -int AgentSetupCommand::SetupAgent(const boost::program_options::variables_map& vm, const std::vector& ap) +int NodeSetupCommand::SetupNode(const boost::program_options::variables_map& vm, const std::vector& ap) { /* require ticket number (generated on master) and at least one endpoint */ @@ -414,7 +414,7 @@ int AgentSetupCommand::SetupAgent(const boost::program_options::variables_map& v FeatureUtility::EnableFeatures(enable); String apipath = FeatureUtility::GetFeaturesAvailablePath() + "/api.conf"; - AgentUtility::CreateBackupFile(apipath); + NodeUtility::CreateBackupFile(apipath); String apipathtmp = apipath + ".tmp"; @@ -460,7 +460,7 @@ int AgentSetupCommand::SetupAgent(const boost::program_options::variables_map& v Log(LogInformation, "cli", "Generating zone and object configuration."); - AgentUtility::GenerateAgentIcingaConfig(vm["endpoint"].as >(), cn); + NodeUtility::GenerateNodeIcingaConfig(vm["endpoint"].as >(), cn); /* update constants.conf with NodeName = CN */ if (cn != Utility::GetFQDN()) { @@ -470,9 +470,9 @@ int AgentSetupCommand::SetupAgent(const boost::program_options::variables_map& v Log(LogInformation, "cli", "Updating constants.conf."); - AgentUtility::CreateBackupFile(Application::GetSysconfDir() + "/icinga2/constants.conf"); + NodeUtility::CreateBackupFile(Application::GetSysconfDir() + "/icinga2/constants.conf"); - AgentUtility::UpdateConstant("NodeName", cn); + NodeUtility::UpdateConstant("NodeName", cn); /* tell the user to reload icinga2 */ diff --git a/lib/cli/agentsetupcommand.hpp b/lib/cli/nodesetupcommand.hpp similarity index 92% rename from lib/cli/agentsetupcommand.hpp rename to lib/cli/nodesetupcommand.hpp index 05e1be7e1..251385b8b 100644 --- a/lib/cli/agentsetupcommand.hpp +++ b/lib/cli/nodesetupcommand.hpp @@ -30,10 +30,10 @@ namespace icinga * * @ingroup cli */ -class AgentSetupCommand : public CLICommand +class NodeSetupCommand : public CLICommand { public: - DECLARE_PTR_TYPEDEFS(AgentSetupCommand); + DECLARE_PTR_TYPEDEFS(NodeSetupCommand); virtual String GetDescription(void) const; virtual String GetShortDescription(void) const; @@ -45,7 +45,7 @@ public: private: static int SetupMaster(const boost::program_options::variables_map& vm, const std::vector& ap); - static int SetupAgent(const boost::program_options::variables_map& vm, const std::vector& ap); + static int SetupNode(const boost::program_options::variables_map& vm, const std::vector& ap); }; } diff --git a/lib/cli/agentupdateconfigcommand.cpp b/lib/cli/nodeupdateconfigcommand.cpp similarity index 86% rename from lib/cli/agentupdateconfigcommand.cpp rename to lib/cli/nodeupdateconfigcommand.cpp index 10c909fc3..512f32418 100644 --- a/lib/cli/agentupdateconfigcommand.cpp +++ b/lib/cli/nodeupdateconfigcommand.cpp @@ -17,8 +17,8 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentupdateconfigcommand.hpp" -#include "cli/agentutility.hpp" +#include "cli/nodeupdateconfigcommand.hpp" +#include "cli/nodeutility.hpp" #include "cli/repositoryutility.hpp" #include "base/logger.hpp" #include "base/application.hpp" @@ -34,19 +34,19 @@ using namespace icinga; namespace po = boost::program_options; -REGISTER_CLICOMMAND("agent/update-config", AgentUpdateConfigCommand); +REGISTER_CLICOMMAND("node/update-config", NodeUpdateConfigCommand); -String AgentUpdateConfigCommand::GetDescription(void) const +String NodeUpdateConfigCommand::GetDescription(void) const { return "Update Icinga 2 agent config."; } -String AgentUpdateConfigCommand::GetShortDescription(void) const +String NodeUpdateConfigCommand::GetShortDescription(void) const { return "update agent config"; } -ImpersonationLevel AgentUpdateConfigCommand::GetImpersonationLevel(void) const +ImpersonationLevel NodeUpdateConfigCommand::GetImpersonationLevel(void) const { return ImpersonateRoot; } @@ -56,7 +56,7 @@ ImpersonationLevel AgentUpdateConfigCommand::GetImpersonationLevel(void) const * * @returns An exit status. */ -int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const +int NodeUpdateConfigCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const { //If there are changes pending, abort the current operation if (RepositoryUtility::ChangeLogHasPendingChanges()) { @@ -67,7 +67,7 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v return 1; } - String inventory_path = AgentUtility::GetRepositoryPath() + "/inventory.index"; + String inventory_path = NodeUtility::GetRepositoryPath() + "/inventory.index"; Dictionary::Ptr old_inventory = make_shared(); if (Utility::PathExists(inventory_path)) { @@ -79,13 +79,13 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v Log(LogInformation, "cli") << "Updating agent configuration for "; - AgentUtility::PrintAgents(std::cout); + NodeUtility::PrintNodes(std::cout); Utility::LoadExtensionLibrary("icinga"); std::vector object_paths = RepositoryUtility::GetObjects(); - BOOST_FOREACH(const Dictionary::Ptr& agent, AgentUtility::GetAgents()) { + BOOST_FOREACH(const Dictionary::Ptr& agent, NodeUtility::GetNodes()) { Dictionary::Ptr repository = agent->Get("repository"); String zone = agent->Get("zone"); String endpoint = agent->Get("endpoint"); @@ -138,8 +138,8 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v skip_host = true; /* check against black/whitelist before trying to add host */ - if (AgentUtility::CheckAgainstBlackAndWhiteList("blacklist", agent_name, host, Empty) && - !AgentUtility::CheckAgainstBlackAndWhiteList("whitelist", agent_name, host, Empty)) { + if (NodeUtility::CheckAgainstBlackAndWhiteList("blacklist", agent_name, host, Empty) && + !NodeUtility::CheckAgainstBlackAndWhiteList("whitelist", agent_name, host, Empty)) { Log(LogWarning, "cli") << "Host '" << host << "' on agent '" << agent_name << "' is blacklisted, but not whitelisted. Skipping."; skip_host = true; @@ -192,8 +192,8 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v } /* check against black/whitelist before trying to add service */ - if (AgentUtility::CheckAgainstBlackAndWhiteList("blacklist", endpoint, host, service) && - !AgentUtility::CheckAgainstBlackAndWhiteList("whitelist", endpoint, host, service)) { + if (NodeUtility::CheckAgainstBlackAndWhiteList("blacklist", endpoint, host, service) && + !NodeUtility::CheckAgainstBlackAndWhiteList("whitelist", endpoint, host, service)) { Log(LogWarning, "cli") << "Service '" << service << "' on host '" << host << "' on agent '" << agent_name << "' is blacklisted, but not whitelisted. Skipping."; @@ -256,14 +256,14 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v if (!agent->Contains("parent_zone")) { Log(LogWarning, "cli") - << "Agent '" << endpoint << "' does not have any parent zone defined. Using 'master' as default. Please verify the generated configuration."; + << "Node '" << endpoint << "' does not have any parent zone defined. Using 'master' as default. Please verify the generated configuration."; parent_zone = agent_parent_zone; } else { parent_zone = agent->Get("parent_zone"); if (parent_zone.IsEmpty()) { Log(LogWarning, "cli") - << "Agent '" << endpoint << "' does not have any parent zone defined. Using 'master' as default. Please verify the generated configuration."; + << "Node '" << endpoint << "' does not have any parent zone defined. Using 'master' as default. Please verify the generated configuration."; parent_zone = agent_parent_zone; } } @@ -284,7 +284,7 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v /* check if the agent was dropped */ if (!inventory->Contains(old_agent_name)) { Log(LogInformation, "cli") - << "Agent update found old agent '" << old_agent_name << "'. Removing it and all of its hosts/services."; + << "Node update found old agent '" << old_agent_name << "'. Removing it and all of its hosts/services."; //TODO Remove an agent and all of his hosts Dictionary::Ptr old_agent = old_inventory->Get(old_agent_name); @@ -328,8 +328,8 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v } /* check against black/whitelist before trying to remove host */ - if (AgentUtility::CheckAgainstBlackAndWhiteList("blacklist", old_agent_name, old_host, Empty) && - !AgentUtility::CheckAgainstBlackAndWhiteList("whitelist", old_agent_name, old_host, Empty)) { + if (NodeUtility::CheckAgainstBlackAndWhiteList("blacklist", old_agent_name, old_host, Empty) && + !NodeUtility::CheckAgainstBlackAndWhiteList("whitelist", old_agent_name, old_host, Empty)) { Log(LogWarning, "cli") << "Host '" << old_agent << "' on agent '" << old_agent << "' is blacklisted, but not whitelisted. Skipping."; continue; @@ -337,7 +337,7 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v if (!new_agent_repository->Contains(old_host)) { Log(LogInformation, "cli") - << "Agent update found old host '" << old_host << "' on agent '" << old_agent_name << "'. Removing it."; + << "Node update found old host '" << old_host << "' on agent '" << old_agent_name << "'. Removing it."; Dictionary::Ptr host_attrs = make_shared(); host_attrs->Set("name", old_host); @@ -350,8 +350,8 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v ObjectLock ylock(old_services); BOOST_FOREACH(const String& old_service, old_services) { /* check against black/whitelist before trying to remove service */ - if (AgentUtility::CheckAgainstBlackAndWhiteList("blacklist", old_agent_name, old_host, old_service) && - !AgentUtility::CheckAgainstBlackAndWhiteList("whitelist", old_agent_name, old_host, old_service)) { + if (NodeUtility::CheckAgainstBlackAndWhiteList("blacklist", old_agent_name, old_host, old_service) && + !NodeUtility::CheckAgainstBlackAndWhiteList("whitelist", old_agent_name, old_host, old_service)) { Log(LogWarning, "cli") << "Service '" << old_service << "' on host '" << old_host << "' on agent '" << old_agent_name << "' is blacklisted, but not whitelisted. Skipping."; @@ -360,7 +360,7 @@ int AgentUpdateConfigCommand::Run(const boost::program_options::variables_map& v if (!new_services->Contains(old_service)) { Log(LogInformation, "cli") - << "Agent update found old service '" << old_service << "' on host '" << old_host + << "Node update found old service '" << old_service << "' on host '" << old_host << "' on agent '" << old_agent_name << "'. Removing it."; Dictionary::Ptr service_attrs = make_shared(); diff --git a/lib/cli/agentupdateconfigcommand.hpp b/lib/cli/nodeupdateconfigcommand.hpp similarity index 95% rename from lib/cli/agentupdateconfigcommand.hpp rename to lib/cli/nodeupdateconfigcommand.hpp index 9a4df06d1..b35f252d3 100644 --- a/lib/cli/agentupdateconfigcommand.hpp +++ b/lib/cli/nodeupdateconfigcommand.hpp @@ -30,10 +30,10 @@ namespace icinga * * @ingroup cli */ -class AgentUpdateConfigCommand : public CLICommand +class NodeUpdateConfigCommand : public CLICommand { public: - DECLARE_PTR_TYPEDEFS(AgentUpdateConfigCommand); + DECLARE_PTR_TYPEDEFS(NodeUpdateConfigCommand); virtual String GetDescription(void) const; virtual String GetShortDescription(void) const; diff --git a/lib/cli/agentutility.cpp b/lib/cli/nodeutility.cpp similarity index 78% rename from lib/cli/agentutility.cpp rename to lib/cli/nodeutility.cpp index 922a32f13..3ef4223cd 100644 --- a/lib/cli/agentutility.cpp +++ b/lib/cli/nodeutility.cpp @@ -17,7 +17,7 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentutility.hpp" +#include "cli/nodeutility.hpp" #include "cli/clicommand.hpp" #include "base/logger.hpp" #include "base/application.hpp" @@ -40,50 +40,50 @@ using namespace icinga; -String AgentUtility::GetRepositoryPath(void) +String NodeUtility::GetRepositoryPath(void) { return Application::GetLocalStateDir() + "/lib/icinga2/api/repository"; } -String AgentUtility::GetAgentRepositoryFile(const String& name) +String NodeUtility::GetNodeRepositoryFile(const String& name) { return GetRepositoryPath() + "/" + SHA256(name) + ".repo"; } -String AgentUtility::GetAgentSettingsFile(const String& name) +String NodeUtility::GetNodeSettingsFile(const String& name) { return GetRepositoryPath() + "/" + SHA256(name) + ".settings"; } -std::vector AgentUtility::GetAgentCompletionSuggestions(const String& word) +std::vector NodeUtility::GetNodeCompletionSuggestions(const String& word) { std::vector suggestions; - BOOST_FOREACH(const Dictionary::Ptr& agent, GetAgents()) { - String agent_name = agent->Get("endpoint"); + BOOST_FOREACH(const Dictionary::Ptr& node, GetNodes()) { + String node_name = node->Get("endpoint"); - if (agent_name.Find(word) == 0) - suggestions.push_back(agent_name); + if (node_name.Find(word) == 0) + suggestions.push_back(node_name); } return suggestions; } -void AgentUtility::PrintAgents(std::ostream& fp) +void NodeUtility::PrintNodes(std::ostream& fp) { bool first = true; - BOOST_FOREACH(const Dictionary::Ptr& agent, GetAgents()) { + BOOST_FOREACH(const Dictionary::Ptr& node, GetNodes()) { if (first) first = false; else fp << "\n"; - fp << "Agent '" - << ConsoleColorTag(Console_ForegroundBlue | Console_Bold) << agent->Get("endpoint") << ConsoleColorTag(Console_Normal) + fp << "Node '" + << ConsoleColorTag(Console_ForegroundBlue | Console_Bold) << node->Get("endpoint") << ConsoleColorTag(Console_Normal) << "' ("; - Dictionary::Ptr settings = agent->Get("settings"); + Dictionary::Ptr settings = node->Get("settings"); if (settings) { String host = settings->Get("host"); @@ -96,13 +96,13 @@ void AgentUtility::PrintAgents(std::ostream& fp) fp << "log duration: " << Utility::FormatDuration(log_duration) << ", "; } - fp << "last seen: " << Utility::FormatDateTime("%c", agent->Get("seen")) << ")\n"; + fp << "last seen: " << Utility::FormatDateTime("%c", node->Get("seen")) << ")\n"; - PrintAgentRepository(fp, agent->Get("repository")); + PrintNodeRepository(fp, node->Get("repository")); } } -void AgentUtility::PrintAgentRepository(std::ostream& fp, const Dictionary::Ptr& repository) +void NodeUtility::PrintNodeRepository(std::ostream& fp, const Dictionary::Ptr& repository) { if (!repository) return; @@ -120,37 +120,37 @@ void AgentUtility::PrintAgentRepository(std::ostream& fp, const Dictionary::Ptr& } } -void AgentUtility::PrintAgentsJson(std::ostream& fp) +void NodeUtility::PrintNodesJson(std::ostream& fp) { Dictionary::Ptr result = make_shared(); - BOOST_FOREACH(const Dictionary::Ptr& agent, GetAgents()) { - result->Set(agent->Get("endpoint"), agent); + BOOST_FOREACH(const Dictionary::Ptr& node, GetNodes()) { + result->Set(node->Get("endpoint"), node); } fp << JsonEncode(result); } -void AgentUtility::AddAgent(const String& name) +void NodeUtility::AddNode(const String& name) { - String path = GetAgentRepositoryFile(name); + String path = GetNodeRepositoryFile(name); if (Utility::PathExists(path) ) { Log(LogInformation, "cli") - << "Agent '" << name << "' exists already."; + << "Node '" << name << "' exists already."; } - Dictionary::Ptr agent = make_shared(); + Dictionary::Ptr node = make_shared(); - agent->Set("seen", Utility::GetTime()); - agent->Set("endpoint", name); - agent->Set("zone", name); - agent->Set("repository", Empty); + node->Set("seen", Utility::GetTime()); + node->Set("endpoint", name); + node->Set("zone", name); + node->Set("repository", Empty); - Utility::SaveJsonFile(path, agent); + Utility::SaveJsonFile(path, node); } -void AgentUtility::AddAgentSettings(const String& name, const String& host, +void NodeUtility::AddNodeSettings(const String& name, const String& host, const String& port, double log_duration) { Dictionary::Ptr settings = make_shared(); @@ -159,12 +159,12 @@ void AgentUtility::AddAgentSettings(const String& name, const String& host, settings->Set("port", port); settings->Set("log_duration", log_duration); - Utility::SaveJsonFile(GetAgentSettingsFile(name), settings); + Utility::SaveJsonFile(GetNodeSettingsFile(name), settings); } -void AgentUtility::RemoveAgent(const String& name) +void NodeUtility::RemoveNode(const String& name) { - String repoPath = GetAgentRepositoryFile(name); + String repoPath = GetNodeRepositoryFile(name); if (!Utility::PathExists(repoPath)) return; @@ -179,7 +179,7 @@ void AgentUtility::RemoveAgent(const String& name) << boost::errinfo_file_name(repoPath)); } - String settingsPath = GetAgentSettingsFile(name); + String settingsPath = GetNodeSettingsFile(name); if (Utility::PathExists(settingsPath)) { if (unlink(settingsPath.CStr()) < 0) { @@ -194,36 +194,36 @@ void AgentUtility::RemoveAgent(const String& name) } } -std::vector AgentUtility::GetAgents(void) +std::vector NodeUtility::GetNodes(void) { - std::vector agents; + std::vector nodes; Utility::Glob(GetRepositoryPath() + "/*.repo", - boost::bind(&AgentUtility::CollectAgents, _1, boost::ref(agents)), GlobFile); + boost::bind(&NodeUtility::CollectNodes, _1, boost::ref(nodes)), GlobFile); - return agents; + return nodes; } -Dictionary::Ptr AgentUtility::LoadAgentFile(const String& agent_file) +Dictionary::Ptr NodeUtility::LoadNodeFile(const String& node_file) { - Dictionary::Ptr agent = Utility::LoadJsonFile(agent_file); + Dictionary::Ptr node = Utility::LoadJsonFile(node_file); - if (!agent) + if (!node) return Dictionary::Ptr(); - String settingsFile = GetAgentSettingsFile(agent->Get("endpoint")); + String settingsFile = GetNodeSettingsFile(node->Get("endpoint")); if (Utility::PathExists(settingsFile)) - agent->Set("settings", Utility::LoadJsonFile(settingsFile)); + node->Set("settings", Utility::LoadJsonFile(settingsFile)); else - agent->Remove("settings"); + node->Remove("settings"); - return agent; + return node; } -void AgentUtility::CollectAgents(const String& agent_file, std::vector& agents) +void NodeUtility::CollectNodes(const String& agent_file, std::vector& agents) { - Dictionary::Ptr agent = LoadAgentFile(agent_file); + Dictionary::Ptr agent = LoadNodeFile(agent_file); if (!agent) return; @@ -232,10 +232,10 @@ void AgentUtility::CollectAgents(const String& agent_file, std::vector& endpoints, const String& nodename) +int NodeUtility::GenerateNodeIcingaConfig(const std::vector& endpoints, const String& nodename) { Array::Ptr my_config = make_shared(); @@ -305,12 +305,12 @@ int AgentUtility::GenerateAgentIcingaConfig(const std::vector& endp /* write the newly generated configuration */ String zones_path = Application::GetSysconfDir() + "/icinga2/zones.conf"; - AgentUtility::WriteAgentConfigObjects(zones_path, my_config); + NodeUtility::WriteNodeConfigObjects(zones_path, my_config); return 0; } -int AgentUtility::GenerateAgentMasterIcingaConfig(const String& nodename) +int NodeUtility::GenerateNodeMasterIcingaConfig(const String& nodename) { Array::Ptr my_config = make_shared(); @@ -336,7 +336,7 @@ int AgentUtility::GenerateAgentMasterIcingaConfig(const String& nodename) /* write the newly generated configuration */ String zones_path = Application::GetSysconfDir() + "/icinga2/zones.conf"; - AgentUtility::WriteAgentConfigObjects(zones_path, my_config); + NodeUtility::WriteNodeConfigObjects(zones_path, my_config); return 0; } @@ -345,7 +345,7 @@ int AgentUtility::GenerateAgentMasterIcingaConfig(const String& nodename) * This is ugly and requires refactoring into a generic config writer class. * TODO. */ -bool AgentUtility::WriteAgentConfigObjects(const String& filename, const Array::Ptr& objects) +bool NodeUtility::WriteNodeConfigObjects(const String& filename, const Array::Ptr& objects) { Log(LogInformation, "cli") << "Dumping config items to file '" << filename << "'."; @@ -393,12 +393,12 @@ bool AgentUtility::WriteAgentConfigObjects(const String& filename, const Array:: /* * Black/Whitelist helpers */ -String AgentUtility::GetBlackAndWhiteListPath(const String& type) +String NodeUtility::GetBlackAndWhiteListPath(const String& type) { - return AgentUtility::GetRepositoryPath() + "/" + type + ".list"; + return NodeUtility::GetRepositoryPath() + "/" + type + ".list"; } -Dictionary::Ptr AgentUtility::GetBlackAndWhiteList(const String& type) +Dictionary::Ptr NodeUtility::GetBlackAndWhiteList(const String& type) { String list_path = GetBlackAndWhiteListPath(type); @@ -411,7 +411,7 @@ Dictionary::Ptr AgentUtility::GetBlackAndWhiteList(const String& type) return lists; } -int AgentUtility::UpdateBlackAndWhiteList(const String& type, const String& agent_filter, const String& host_filter, const String& service_filter) +int NodeUtility::UpdateBlackAndWhiteList(const String& type, const String& agent_filter, const String& host_filter, const String& service_filter) { Dictionary::Ptr lists = GetBlackAndWhiteList(type); @@ -446,7 +446,7 @@ int AgentUtility::UpdateBlackAndWhiteList(const String& type, const String& agen return 0; } -int AgentUtility::RemoveBlackAndWhiteList(const String& type, const String& agent_filter, const String& host_filter, const String& service_filter) +int NodeUtility::RemoveBlackAndWhiteList(const String& type, const String& agent_filter, const String& host_filter, const String& service_filter) { Dictionary::Ptr lists = GetBlackAndWhiteList(type); @@ -477,7 +477,7 @@ int AgentUtility::RemoveBlackAndWhiteList(const String& type, const String& agen return 0; } -int AgentUtility::PrintBlackAndWhiteList(std::ostream& fp, const String& type) +int NodeUtility::PrintBlackAndWhiteList(std::ostream& fp, const String& type) { Dictionary::Ptr lists = GetBlackAndWhiteList(type); @@ -488,14 +488,14 @@ int AgentUtility::PrintBlackAndWhiteList(std::ostream& fp, const String& type) String agent_filter = kv.first; Dictionary::Ptr host_service = kv.second; - fp << "Agent " << type << ": '" << agent_filter << "' Host: '" + fp << "Node " << type << ": '" << agent_filter << "' Host: '" << host_service->Get("host_filter") << "' Service: '" << host_service->Get("service_filter") << "'.\n"; } return 0; } -bool AgentUtility::CheckAgainstBlackAndWhiteList(const String& type, const String& agent, const String& host, const String& service) +bool NodeUtility::CheckAgainstBlackAndWhiteList(const String& type, const String& agent, const String& host, const String& service) { Dictionary::Ptr lists = GetBlackAndWhiteList(type); @@ -513,12 +513,12 @@ bool AgentUtility::CheckAgainstBlackAndWhiteList(const String& type, const Strin service_filter = host_service->Get("service_filter"); Log(LogInformation, "cli") - << "Checking Agent '" << agent << "' =~ '" << agent_filter << "', host '" << host << "' =~ '" << host_filter + << "Checking Node '" << agent << "' =~ '" << agent_filter << "', host '" << host << "' =~ '" << host_filter << "', service '" << service << "' =~ '" << service_filter << "'."; if (Utility::Match(agent_filter, agent)) { Log(LogNotice, "cli") - << "Agent '" << agent << "' matches filter '" << agent_filter << "'"; + << "Node '" << agent << "' matches filter '" << agent_filter << "'"; if (Utility::Match(host_filter, host)) { Log(LogNotice, "cli") @@ -545,7 +545,7 @@ bool AgentUtility::CheckAgainstBlackAndWhiteList(const String& type, const Strin /* * We generally don't overwrite files without backup before */ -bool AgentUtility::CreateBackupFile(const String& target) +bool NodeUtility::CreateBackupFile(const String& target) { if (!Utility::PathExists(target)) return false; @@ -566,7 +566,7 @@ bool AgentUtility::CreateBackupFile(const String& target) return true; } -void AgentUtility::SerializeObject(std::ostream& fp, const String& name, const String& type, const Dictionary::Ptr& object) +void NodeUtility::SerializeObject(std::ostream& fp, const String& name, const String& type, const Dictionary::Ptr& object) { fp << "object " << type << " \"" << name << "\" {\n"; ObjectLock olock(object); @@ -581,7 +581,7 @@ void AgentUtility::SerializeObject(std::ostream& fp, const String& name, const S fp << "}\n\n"; } -void AgentUtility::FormatValue(std::ostream& fp, const Value& val) +void NodeUtility::FormatValue(std::ostream& fp, const Value& val) { if (val.IsObjectType()) { FormatArray(fp, val); @@ -596,7 +596,7 @@ void AgentUtility::FormatValue(std::ostream& fp, const Value& val) fp << Convert::ToString(val); } -void AgentUtility::FormatArray(std::ostream& fp, const Array::Ptr& arr) +void NodeUtility::FormatArray(std::ostream& fp, const Array::Ptr& arr) { bool first = true; @@ -620,7 +620,7 @@ void AgentUtility::FormatArray(std::ostream& fp, const Array::Ptr& arr) fp << "]"; } -void AgentUtility::UpdateConstant(const String& name, const String& value) +void NodeUtility::UpdateConstant(const String& name, const String& value) { String constantsFile = Application::GetSysconfDir() + "/icinga2/constants.conf"; String tempFile = constantsFile + ".tmp"; diff --git a/lib/cli/agentutility.hpp b/lib/cli/nodeutility.hpp similarity index 71% rename from lib/cli/agentutility.hpp rename to lib/cli/nodeutility.hpp index 6f6f857c6..514fc161a 100644 --- a/lib/cli/agentutility.hpp +++ b/lib/cli/nodeutility.hpp @@ -33,32 +33,32 @@ namespace icinga /** * @ingroup cli */ -class AgentUtility +class NodeUtility { public: static String GetRepositoryPath(void); - static String GetAgentRepositoryFile(const String& name); - static String GetAgentSettingsFile(const String& name); - static std::vector GetAgentCompletionSuggestions(const String& word); + static String GetNodeRepositoryFile(const String& name); + static String GetNodeSettingsFile(const String& name); + static std::vector GetNodeCompletionSuggestions(const String& word); - static void PrintAgents(std::ostream& fp); - static void PrintAgentsJson(std::ostream& fp); - static void PrintAgentRepository(std::ostream& fp, const Dictionary::Ptr& repository); - static void AddAgent(const String& name); - static void AddAgentSettings(const String& name, const String& host, const String& port, double log_duration); - static void RemoveAgent(const String& name); + static void PrintNodes(std::ostream& fp); + static void PrintNodesJson(std::ostream& fp); + static void PrintNodeRepository(std::ostream& fp, const Dictionary::Ptr& repository); + static void AddNode(const String& name); + static void AddNodeSettings(const String& name, const String& host, const String& port, double log_duration); + static void RemoveNode(const String& name); - static std::vector GetAgents(void); + static std::vector GetNodes(void); static bool CreateBackupFile(const String& target); - static bool WriteAgentConfigObjects(const String& filename, const Array::Ptr& objects); + static bool WriteNodeConfigObjects(const String& filename, const Array::Ptr& objects); static void UpdateConstant(const String& name, const String& value); /* agent setup helpers */ - static int GenerateAgentIcingaConfig(const std::vector& endpoints, const String& nodename); - static int GenerateAgentMasterIcingaConfig(const String& nodename); + static int GenerateNodeIcingaConfig(const std::vector& endpoints, const String& nodename); + static int GenerateNodeMasterIcingaConfig(const String& nodename); /* black/whitelist */ static String GetBlackAndWhiteListPath(const String& type); @@ -72,10 +72,10 @@ public: static bool CheckAgainstBlackAndWhiteList(const String& type, const String& agent, const String& host, const String& service); private: - AgentUtility(void); - static bool RemoveAgentFile(const String& path); - static Dictionary::Ptr LoadAgentFile(const String& agent_file); - static void CollectAgents(const String& agent_file, std::vector& agents); + NodeUtility(void); + static bool RemoveNodeFile(const String& path); + static Dictionary::Ptr LoadNodeFile(const String& agent_file); + static void CollectNodes(const String& agent_file, std::vector& agents); static void SerializeObject(std::ostream& fp, const String& name, const String& type, const Dictionary::Ptr& object); static void FormatValue(std::ostream& fp, const Value& val); diff --git a/lib/cli/agentwizardcommand.cpp b/lib/cli/nodewizardcommand.cpp similarity index 94% rename from lib/cli/agentwizardcommand.cpp rename to lib/cli/nodewizardcommand.cpp index a579077e6..676dcbd99 100644 --- a/lib/cli/agentwizardcommand.cpp +++ b/lib/cli/nodewizardcommand.cpp @@ -17,8 +17,8 @@ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * ******************************************************************************/ -#include "cli/agentwizardcommand.hpp" -#include "cli/agentutility.hpp" +#include "cli/nodewizardcommand.hpp" +#include "cli/nodeutility.hpp" #include "cli/pkiutility.hpp" #include "cli/featureutility.hpp" #include "base/logger.hpp" @@ -38,24 +38,24 @@ using namespace icinga; namespace po = boost::program_options; -REGISTER_CLICOMMAND("agent/wizard", AgentWizardCommand); +REGISTER_CLICOMMAND("node/wizard", NodeWizardCommand); -String AgentWizardCommand::GetDescription(void) const +String NodeWizardCommand::GetDescription(void) const { return "Wizard for Icinga 2 agent setup."; } -String AgentWizardCommand::GetShortDescription(void) const +String NodeWizardCommand::GetShortDescription(void) const { return "wizard for agent setup"; } -ImpersonationLevel AgentWizardCommand::GetImpersonationLevel(void) const +ImpersonationLevel NodeWizardCommand::GetImpersonationLevel(void) const { return ImpersonateRoot; } -int AgentWizardCommand::GetMaxArguments(void) const +int NodeWizardCommand::GetMaxArguments(void) const { return -1; } @@ -65,7 +65,7 @@ int AgentWizardCommand::GetMaxArguments(void) const * * @returns An exit status. */ -int AgentWizardCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const +int NodeWizardCommand::Run(const boost::program_options::variables_map& vm, const std::vector& ap) const { /* * The wizard will get all information from the user, @@ -112,7 +112,7 @@ int AgentWizardCommand::Run(const boost::program_options::variables_map& vm, con if (is_agent_setup) { /* agent setup part */ - std::cout << "Starting the Agent setup routine...\n"; + std::cout << "Starting the Node setup routine...\n"; /* CN */ std::cout << "Please specifiy the common name (CN) [" << Utility::GetFQDN() << "]: "; @@ -348,7 +348,7 @@ wizard_ticket: FeatureUtility::EnableFeatures(enable); String apipath = FeatureUtility::GetFeaturesAvailablePath() + "/api.conf"; - AgentUtility::CreateBackupFile(apipath); + NodeUtility::CreateBackupFile(apipath); String apipathtmp = apipath + ".tmp"; @@ -388,7 +388,7 @@ wizard_ticket: /* apilistener config */ std::cout << "Generating local zones.conf.\n"; - AgentUtility::GenerateAgentIcingaConfig(endpoints, cn); + NodeUtility::GenerateNodeIcingaConfig(endpoints, cn); if (cn != Utility::GetFQDN()) { Log(LogWarning, "cli") @@ -397,9 +397,9 @@ wizard_ticket: std::cout << "Updating constants.conf\n"; - AgentUtility::CreateBackupFile(Application::GetSysconfDir() + "/icinga2/constants.conf"); + NodeUtility::CreateBackupFile(Application::GetSysconfDir() + "/icinga2/constants.conf"); - AgentUtility::UpdateConstant("NodeName", cn); + NodeUtility::UpdateConstant("NodeName", cn); } else { /* master setup */ @@ -493,7 +493,7 @@ wizard_ticket: << "Cannot set ownership for user '" << user << "' group '" << group << "' on file '" << csr << "'. Verify it yourself!"; } - AgentUtility::GenerateAgentMasterIcingaConfig(cn); + NodeUtility::GenerateNodeMasterIcingaConfig(cn); /* apilistener config */ std::cout << "Please specify the API bind host/port (optional):\n"; @@ -520,7 +520,7 @@ wizard_ticket: FeatureUtility::EnableFeatures(enable); String apipath = FeatureUtility::GetFeaturesAvailablePath() + "/api.conf"; - AgentUtility::CreateBackupFile(apipath); + NodeUtility::CreateBackupFile(apipath); String apipathtmp = apipath + ".tmp"; @@ -565,13 +565,13 @@ wizard_ticket: Log(LogInformation, "cli", "Updating constants.conf."); - AgentUtility::CreateBackupFile(Application::GetSysconfDir() + "/icinga2/constants.conf"); + NodeUtility::CreateBackupFile(Application::GetSysconfDir() + "/icinga2/constants.conf"); - AgentUtility::UpdateConstant("NodeName", cn); + NodeUtility::UpdateConstant("NodeName", cn); String salt = RandomString(16); - AgentUtility::UpdateConstant("TicketSalt", salt); + NodeUtility::UpdateConstant("TicketSalt", salt); Log(LogInformation, "cli") << "Edit the api feature config file '" << apipath << "' and set a secure 'ticket_salt' attribute."; diff --git a/lib/cli/agentwizardcommand.hpp b/lib/cli/nodewizardcommand.hpp similarity index 95% rename from lib/cli/agentwizardcommand.hpp rename to lib/cli/nodewizardcommand.hpp index 69df8a3da..daf257dc2 100644 --- a/lib/cli/agentwizardcommand.hpp +++ b/lib/cli/nodewizardcommand.hpp @@ -30,10 +30,10 @@ namespace icinga * * @ingroup cli */ -class AgentWizardCommand : public CLICommand +class NodeWizardCommand : public CLICommand { public: - DECLARE_PTR_TYPEDEFS(AgentWizardCommand); + DECLARE_PTR_TYPEDEFS(NodeWizardCommand); virtual String GetDescription(void) const; virtual String GetShortDescription(void) const;