当前位置: 首页 > news >正文

完成网站开发需要什么样技术/上海网站制作推广

完成网站开发需要什么样技术,上海网站制作推广,wordpress主题轉中文,易语言如何做网站登录文章目录 小结问题及解决有关Json文件的输入和输出使用Python3及正则表达式查找字符串包含某个子字符串使用Python3 Boto3删除AWS CloudFormation的栈(Stacks) 参考 小结 本文记录了使用Python3的Boto3包删除AWS CloudFormation的栈(Stacks&…

文章目录

  • 小结
  • 问题及解决
    • 有关Json文件的输入和输出
    • 使用Python3及正则表达式查找字符串包含某个子字符串
    • 使用Python3 Boto3删除AWS CloudFormation的栈(Stacks)
  • 参考

小结

本文记录了使用Python3的Boto3包删除AWS CloudFormation的栈(Stacks)

问题及解决

有关Json文件的输入和输出

json.loads函数是将一个字符串(String)输入转换为字典类型(dictionary)输出
json.dumps函数是将一个字典类型(dictionary)输入转换为字符串(String)输出

当出现JSON object must be str, bytes or bytearray, not dict或者'dict' object has no attribute 'read'的错误时,需要检查以上输入类型是否正确。

对于datetime.datetime not JSON serializable的问题,也就是日期类型无法进行Json序列化,可以使用以下指令解决问题,应该是default=str这个参数起了作用,将日期类型处理为了字符串:

json_formatted_str = json.dumps(task_definition, indent=2, sort_keys=True, default=str)

使用Python3及正则表达式查找字符串包含某个子字符串

使用以下办法:

exp = re.compile(stack_name_to_Search)
stack_name = cfn_stack['StackName']
if re.search(exp, stack_name):....

以上是查找 stack_name 这个字符串是否包含stack_name_to_Search这个子字符串。

使用Python3 Boto3删除AWS CloudFormation的栈(Stacks)

def delete_skms_stack(stack_name):cf_client = boto3.client('cloudformation')#list all the stacks excepts 'DELETED_STACKS'response = cf_client.list_stacks(StackStatusFilter=['CREATE_IN_PROGRESS','CREATE_FAILED','CREATE_COMPLETE','ROLLBACK_IN_PROGRESS','ROLLBACK_FAILED','ROLLBACK_COMPLETE','DELETE_IN_PROGRESS','DELETE_FAILED','UPDATE_IN_PROGRESS','UPDATE_COMPLETE_CLEANUP_IN_PROGRESS','UPDATE_COMPLETE','UPDATE_FAILED','UPDATE_ROLLBACK_IN_PROGRESS','UPDATE_ROLLBACK_FAILED','UPDATE_ROLLBACK_COMPLETE_CLEANUP_IN_PROGRESS','UPDATE_ROLLBACK_COMPLETE','REVIEW_IN_PROGRESS','IMPORT_IN_PROGRESS','IMPORT_COMPLETE','IMPORT_ROLLBACK_IN_PROGRESS','IMPORT_ROLLBACK_FAILED','IMPORT_ROLLBACK_COMPLETE'])#Stack name patternexp = re.compile(stack_name)print('--------------------')print(response['StackSummaries'])for cfn_stack in response['StackSummaries']:stack_name = cfn_stack['StackName']#match = re.search(regex_pattern,stack_name)if re.search(exp, stack_name):#Custome conditions can be implemented heretry:response = cf_client.delete_stack(StackName=stack_name)stack_delete_status = cf_client.describe_stacks(StackName=stack_name)logger.info("Delete stack: " + json.dumps(response))while stack_delete_status['Stacks'][0]['StackStatus'] == 'DELETE_IN_PROGRESS':time.sleep(10)stack_delete_status = cf_client.describe_stacks(StackName=stack_name)logger.info("Delete stack status: " + stack_delete_status['Stacks'][0]['StackStatus'])if stack_delete_status['Stacks'][0]['StackStatus'] == 'DELETE_FAILED':logger.warning('Delete failed. Retry delete')resources = cf_client.delete_stack(StackName=stack_name)return resourceselif stack_delete_status['Stacks'][0]['StackStatus'] == 'DELETE_IN_PROGRESS':continueelse:logger.info("Delete stack complete")except Exception as e:logger.error(e) 

以上代码执行效果如下:

INFO:__main__:Delete stack status: DELETE_IN_PROGRESS
INFO:__main__:Delete stack status: DELETE_IN_PROGRESS
INFO:__main__:Delete stack status: DELETE_IN_PROGRESS
INFO:__main__:Delete stack status: DELETE_IN_PROGRESS
ERROR:__main__:An error occurred (ValidationError) when calling the DescribeStacks operation: Stack with id ECS-Console-V2-Service-sammperso-johnvpc-svc-John-VPC-Cluster-8c3e39c8 does not exist

其中最后一个错误是因为CloudFormation的栈(Stacks)已经被删除,找不到了,所以是正常返回。

参考

Digital Ocean: Python Pretty Print JSON
Stackoverflow: JSON object must be str, bytes or bytearray, not dict
Stackoverflow: ‘dict’ object has no attribute ‘read’
Stackoverflow: How can I overcome “datetime.datetime not JSON serializable”?
Stackoverflow: How to delete multiple Cloudformation stacks at once?
Stackoverflow: Python regex check if string contains any of words

http://www.ho-use.cn/article/221.html

相关文章:

  • 珠海网站建设/网络推广计划书
  • 阿里巴巴机械加工网/seo免费
  • 企业做网站哪家好/企业网络营销推广方案策划
  • 电子商务网站规划 分析 设计/武汉seo搜索引擎
  • 手机网站页面制作/如何优化关键词
  • 深圳建网站的/关键词挖掘工具免费
  • 做服装网站需要什么/推广技巧
  • 网站开发一次性费用/口碑营销渠道
  • 扬州网站建设外包/军事网站大全军事网
  • 学校网站建设用哪个系统/windows优化软件排行
  • 酒店网站建设案例/谷歌推广app
  • 网站开发时数据库的工作/广东东莞疫情最新情况
  • 住房和城乡建设网站/石家庄seo顾问
  • 清新网站设计/湖南靠谱seo优化公司
  • 做网站腾讯云服务器/竞价推广招聘
  • 加强网站和公众号建设/网络营销与管理
  • 电商网站建设模板/实体店营销方案
  • 北京建站哪家好/bt蚂蚁
  • wordpress 做的网站/潍坊网站关键词推广
  • 建站工具有什么用/哈尔滨最新今日头条新闻
  • 网站建设好不好/镇江网站建设
  • 政府网站建设管理讲话/高级搜索入口
  • 青田建设局网站/花钱推广的网络平台
  • 西安专业做网站公司/做网站的平台有哪些
  • 太原建筑公司网站/千锋教育和达内哪个好
  • 企业品牌网站建设我们的优势/网站优化外包顾问
  • 找做网站的公司好/qq群推广软件
  • php网站开发程序/seo引擎优化是做什么的
  • 广平网站建设/seo外包
  • 北海做网站/seo优化外包