Path: blob/main/L4assets/DSandMLOpsAssets/CLIandSDK/packages/cpdalllibs/cpdlib/services.py
1928 views
import json1import requests2from cpdalllibs.cpdlib.constants import *34### Undocumented API...5# This API was found on github6# https://github.com/IBM/watson-machine-learning-samples/blob/585613f07f968df1b1620ece283ec9d22b941d07/cpd4.5/notebooks/python_sdk/deployments/custom_software_spec/Use%20Custom%20Image%2C%20Software%20Specification%20and%20Runtime%20Definition%20to%20deploy%20a%20python%20function.ipynb#L4967def getServiceInstances(headersAPI, url) :8'''Get all the services part of this cluster'''9endpoint = url + '/zen-data/v3/service_instances?fetch_all_instances=true'10resp = requests.get(endpoint, headers=headersAPI, verify=False)11return resp1213def getSvcToken(headersAPI, url, svc_id) :14'''Get a token for a service'''15endpoint = url + 'zen-data/v3/service_instances/{}/token'.format(svc_id)16resp = requests.get(endpoint, headers=headersAPI, verify=False)17return resp1819def getSvcUsers(headersAPI, url, svc_id) :20'''Get the users for a service'''21endpoint = url + 'zen-data/v2/serviceInstance/users?sID={}'.format(svc_id)22resp = requests.get(endpoint, headers=headersAPI, verify=False)23return resp2425def addSvcUser(headersAPI, url, data) :26'''Add a user to a service'''27endpoint = url + 'zen-data/v2/serviceInstance/users'28resp = requests.post(endpoint, json=data, headers=headersAPI, verify=False)29return resp3031def deleteSvcUser(headersAPI, url, data) :32'''Delete a member of a service'''33endpoint = url + 'zen-data/v2/serviceInstance/users'34resp = requests.delete(endpoint, json=data, headers=headersAPI, verify=False)35return resp363738# https://github.com/search?q=org%3AIBM%20v3%2Fservice_instances&type=code39# CP4D_INSTANCES_USERS=${CP4D_URL}/zen-data/v2/serviceInstance/users40# CP4D_INSTANCES_USERS_ROLE=${CP4D_INSTANCES_USERS}/role41# https://github.com/IBM/cloud-pak-deployer/blob/eb880b56439039163176b89c15716e37b1065184/automation-roles/60-configure-cloud-pak/cp4d/cp4d-instance-cognos/files/assign_CA_authorization.sh#L574243# export ADD_USER_TO_CA=$(curl -s -k -X POST -H "Authorization: Bearer ${BEARER}" -H 'Content-Type: application/json' ${CP4D_INSTANCES_USERS} \44# -d "{\"users\":[{\"uid\":\"${CP4D_USER_UID}\",\"username\":\"${LDAP_USER_NAME}\",\"display_name\":\"${LDAP_USER_DISPLAY_NAME}\",\"role\":\"${CP4D_CA_ROLE}\"}],\"serviceInstanceID\":\"${COGNOS_INSTANCE_ID}\"}" | jq -r '. | .message')45# export MODIFY_CA_ROLE=$(curl -s -k -X PATCH -H "Authorization: Bearer ${BEARER}" -H 'Content-Type: application/json' ${CP4D_INSTANCES_USERS_ROLE} \46# -d "{\"serviceInstanceID\":\"${COGNOS_INSTANCE_ID}\",\"roles\":[{\"uid\":\"${CP4D_USER_UID}\",\"newrole\":\"${CP4D_CA_ROLE}\"}]}" | jq -r '. | .message')47# export MODIFY_CA_ROLE=$(curl -s -k -X PATCH -H "Authorization: Bearer ${BEARER}" -H 'Content-Type: application/json' ${CP4D_INSTANCES_USERS_ROLE} \48# -d "{\"serviceInstanceID\":\"${COGNOS_INSTANCE_ID}\",\"roles\":[{\"uid\":\"${CP4D_USER_UID}\",\"newrole\":\"${CP4D_CA_ROLE}\"}]}" | jq -r '. | .message')49505152