diff options
Diffstat (limited to 'vnfs/DAaaS/sample-apps/sample-minio-save-model/build/save-model-to-minio.py')
-rwxr-xr-x | vnfs/DAaaS/sample-apps/sample-minio-save-model/build/save-model-to-minio.py | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/vnfs/DAaaS/sample-apps/sample-minio-save-model/build/save-model-to-minio.py b/vnfs/DAaaS/sample-apps/sample-minio-save-model/build/save-model-to-minio.py new file mode 100755 index 00000000..b4535220 --- /dev/null +++ b/vnfs/DAaaS/sample-apps/sample-minio-save-model/build/save-model-to-minio.py @@ -0,0 +1,69 @@ +#!/usr/bin/env python +# +# ------------------------------------------------------------------------- +# Copyright (c) 2019 Intel Corporation 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. +# +# ------------------------------------------------------------------------- +# + +'''Sample Python application to save model to Minio''' + +# python imports + +import json +import os +import time +from minio import Minio +from minio.error import ResponseError + + +client = Minio(os.environ['S3_ENDPOINT'], + access_key=os.environ['AWS_ACCESS_KEY_ID'], + secret_key=os.environ['AWS_SECRET_ACCESS_KEY'], + secure=False) + + +def load_model(bucket_name, object_name, filepath): + try: + client.fget_object(bucket_name, object_name, filepath) + except ResponseError as err: + print(err) + +if __name__ == "__main__": + bucket_name = os.environ['MODEL_BUCKET'] + location = os.environ['S3_REGION'] + model = os.environ['MODEL_FILE'] + filepath = "/app/" + model + if not client.bucket_exists(bucket_name): + client.make_bucket(bucket_name, location=location) + + found = False + try: + client.stat_object(bucket_name, model); + found = True + except Exception as err: + found = False + + metadata = { + "X-Amz-Meta-model-description": "Sample numpy model", + "X-Amz-Meta-model-type": "scikit-learn/numpy", + "X-Amz-Meta-model-version": "v1.0.0", + } + if not found: + try: + client.fput_object(bucket_name, model, filepath, metadata=metadata) + except expression as identifier: + print(err) + |