Best Python code snippet using avocado_python
deploy_artifacts.py
Source:deploy_artifacts.py
1import os2import codecs3import sys4import shutil5import argparse6import glob7class Deploy_Artifacts(object):8 def __init__(self, library):9 self.library = library10 self.folder = 'Referencefiles'11 self.green = '\033[0;32m'12 self.CRED = '\033[91m'13 self.CEND = '\033[0m'14 sys.path.append('bin/CITests')15 from _config import new_ref_file, update_ref_file16 self.new_ref_file = new_ref_file17 self.update_ref_file = update_ref_file18 def _get_changed_ref(self): # list all changed reference results to a list19 changed_file = codecs.open(self.new_ref_file, "r", encoding='utf8')20 lines = changed_file.readlines()21 changed_ref = []22 for line in lines:23 if line.find("txt") > -1 and line.find("ReferenceResults") > -1 and line.find("Resources") > -1:24 line = line.strip()25 ref = line[line.find(self.library):line.rfind("txt") + 3]26 changed_ref.append(ref)27 continue28 else:29 continue30 changed_file.close()31 return changed_ref32 def _get_update_ref(self):33 updated_file = codecs.open(self.update_ref_file, "r", encoding='utf8')34 lines = updated_file.readlines()35 updated_ref = []36 for line in lines:37 if line.find("txt") > -1:38 line = line.strip()39 updated_ref.append(f'{self.library}{os.sep}Resources{os.sep}ReferenceResults{os.sep}Dymola{os.sep}{line.strip()}')40 continue41 else:42 continue43 updated_file.close()44 return updated_ref45 def copy_txt(self, changed_ref): # Copy reference results from AixLib\Resources\ReferenceResults\Dymola\* to Referencefiles\\*46 if os.path.exists(self.folder) is False:47 os.mkdir(self.folder)48 else:49 files = os.listdir(self.folder)50 for file in files:51 os.remove(f'{self.folder}{os.sep}{file}')52 for ref in changed_ref:53 destination = self.folder + os.sep + ref[ref.rfind(os.sep):]54 try:55 shutil.copy(ref, destination)56 continue57 except FileNotFoundError:58 print(f'{self.CRED}Cannot find folder:{self.CEND} {destination}')59if __name__ == '__main__':60 parser = argparse.ArgumentParser(description='deploy artifacts')61 unit_test_group = parser.add_argument_group("arguments to run deploy artifacts")62 unit_test_group.add_argument("-L", "--library", default="AixLib", help="Library to test")63 unit_test_group.add_argument("--ref", help='Deploy new reference files', action="store_true")64 unit_test_group.add_argument("--new-ref",65 help="Plot new models with new created reference files",66 action="store_true")67 unit_test_group.add_argument("--updated-ref",68 help="Plot new models with new created reference files",69 action="store_true")70 args = parser.parse_args()71 from deploy_artifacts import Deploy_Artifacts72 if args.ref is True:73 ref_artifact = Deploy_Artifacts(library=args.library)74 if args.new_ref is True: # python bin/02_CITests/deploy/deploy_artifacts.py --library AixLib --ref --new-ref75 changed_ref = ref_artifact._get_changed_ref()76 ref_artifact.copy_txt(changed_ref)77 if args.updated_ref is True: # python bin/02_CITests/deploy/deploy_artifacts.py --library AixLib --ref --updated-ref78 updated_ref = ref_artifact._get_update_ref()...
lz_deploy_artifacts.py
Source:lz_deploy_artifacts.py
...31 env = context.environment.get("environment")32 response = False33 if artifacts:34 if timeout:35 response = deploy_artifacts(36 artifacts, s3_prefix, region, env, timeout=int(timeout)37 )38 else:39 response = deploy_artifacts(artifacts, s3_prefix, region, env)40 return response41 except BaseException as error:42 LOGGER.error(f'Hook failed for module: {str(context.environment["module_name"])}')43 LOGGER.error(f'{str(context.environment["module_name"])}: {"".join(traceback.TracebackException.from_exception(error).format())}')...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!