summaryrefslogtreecommitdiffstats
path: root/ms/py-executor/client.py
diff options
context:
space:
mode:
authorBrinda Santh <bs2796@att.com>2019-10-22 20:47:12 -0400
committerBrinda Santh <bs2796@att.com>2019-10-22 20:47:12 -0400
commita5ceb2485df10aa4987c64975d7200ff090c5890 (patch)
tree15b22424eccfd78996d717873a6a1517e2820a4e /ms/py-executor/client.py
parent910fa69e65b3d151ef2bdbbf90fdcc31cfa01008 (diff)
Py executor grpc TLS server authentication.
Issue-ID: CCSDK-1854 Signed-off-by: Brinda Santh <bs2796@att.com> Change-Id: I72b3deb7976e7d3e44478c497a46b9b4ac428623
Diffstat (limited to 'ms/py-executor/client.py')
-rw-r--r--ms/py-executor/client.py67
1 files changed, 67 insertions, 0 deletions
diff --git a/ms/py-executor/client.py b/ms/py-executor/client.py
new file mode 100644
index 000000000..c5bdc43c8
--- /dev/null
+++ b/ms/py-executor/client.py
@@ -0,0 +1,67 @@
+# Copyright © 2018-2019 AT&T Intellectual Property.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import grpc
+from blueprints_grpc.proto.BluePrintProcessing_pb2_grpc import BluePrintProcessingServiceStub
+from blueprints_grpc.proto.BluePrintProcessing_pb2 import ExecutionServiceInput
+from blueprints_grpc.proto.BluePrintCommon_pb2 import CommonHeader, ActionIdentifiers
+
+
+def generate_messages():
+ commonHeader = CommonHeader()
+ commonHeader.requestId = "1234"
+ commonHeader.subRequestId = "1234-1"
+ commonHeader.originatorId = "CDS"
+
+ actionIdentifiers = ActionIdentifiers()
+ actionIdentifiers.blueprintName = "sample-cba"
+ actionIdentifiers.blueprintVersion = "1.0.0"
+ actionIdentifiers.actionName = "SampleScript"
+
+ input = ExecutionServiceInput(commonHeader=commonHeader, actionIdentifiers=actionIdentifiers)
+
+ commonHeader2 = CommonHeader()
+ commonHeader2.requestId = "1235"
+ commonHeader2.subRequestId = "1234-2"
+ commonHeader2.originatorId = "CDS"
+ input2 = ExecutionServiceInput(commonHeader=commonHeader2, actionIdentifiers=actionIdentifiers)
+
+ inputs = [input, input2]
+ for input in inputs:
+ print(input)
+ yield input
+
+
+if __name__ == '__main__':
+ with open('py-executor-chain.pem', 'rb') as f:
+ creds = grpc.ssl_channel_credentials(f.read())
+ channel = grpc.secure_channel('localhost:50052', creds)
+ stub = BluePrintProcessingServiceStub(channel)
+
+ messages = generate_messages()
+ responses = stub.process(messages)
+ for response in responses:
+ print(response)