예제 #1
0
 def create_microservice(self, controller_address, microservice, fog_uuid,
                         catalog_id, flow_id, auth_token):
     data = microservices.create_microservice_curl_data(
         microservice, flow_id, fog_uuid, catalog_id)
     post_address = "{}/microservices".format(controller_address)
     json_response = rest_call(data, post_address, auth_token).response
     return json_response
예제 #2
0
    def create_flow(self, controller_address, auth_token, flow):
        data = {}

        data["name"] = flow
        post_address = "{}/flow".format(controller_address)
        jsonResponse = rest_call(data, post_address, auth_token).response
        self.id = jsonResponse["id"]
예제 #3
0
 def add_to_catalog(self, controller_address, auth_token, catalog_item):
     data = catalog_service.create_catalog_curl_data(self, catalog_item)
     if data == {}:
         # If data has failed to be created, exit here, and echo which service failed
         return "{} failed to create curl data".format(catalog_item)
     post_address = "{}/catalog/microservices".format(controller_address)
     return rest_call(data, post_address, auth_token).response["id"]
예제 #4
0
 def delete_route(controller_address, auth_token, route):
     post_address = "{}/microservices/{}/routes/{}".format(
         controller_address, route["from"], route["to"])
     json_response = rest_call({},
                               post_address,
                               auth_token,
                               method="DELETE").response
예제 #5
0
 def get_microservices_by_flow_id(self, controller_address, flow_id,
                                  auth_token):
     data = microservices()
     post_address = "{}/microservices?flowId={}".format(
         controller_address, flow_id)
     json_response = rest_call(data, post_address, auth_token,
                               method="GET").response
     return json_response["microservices"]
예제 #6
0
 def get_microservice_port_mapping(self, controller_address,
                                   microservice_uuid, auth_token):
     data = microservices().data
     post_address = "{}/microservices/{}/port-mapping".format(
         controller_address, microservice_uuid)
     json_response = rest_call(data, post_address, auth_token,
                               method="GET").response
     return json_response["ports"]
예제 #7
0
 def create_microservice_port_mapping(self, controller_address,
                                      microservice_uuid, mapping,
                                      auth_token):
     data = microservices().data
     data = mapping
     post_address = "{}/microservices/{}/port-mapping".format(
         controller_address, microservice_uuid)
     json_response = rest_call(data, post_address, auth_token).response
     return json_response
예제 #8
0
 def delete_microservice(self, controller_address, microservice,
                         auth_token):
     post_address = "{}/microservices/{}".format(controller_address,
                                                 microservice["uuid"])
     json_response = rest_call({},
                               post_address,
                               auth_token,
                               method="DELETE").response
     return json_response
예제 #9
0
 def delete_microservice_port_mapping(self, controller_address,
                                      microservice_uuid, mapping,
                                      auth_token):
     post_address = "{}/microservices/{}/port-mapping/{}".format(
         controller_address, microservice_uuid, mapping["internal"])
     json_response = rest_call(self.data,
                               post_address,
                               auth_token,
                               method="DELETE").response
     return json_response
예제 #10
0
 def update_microservice(self, controller_address, microservice, fog_uuid,
                         catalog_id, auth_token):
     self.data = microservices.update_microservice_curl_data(
         self, microservice, fog_uuid, catalog_id)
     post_address = "{}/microservices/{}".format(controller_address,
                                                 microservice["uuid"])
     json_response = rest_call(self.data,
                               post_address,
                               auth_token,
                               method="PATCH").response
     # Update port mapping
     microservices.update_ports(controller_address, microservice,
                                auth_token)
     return json_response
예제 #11
0
 def update_catalog(self, controller_address, auth_token, catalog_item):
     # Delete all microservices that uses this specific catalog item
     print_info(
         "====> Deleting all microservices currently using this catalog item"
     )
     microself = msv()
     msv.delete_all_by_catalog_id(microself, controller_address, auth_token,
                                  catalog_item["id"])
     # Update catalog item
     data = catalog_service.create_catalog_curl_data(self, catalog_item)
     if data == {}:
         # If data has failed to be created, exit here, and echo which service failed
         return "{} failed to create curl data".format(catalog_item)
     post_address = "{}/catalog/microservices/{}".format(
         controller_address, catalog_item["id"])
     json_response = rest_call(data,
                               post_address,
                               auth_token,
                               method="PATCH").response
예제 #12
0
 def delete_flow(self, controller_address, flow_id, auth_token):
     data = {}
     post_address = "{}/flow/{}".format(controller_address, flow_id)
     jsonRespone = rest_call(data, post_address, auth_token, method="DELETE").response
예제 #13
0
 def delete_by_id(self, controller_address, catalog_id, auth_token):
     post_address = "{}/catalog/microservices/{}".format(
         controller_address, catalog_id)
     return rest_call({}, post_address, auth_token,
                      method="DELETE").response
예제 #14
0
 def get_all(self, controller_address, auth_token):
     data = {}
     flow_ids = {}
     post_address = "{}/flow".format(controller_address)
     json_response = rest_call(data, post_address, auth_token, method="GET").response
     return json_response["flows"]
예제 #15
0
 def get_flow_by_id(self, controller_address, flow_id, auth_token):
     data = {}
     post_address = "{}/flow/{}".format(controller_address, flow_id)
     json_response = rest_call(data, post_address, auth_token, method="GET").response
     return json_response
예제 #16
0
 def get_catalog(self, controller_address, auth_token):
     post_address = "{}/catalog/microservices".format(controller_address)
     return rest_call({}, post_address, auth_token,
                      method="GET").response["catalogItems"]
예제 #17
0
 def stop_flow(self, controller_address, flow_id, flow_name, auth_token):
     data = {}
     data["name"] = flow_name
     data["isActivated"] = False
     post_address = "{}/flow/{}".format(controller_address, flow_id)
     jsonRespone = rest_call(data, post_address, auth_token, method="PATCH").response