2 # This scripts preloads ONAP with some relevant entries required to orchestrate NS
3 # Some steps may fail if script is ran non-first time on environment so strict error checking is turned off
6 curl -ksSL -H "X-TransactionId: $RANDOM" -H "X-FromAppId: Jenkins" -H "Content-Type: application/json" -H "Accept: application/json" \
7 -H "Authorization: Basic QUFJOkFBSQ==" "$@"
9 MASTER_IP="${1:?Missing mandatory positional parameter - Master IP}"
10 TENANT_ID=${2:?Missing mandatory positional parameter - Tenant ID}
11 TENANT_NAME=${3:?Missing mandatory positional parameter - Tenant Name}
13 aai_curl -X PUT -d '{ "global-customer-id":"5GCustomer", "subscriber-name":"5GCustomer", "subscriber-type":"INFRA" }' "https://${MASTER_IP}:30233/aai/v23/business/customers/customer/5GCustomer"
15 aai_curl -X PUT "https://${MASTER_IP}:30233/aai/v23/business/customers/customer/5GCustomer/service-subscriptions/service-subscription/5G"
17 aai_curl -X PUT "https://${MASTER_IP}:30233/aai/v23/cloud-infrastructure/complexes/complex/clli2" \
19 "physical-location-id": "clli2",
20 "physical-location-type": "office",
23 "postal-code": "30-000",
25 "region": "Smaller Poland"
28 echo "Handling AAI Entries"
29 aai_curl -X PUT "https://${MASTER_IP}:30233/aai/v23/cloud-infrastructure/cloud-regions/cloud-region/k8scloudowner4/k8sregionfour" \
31 "cloud-owner": "k8scloudowner4",
32 "cloud-region-id": "k8sregionfour",
34 "owner-defined-type": "t1",
35 "cloud-region-version": "1.0",
36 "complex-name": "clli2",
37 "cloud-zone": "CloudZone",
38 "sriov-automation": false
40 aai_curl -X PUT "https://${MASTER_IP}:30233/aai/v23/cloud-infrastructure/cloud-regions/cloud-region/k8scloudowner4/k8sregionfour/vip-ipv4-address-list/${MASTER_IP}" \
42 \"vip-ipv4-address\": \"${MASTER_IP}\"
44 aai_curl -X PUT "https://${MASTER_IP}:30233/aai/v23/cloud-infrastructure/cloud-regions/cloud-region/k8scloudowner4/k8sregionfour/relationship-list/relationship" \
46 "related-to": "complex",
47 "related-link": "/aai/v23/cloud-infrastructure/complexes/complex/clli2",
48 "relationship-data": [
50 "relationship-key": "complex.physical-location-id",
51 "relationship-value": "clli2"
55 aai_curl -X PUT "https://${MASTER_IP}:30233/aai/v23/cloud-infrastructure/cloud-regions/cloud-region/k8scloudowner4/k8sregionfour/availability-zones/availability-zone/k8savz" \
57 "availability-zone-name": "k8savz",
58 "hypervisor-type": "k8s"
60 aai_curl -X PUT "https://${MASTER_IP}:30233/aai/v23/cloud-infrastructure/cloud-regions/cloud-region/k8scloudowner4/k8sregionfour/tenants/tenant/${TENANT_ID}" \
62 "tenant-id": "'$TENANT_ID'",
63 "tenant-name": "'$TENANT_NAME'",
64 "relationship-list": {
67 "related-to": "service-subscription",
68 "relationship-label": "org.onap.relationships.inventory.Uses",
69 "related-link": "/aai/v23/business/customers/customer/5GCustomer/service-subscriptions/service-subscription/5G",
70 "relationship-data": [
72 "relationship-key": "customer.global-customer-id",
73 "relationship-value": "5GCustomer"
76 "relationship-key": "service-subscription.service-type",
77 "relationship-value": "5G"
85 echo "Configuring k8splugin"
86 curl -ksSL -X POST "https://${MASTER_IP}:30283/api/multicloud-k8s/v1/v1/connectivity-info" \
87 --header "Content-Type: multipart/form-data" \
88 --form "file=@${HOME}/.kube/config" \
90 "cloud-region": "k8sregionfour",
91 "cloud-owner": "k8scloudowner4"
95 pass=$(kubectl get "$(kubectl get secrets -o name | grep mariadb-galera-db-root-password)" \
96 -o jsonpath="{.data.password}" | base64 --decode)
97 kubectl -n onap exec onap-mariadb-galera-0 -- \
98 mysql -uroot -p"${pass}" -D catalogdb -e \
100 cloud_sites(ID, REGION_ID, IDENTITY_SERVICE_ID, CLOUD_VERSION, CLLI, ORCHESTRATOR)
101 values("k8sregionfour", "k8sregionfour", "DEFAULT_KEYSTONE", "2.5", "clli2", "multicloud");'