aboutsummaryrefslogtreecommitdiffstats
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/org/onap/clamp/loop/components/external/PolicyComponent.java9
-rw-r--r--src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java21
-rw-r--r--src/main/resources/clds/camel/rest/clamp-api-v2.xml49
-rw-r--r--src/main/resources/clds/camel/routes/loop-flows.xml26
-rw-r--r--src/main/resources/clds/camel/routes/policy-flows.xml95
-rw-r--r--src/main/resources/clds/json-schema/operational_policies/operational_policy.json152
6 files changed, 6 insertions, 346 deletions
diff --git a/src/main/java/org/onap/clamp/loop/components/external/PolicyComponent.java b/src/main/java/org/onap/clamp/loop/components/external/PolicyComponent.java
index 227f40a72..4ea5b7118 100644
--- a/src/main/java/org/onap/clamp/loop/components/external/PolicyComponent.java
+++ b/src/main/java/org/onap/clamp/loop/components/external/PolicyComponent.java
@@ -85,13 +85,6 @@ public class PolicyComponent extends ExternalComponent {
updatePdpGroupMap(opPolicy.getPdpGroup(), opPolicy.getPdpSubgroup(),
opPolicy.getName(),
"1.0.0", pdpGroupMap);
- if (opPolicy.isLegacy()) {
- for (String guardName:opPolicy.createGuardPolicyPayloads().keySet()) {
- updatePdpGroupMap(opPolicy.getPdpGroup(), opPolicy.getPdpSubgroup(),
- guardName,
- "1.0.0", pdpGroupMap);
- }
- }
}
for (MicroServicePolicy msPolicy : loop.getMicroServicePolicies()) {
@@ -186,7 +179,7 @@ public class PolicyComponent extends ExternalComponent {
/**
* This is a method that expect the results of the queries getPolicy and
- * getPolicyDeployed for a unique policy (op,guard, config, etc ...). It
+ * getPolicyDeployed for a unique policy (op, config, etc ...). It
* re-computes the global policy state for each policy results given. Therefore
* this method is called multiple times from the camel route and must be reset
* for a new global policy state retrieval. The state to compute the global
diff --git a/src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java b/src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java
index 1e721ce24..b4020c18e 100644
--- a/src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java
+++ b/src/main/java/org/onap/clamp/policy/operational/OperationalPolicy.java
@@ -293,25 +293,4 @@ public class OperationalPolicy extends Policy implements Serializable {
return super.createPolicyPayload();
}
}
-
- /**
- * Return a map containing all Guard policies indexed by Guard policy Name.
- *
- * @return The Guards map
- */
- public Map<String, String> createGuardPolicyPayloads() {
- Map<String, String> result = new HashMap<>();
-
- if (this.getConfigurationsJson() != null) {
- JsonElement guardsList = this.getConfigurationsJson().get("guard_policies");
- if (guardsList != null) {
- for (JsonElement guardElem : guardsList.getAsJsonArray()) {
- result.put(guardElem.getAsJsonObject().get("policy-id").getAsString(),
- new GsonBuilder().create().toJson(guardElem));
- }
- }
- }
- logger.info("Guard policy payload: " + result);
- return result;
- }
}
diff --git a/src/main/resources/clds/camel/rest/clamp-api-v2.xml b/src/main/resources/clds/camel/rest/clamp-api-v2.xml
index 879c9b707..88d582605 100644
--- a/src/main/resources/clds/camel/rest/clamp-api-v2.xml
+++ b/src/main/resources/clds/camel/rest/clamp-api-v2.xml
@@ -157,7 +157,7 @@
<to
uri="bean:org.onap.clamp.loop.LoopController?method=updateOperationalPolicies(${header.loopName},${header.OperationalPoliciesArray})" />
<to
- uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Operational and Guard policies UPDATED','INFO',${exchangeProperty[loopObject]})" />
+ uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Operational policies UPDATED','INFO',${exchangeProperty[loopObject]})" />
<to
uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
<doCatch>
@@ -532,29 +532,6 @@
<to uri="direct:delete-policy" />
<to uri="direct:create-policy" />
- <choice>
- <when>
- <simple>${exchangeProperty['policy'].isLegacy()} == true
- </simple>
- <log loggingLevel="INFO"
- message="Processing all GUARD policies (LEGACY) defined in loop ${exchangeProperty[loopObject].getName()}" />
- <split>
- <simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
- </simple>
- <setProperty propertyName="guardPolicy">
- <simple>${body}</simple>
- </setProperty>
- <log loggingLevel="INFO"
- message="Processing Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
-
- <setProperty propertyName="raiseHttpExceptionFlag">
- <simple resultType="java.lang.Boolean">false</simple>
- </setProperty>
- <to uri="direct:delete-guard-policy" />
- <to uri="direct:create-guard-policy" />
- </split>
- </when>
- </choice>
</split>
<delay>
@@ -634,27 +611,6 @@
<simple resultType="java.lang.Boolean">false</simple>
</setProperty>
<to uri="direct:delete-policy" />
- <choice>
- <when>
- <simple>${exchangeProperty['policy'].isLegacy()} == true
- </simple>
- <log loggingLevel="INFO"
- message="Deleting all GUARD policies (LEGACY) defined in loop ${exchangeProperty[loopObject].getName()}" />
- <split>
- <simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
- </simple>
- <setProperty propertyName="guardPolicy">
- <simple>${body}</simple>
- </setProperty>
- <log loggingLevel="INFO"
- message="Deleting Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
- <setProperty propertyName="raiseHttpExceptionFlag">
- <simple resultType="java.lang.Boolean">false</simple>
- </setProperty>
- <to uri="direct:delete-guard-policy" />
- </split>
- </when>
- </choice>
</split>
<to
uri="bean:org.onap.clamp.loop.LoopController?method=deleteLoop(${header.loopName})" />
@@ -759,8 +715,9 @@
<constant>500</constant>
</setHeader>
<setBody>
- <simple>ADD Operational policy request FAILED</simple>
+ <simple>ADD Operational policy request FAILED for loop: ${header.loopName}, ${exception.message}"</simple>
</setBody>
+
</doCatch>
</doTry>
</route>
diff --git a/src/main/resources/clds/camel/routes/loop-flows.xml b/src/main/resources/clds/camel/routes/loop-flows.xml
index 2f4d9c8cf..691656d81 100644
--- a/src/main/resources/clds/camel/routes/loop-flows.xml
+++ b/src/main/resources/clds/camel/routes/loop-flows.xml
@@ -87,32 +87,8 @@
<constant>null</constant>
</setBody>
<log loggingLevel="INFO"
- message="Processing Micro Service Policy: ${exchangeProperty[policyName]} of type ${exchangeProperty[policyType]}" />
+ message="Processing Operational Policy: ${exchangeProperty[policyName]} of type ${exchangeProperty[policyType]}" />
<to uri="direct:verify-one-policy" />
- <log loggingLevel="INFO"
- message="Processing all GUARD policies defined in loop ${exchangeProperty[loopObject].getName()}" />
- <split>
- <simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
- </simple>
- <setProperty propertyName="policyName">
- <simple>${body.getKey()}</simple>
- </setProperty>
- <setProperty propertyName="policyType">
- <simple>onap.policies.controlloop.Guard</simple>
- </setProperty>
- <setProperty propertyName="policyTypeVersion">
- <simple>1.0.0</simple>
- </setProperty>
- <setProperty propertyName="policyVersion">
- <simple>1</simple>
- </setProperty>
- <setBody>
- <constant>null</constant>
- </setBody>
- <log loggingLevel="INFO"
- message="Processing Guard Policy: ${exchangeProperty[policyName]} of type ${exchangeProperty[policyType]}" />
- <to uri="direct:verify-one-policy" />
- </split>
</split>
<setProperty propertyName="policyState">
<simple> ${exchangeProperty[policyComponent].getState()}
diff --git a/src/main/resources/clds/camel/routes/policy-flows.xml b/src/main/resources/clds/camel/routes/policy-flows.xml
index 1731308ee..f597bdc08 100644
--- a/src/main/resources/clds/camel/routes/policy-flows.xml
+++ b/src/main/resources/clds/camel/routes/policy-flows.xml
@@ -313,101 +313,6 @@
</doFinally>
</doTry>
</route>
- <route id="create-guard-policy">
- <from uri="direct:create-guard-policy"/>
- <doTry>
- <log loggingLevel="INFO"
- message="Creating Guard Policy: ${exchangeProperty[guardPolicy].getKey()}"/>
- <to
- uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Guard Policy')"/>
- <setBody>
- <simple>${exchangeProperty[guardPolicy].getValue()}
- </simple>
- </setBody>
- <setHeader headerName="CamelHttpMethod">
- <constant>POST</constant>
- </setHeader>
- <setHeader headerName="Content-Type">
- <constant>application/json</constant>
- </setHeader>
- <setHeader headerName="X-ONAP-RequestID">
- <simple>${exchangeProperty[X-ONAP-RequestID]}
- </simple>
- </setHeader>
- <setHeader headerName="X-ONAP-InvocationID">
- <simple>${exchangeProperty[X-ONAP-InvocationID]}
- </simple>
- </setHeader>
- <setHeader headerName="X-ONAP-PartnerName">
- <simple>${exchangeProperty[X-ONAP-PartnerName]}
- </simple>
- </setHeader>
- <log loggingLevel="INFO"
- message="Endpoint to create guard policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies"></log>
- <toD
- uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
- <doFinally>
- <to uri="direct:reset-raise-http-exception-flag"/>
- <to
- uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
- <setProperty propertyName="logMessage">
- <simple>${exchangeProperty[guardPolicy].getKey()} creation status
- </simple>
- </setProperty>
- <setProperty propertyName="logComponent">
- <simple>POLICY</simple>
- </setProperty>
- <to uri="direct:dump-loop-log-http-response"/>
- </doFinally>
- </doTry>
- </route>
-
- <route id="delete-guard-policy">
- <from uri="direct:delete-guard-policy"/>
- <doTry>
- <log loggingLevel="INFO"
- message="Deleting Guard Policy: ${exchangeProperty[guardPolicy].getKey()}"/>
- <to
- uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Guard Policy')"/>
- <setBody>
- <constant>null</constant>
- </setBody>
- <setHeader headerName="CamelHttpMethod">
- <constant>DELETE</constant>
- </setHeader>
- <setHeader headerName="X-ONAP-RequestID">
- <simple>${exchangeProperty[X-ONAP-RequestID]}
- </simple>
- </setHeader>
- <setHeader headerName="X-ONAP-InvocationID">
- <simple>${exchangeProperty[X-ONAP-InvocationID]}
- </simple>
- </setHeader>
- <setHeader headerName="X-ONAP-PartnerName">
- <simple>${exchangeProperty[X-ONAP-PartnerName]}
- </simple>
- </setHeader>
- <log loggingLevel="INFO"
- message="Endpoint to delete guard policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${exchangeProperty[guardPolicy].getKey()}/versions/1"></log>
- <toD
- uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${exchangeProperty[guardPolicy].getKey()}/versions/1?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
-
- <doFinally>
- <to uri="direct:reset-raise-http-exception-flag"/>
- <to
- uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
- <setProperty propertyName="logMessage">
- <simple>${exchangeProperty[guardPolicy].getKey()} removal status
- </simple>
- </setProperty>
- <setProperty propertyName="logComponent">
- <simple>POLICY</simple>
- </setProperty>
- <to uri="direct:dump-loop-log-http-response"/>
- </doFinally>
- </doTry>
- </route>
-
<route id="add-all-to-active-pdp-group">
<from uri="direct:add-all-to-active-pdp-group"/>
<doTry>
diff --git a/src/main/resources/clds/json-schema/operational_policies/operational_policy.json b/src/main/resources/clds/json-schema/operational_policies/operational_policy.json
index 7214b022c..973028316 100644
--- a/src/main/resources/clds/json-schema/operational_policies/operational_policy.json
+++ b/src/main/resources/clds/json-schema/operational_policies/operational_policy.json
@@ -2,8 +2,7 @@
"type": "object",
"title": "Configuration",
"required": [
- "operational_policy",
- "guard_policies"
+ "operational_policy"
],
"properties": {
"operational_policy": {
@@ -315,155 +314,6 @@
}
}
}
- },
- "guard_policies": {
- "type": "array",
- "format": "tabs-top",
- "title": "Associated Guard policies",
- "items": {
- "headerTemplate": "{{self.policy-id}} - {{self.content.recipe}}",
- "anyOf": [
- {
- "title": "Guard MinMax",
- "type": "object",
- "properties": {
- "policy-id": {
- "type": "string",
- "default": "guard.minmax.new",
- "pattern": "^(guard.minmax\\..*)$"
- },
- "content": {
- "properties": {
- "actor": {
- "type": "string",
- "enum": [
- "APPC",
- "SO",
- "VFC",
- "SDNC",
- "SDNR"
- ]
- },
- "recipe": {
- "type": "string",
- "enum": [
- "Restart",
- "Rebuild",
- "Migrate",
- "Health-Check",
- "ModifyConfig",
- "VF Module Create",
- "VF Module Delete",
- "Reroute"
- ]
- },
- "targets": {
- "type": "string",
- "default": ".*"
- },
- "clname": {
- "type": "string",
- "template": "{{loopName}}",
- "watch": {
- "loopName": "operational_policy.controlLoop.controlLoopName"
- }
- },
- "guardActiveStart": {
- "type": "string",
- "default": "00:00:00Z"
- },
- "guardActiveEnd": {
- "type": "string",
- "default": "10:00:00Z"
- },
- "min": {
- "type": "string",
- "default": "0"
- },
- "max": {
- "type": "string",
- "default": "1"
- }
- }
- }
- }
- },
- {
- "title": "Guard Frequency",
- "type": "object",
- "properties": {
- "policy-id": {
- "type": "string",
- "default": "guard.frequency.new",
- "pattern": "^(guard.frequency\\..*)$"
- },
- "content": {
- "properties": {
- "actor": {
- "type": "string",
- "enum": [
- "APPC",
- "SO",
- "VFC",
- "SDNC",
- "SDNR"
- ]
- },
- "recipe": {
- "type": "string",
- "enum": [
- "Restart",
- "Rebuild",
- "Migrate",
- "Health-Check",
- "ModifyConfig",
- "VF Module Create",
- "VF Module Delete",
- "Reroute"
- ]
- },
- "targets": {
- "type": "string",
- "default": ".*"
- },
- "clname": {
- "type": "string",
- "template": "{{loopName}}",
- "watch": {
- "loopName": "operational_policy.controlLoop.controlLoopName"
- }
- },
- "guardActiveStart": {
- "type": "string",
- "default": "00:00:00Z"
- },
- "guardActiveEnd": {
- "type": "string",
- "default": "10:00:00Z"
- },
- "limit": {
- "type": "string"
- },
- "timeWindow": {
- "type": "string"
- },
- "timeUnits": {
- "type": "string",
- "enum": [
- "minute",
- "hour",
- "day",
- "week",
- "month",
- "year"
- ]
- }
- }
- }
- }
- }
- ]
- }
}
}
}