Change declarative policy initialization

This commit is contained in:
Ned Wright 2023-12-25 16:45:45 +00:00
parent 3282774432
commit 3084641737
4 changed files with 10 additions and 4 deletions

View File

@ -80,6 +80,7 @@ public:
std::string getUpdate(CheckUpdateRequest &request) override;
bool shouldApplyPolicy() override;
void turnOffApplyPolicyFlag() override;
void turnOnApplyPolicyFlag() override;
std::string getCurrPolicy() override { return curr_policy; }

View File

@ -23,6 +23,7 @@ public:
virtual std::string getCurrPolicy() = 0;
virtual void turnOffApplyPolicyFlag() = 0;
virtual void turnOnApplyPolicyFlag() = 0;
protected:
virtual ~I_DeclarativePolicy() {}

View File

@ -221,10 +221,7 @@ private:
auto update_communication = Singleton::Consume<I_UpdateCommunication>::by<OrchestrationComp>();
auto agent_mode = getOrchestrationMode();
auto policy_mgmt_mode = getSettingWithDefault<string>("management", "profileManagedMode");
if (agent_mode == OrchestrationMode::HYBRID || policy_mgmt_mode == "declarative") {
update_communication->authenticateAgent();
return Maybe<void>();
}
bool declarative = agent_mode == OrchestrationMode::HYBRID || policy_mgmt_mode == "declarative";
bool enforce_policy_flag = false;
Maybe<OrchestrationPolicy> maybe_policy = genError("Empty policy");
@ -274,6 +271,7 @@ private:
if (enforce_policy_flag) {
// Trying to create the Orchestration policy from the general policy file
maybe_policy = enforceOrchestrationPolicy();
if (declarative) Singleton::Consume<I_DeclarativePolicy>::from<DeclarativePolicyUtils>()->turnOnApplyPolicyFlag();
if (!maybe_policy.ok()) {
return genError(maybe_policy.getErr());
}

View File

@ -57,6 +57,12 @@ DeclarativePolicyUtils::turnOffApplyPolicyFlag()
should_apply_policy = false;
}
void
DeclarativePolicyUtils::turnOnApplyPolicyFlag()
{
should_apply_policy = true;
}
Maybe<string>
DeclarativePolicyUtils::getLocalPolicyChecksum()
{