X-Git-Url: https://gerrit.onap.org/r/gitweb?p=demo.git;a=blobdiff_plain;f=tutorials%2FApacheCNF%2Fautomation%2Fupdate_cba.py;fp=tutorials%2FApacheCNF%2Fautomation%2Fupdate_cba.py;h=226029f54b92f6085edad9dc1454cc2f57efe83d;hp=0000000000000000000000000000000000000000;hb=a112ebd160d3acc20e6766d8550d757a0581797d;hpb=f491b9fa0e1f5481065f9071aca469180635778e diff --git a/tutorials/ApacheCNF/automation/update_cba.py b/tutorials/ApacheCNF/automation/update_cba.py new file mode 100644 index 00000000..226029f5 --- /dev/null +++ b/tutorials/ApacheCNF/automation/update_cba.py @@ -0,0 +1,57 @@ +# ============LICENSE_START======================================================= +# Copyright (C) 2021 Orange +# ================================================================================ +# 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. +# +# ============LICENSE_END========================================================= + +import logging +import os +import zipfile +from io import BytesIO + +from onapsdk.cds import Blueprint + +from config import Config, VariablesDict + +logger = logging.getLogger() +logger.setLevel(logging.DEBUG) + + +def update_cba(file): + mypath = os.path.dirname(os.path.realpath(__file__)) + file_path = os.path.join(mypath, file) + try: + with zipfile.ZipFile(file_path, 'r') as package: + cba_io = BytesIO(package.read("CBA.zip")) + + blueprint = Blueprint(cba_io) + blueprint.deploy() + except FileNotFoundError: + logger.error("Error - File Not Found") + exit(1) + + +def main(): + config = Config(env_dict=VariablesDict.env_variable) + for vnf in config.service_model["vnfs"]: + update_cba(vnf["vsp"]["vsp_file"]) + + +if __name__ == "__main__": + sh = logging.StreamHandler() + sh_formatter = logging.Formatter('%(asctime)s %(levelname)s %(lineno)d:%(filename)s(%(process)d) - %(message)s') + sh.setFormatter(sh_formatter) + logger.addHandler(sh) + + main()