Fix registration of types for DMaaP Mediator
[nonrtric.git] / docker-compose / data / prepareDmaapMsg.sh
1 #!/bin/bash
2
3 #  ============LICENSE_START===============================================
4 #  Copyright (C) 2020 Nordix Foundation. All rights reserved.
5 #  ========================================================================
6 #  Licensed under the Apache License, Version 2.0 (the "License");
7 #  you may not use this file except in compliance with the License.
8 #  You may obtain a copy of the License at
9 #
10 #       http://www.apache.org/licenses/LICENSE-2.0
11 #
12 #  Unless required by applicable law or agreed to in writing, software
13 #  distributed under the License is distributed on an "AS IS" BASIS,
14 #  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 #  See the License for the specific language governing permissions and
16 #  limitations under the License.
17 #  ============LICENSE_END=================================================
18 #
19
20 # The scripts in data/ will generate some dummy data in the running system.
21 # It will create:
22 # one policy type in a1-sim-OSC
23 # one service in policy agent
24 # one policy in a1-sim-OSC
25 # one policy in a1-sim-STD
26
27 # Run command:
28 # ./prepareDmaapMsg.sh [dmaap-mr port] [a1-sim-OSC port] [a1-sim-STD port] [http/https]
29
30 dmaa_mr_port=${1:-3904}
31 a1_sim_OSC_port=${2:-30001}
32 a1_sim_STD_port=${3:-30003}
33 a1_sim_STD_v1_port=${4:-30005}
34 httpx=${5:-"http"}
35 SHELL_FOLDER=$(cd "$(dirname "$0")";pwd)
36
37 echo "using dmaap-mr port: "$dmaa_mr_port
38 echo "using a1-sim-OSC port: "$a1_sim_OSC_port
39 echo "using a1-sim-STD port: "$a1_sim_STD_port
40 echo "using a1-sim-STD-v1 port: "$a1_sim_STD_v1_port
41 echo "using protocol: "$httpx
42 echo -e "\n"
43
44 echo "dmaap-mr topics:"
45 curl -skw %{http_code} $httpx://localhost:$dmaa_mr_port/topics/listAll
46 echo -e "\n"
47
48 echo "dmaap-mr create topic A1-POLICY-AGENT-READ:"
49 curl -skw %{http_code} -X POST "$httpx://localhost:$dmaa_mr_port/topics/create" -H  "accept: application/json" -H  "Content-Type: application/json" -d "{  \"topicName\": \"A1-POLICY-AGENT-READ\",  \"topicDescription\": \"test topic\",  \"partitionCount\": 1,  \"replicationCount\": 1,  \"transactionEnabled\": \"false\"}"
50 echo -e "\n"
51
52 echo "dmaap-mr create topic A1-POLICY-AGENT-WRITE:"
53 curl -skw %{http_code} -X POST "$httpx://localhost:$dmaa_mr_port/topics/create" -H  "accept: application/json" -H  "Content-Type: application/json" -d "{  \"topicName\": \"A1-POLICY-AGENT-WRITE\",  \"topicDescription\": \"test topic\",  \"partitionCount\": 1,  \"replicationCount\": 1,  \"transactionEnabled\": \"false\"}"
54 echo -e "\n"
55
56 echo "dmaap-mr topics:"
57 curl -skw %{http_code} $httpx://localhost:$dmaa_mr_port/topics/listAll
58 echo -e "\n"
59
60 echo "ric1 version:"
61 curl -skw %{http_code} $httpx://localhost:$a1_sim_OSC_port/counter/interface
62 echo -e "\n"
63
64 echo "ric2 version:"
65 curl -skw %{http_code} $httpx://localhost:$a1_sim_STD_port/counter/interface
66 echo -e "\n"
67
68 echo "create policy type 1 to ric1:"
69 curl -X PUT -skw %{http_code} $httpx://localhost:$a1_sim_OSC_port/policytype?id=1 -H Content-Type:application/json --data-binary @${SHELL_FOLDER}/testdata/OSC/policy_type.json
70 echo -e "\n"
71
72 echo "create policy type 2 to ric3:"
73 curl -skw %{http_code} $httpx://localhost:$a1_sim_STD_v1_port/policytype?id=2 -X PUT -H Accept:application/json -H Content-Type:application/json -H X-Requested-With:XMLHttpRequest --data-binary @${SHELL_FOLDER}/testdata/v2/policy_type.json
74 echo -e "\n"
75
76 for i in {1..12}; do
77         echo "policy types from policy agent:"
78     curlString="curl -skw %{http_code} $httpx://localhost:8081/policy_types"
79     res=$($curlString)
80     echo "$res"
81     expect="[\"\",\"1\",\"2\"]200"
82     if [ "$res" == "$expect" ]; then
83         echo -e "\n"
84         break;
85     else
86         sleep $i
87     fi
88 done
89
90 ## Using PMS v1 interface
91 echo "create service 1 to policy agent via dmaap_mr:"
92 curl -k -X POST -sw %{http_code} -H accept:application/json -H Content-Type:application/json "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-READ/" --data-binary @${SHELL_FOLDER}/testdata/dmaap/v1/dmaap-msg-service-create.json
93 echo -e "\n"
94
95 echo "get result from mr of previous request:"
96 curl -X GET "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-WRITE/users/policy-agent?timeout=15000&limit=100" -H "accept: application/json" -H "Content-Type: application/json" | jq .
97 echo -e "\n"
98
99 echo "create policies to ric1 & ric2 & ric3 with type1 and service1 via dmaa_mr:"
100 curl -k -X POST -sw %{http_code} -H accept:application/json -H Content-Type:application/json "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-READ/" --data-binary @${SHELL_FOLDER}/testdata/dmaap/v1/dmaap-msg-policy-create.json
101 echo -e "\n"
102
103 echo "get result from mr of previous request:"
104 curl -X GET "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-WRITE/users/policy-agent?timeout=15000&limit=100" -H "accept: application/json" -H "Content-Type: application/json" | jq .
105 echo -e "\n"
106
107 echo "get policy from policy agent via dmaap_mr:"
108 curl -k -X POST -sw %{http_code} -H accept:application/json -H Content-Type:application/json "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-READ/" --data-binary @${SHELL_FOLDER}/testdata/dmaap/v1/dmaap-msg-policy-get.json
109 echo -e "\n"
110
111 echo "get result from mr of previous request:"
112 curl -X GET "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-WRITE/users/policy-agent?timeout=15000&limit=100" -H "accept: application/json" -H "Content-Type: application/json" | jq .
113 echo -e "\n"
114
115 ## Using PMS v2 interface
116 echo "create service 2 to policy agent via dmaap_mr:"
117 curl -k -X POST -sw %{http_code} -H accept:application/json -H Content-Type:application/json "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-READ/" --data-binary @${SHELL_FOLDER}/testdata/dmaap/v2/dmaap-msg-service-create.json
118 echo -e "\n"
119
120 echo "get result from mr of previous request:"
121 curl -X GET "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-WRITE/users/policy-agent?timeout=15000&limit=100" -H "accept: application/json" -H "Content-Type: application/json" | jq .
122 echo -e "\n"
123
124 echo "create policies to ric1 & ric2 & ric3 with type1 and service1 via dmaa_mr:"
125 curl -k -X POST -sw %{http_code} -H accept:application/json -H Content-Type:application/json "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-READ/" --data-binary @${SHELL_FOLDER}/testdata/dmaap/v2/dmaap-msg-policy-create.json
126 echo -e "\n"
127
128 echo "get result from mr of previous request:"
129 curl -X GET "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-WRITE/users/policy-agent?timeout=15000&limit=100" -H "accept: application/json" -H "Content-Type: application/json" | jq .
130 echo -e "\n"
131
132 echo "get policy from policy agent via dmaap_mr:"
133 curl -k -X POST -sw %{http_code} -H accept:application/json -H Content-Type:application/json "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-READ/" --data-binary @${SHELL_FOLDER}/testdata/dmaap/v2/dmaap-msg-policy-get.json
134 echo -e "\n"
135
136 echo "get result from mr of previous request:"
137 curl -X GET "$httpx://localhost:$dmaa_mr_port/events/A1-POLICY-AGENT-WRITE/users/policy-agent?timeout=15000&limit=100" -H "accept: application/json" -H "Content-Type: application/json" | jq .
138 echo -e "\n"
139
140 ## Get metric from rics
141 echo "policy numbers from ric1:"
142 curl -skw %{http_code} $httpx://localhost:$a1_sim_OSC_port/counter/num_instances
143 echo -e "\n"
144
145 echo "policy numbers from ric2:"
146 curl -skw %{http_code} $httpx://localhost:$a1_sim_STD_port/counter/num_instances
147 echo -e "\n"
148
149 echo "policy numbers from ric3:"
150 curl -skw %{http_code} $httpx://localhost:$a1_sim_STD_v1_port/counter/num_instances
151 echo -e "\n"
152