大厂Data+Agent 秘籍:腾讯/阿里/字节解析如何提升数据分析智能。 了解详情
写点什么

AWS Toolkits for PyCharm、IntelliJ(预览版)和 Visual Studio Code(预览版)

  • 2019-10-14
  • 本文字数:2233 字

    阅读完需:约 7 分钟

AWS Toolkits for PyCharm、IntelliJ(预览版)和 Visual Studio Code(预览版)

软件开发人员都有自己偏爱的工具。有些使用功能强大的编辑器,还有的使用针对特定语言和平台定制的集成开发环境 (IDE)。2014 年,我使用 Lambda 控制台中的编辑器创建了我的第一个 AWS Lambda 函数。现在,您可以从一组丰富的工具中进行选择,以构建和部署无服务器应用程序。例如,去年 AWS Cloud9 发布时,Lambda 控制台中的编辑器得到了极大的改进。 对于 .NET 应用程序,您可以使用 AWS Toolkit for Visual Studio 和 AWS Tools for Visual Studio Team Services。


AWS Toolkits for PyCharm、IntelliJ 和 Visual Studio Code


今天,我们宣布正式发布 AWS Toolkit for PyCharm。我们还宣布推出 AWS Toolkits for IntelliJ 和 AWS Toolkits Visual Studio Code 开发人员预览版,这些工具套件目前在 GitHub 中处于积极开发阶段。这些开源工具套件将使您能够轻松开发无服务器应用程序,包括使用 IDE 和您选择的语言(Python、Java、Node.js 或 .NET)完整创建、逐步调试和部署。


例如,使用 AWS Toolkit for PyCharm,您可以:


  • 在您的首选运行时中创建一个新的、可随时部署的无服务器应用程序。

  • 在 Lambda 类执行环境中通过逐步调试在本地测试代码。

  • 将应用程序部署到您选择的 AWS 区域。

  • 在本地或远程调用 Lambda 函数。

  • 使用和自定义来自不同事件源的样本负载,例如 Amazon Simple Storage Service (S3)、Amazon API Gateway 和 Amazon Simple Notification Service (SNS)。

  • 这些工具套件根据开源 Apache 许可证版本 2.0 发行。


安装


某些功能使用 AWS 无服务器应用程序模型 (SAM) CLI。您可以在此处找到适用于您系统的安装说明。


AWS Toolkit for PyCharm 可通过 IDEA 插件库获取。要安装它,请在“设置/首选项”对话框中单击“插件”,搜索“AWS Toolkit”,使用复选框启用它,然后单击“安装”按钮。您需要重新启动 IDE 才能使更改生效。


AWS Toolkit for IntelliJ 和 AWS Toolkit Visual Studio Code 目前提供开发人员预览版,尚处于积极开发阶段。欢迎您从 GitHub 存储库构建和安装:


  • https://github.com/aws/aws-toolkit-jetbrains(IntelliJ 和 PyCharm)

  • https://github.com/aws/aws-toolkit-vscode

  • 使用 PyCharm 构建无服务器应用程序

  • 安装 AWS SAM CLI 和 AWS Toolkit 后,我在 PyCharm 中创建了一个新项目,并在左侧选择 SAM 以使用 AWS 无服务器应用程序模型创建无服务器应用程序。我在“位置”字段中调用我的项目 hello-world。展开更多设置,我选择作为项目起点的 SAM 模板。在本次分步演示中,我选择“AWS SAM Hello World”。

  • 在 PyCharm 中,您可以使用 AWS 命令行界面 (CLI) 配置中的凭据和配置文件。 如果您有多个环境,则可以快速更改 AWS 区域。

  • AWS Explorer 在选定的 AWS 区域中显示 Lambda 函数和 AWS CloudFormation 堆栈。从 CloudFormation 堆栈开始,您可以看到哪些 Lambda 函数是其中的一部分。



函数处理程序位于 app.py 文件中。打开文件后,单击函数声明左侧的 Lambda 图标,选择在本地运行该函数或启动本地分步调试会话。



首先,我在本地运行该函数。我可以从为大多数服务(例如 Amazon API Gateway、Amazon Simple Notification Service (SNS)、Amazon Simple Queue Service (SQS) 等)提供的事件模板开始,配置本地调用的输入中提供的事件负载。您可以使用文件作为负载,或选择共享复选框向其他团队成员提供。函数在本地执行,但是如果函数调用其他 AWS 服务,例如 Amazon Simple Storage Service (S3) 或 Amazon DynamoDB,您可以在此处选择要使用的凭据和区域。



本地容器用于模拟 Lambda 执行环境。此函数实施基本 Web API,我可以检查结果是否为 API Gateway 所期望的格式。



然后,我想获得有关我的代码运行状况的更多信息。我设置了一个断点并启动了一个本地调试会话。我使用与以前相同的输入事件。同样,您可以选择该函数使用的 AWS 服务的凭据和区域。



我在代码中跳过 HTTP 请求以检查“变量”选项卡中的响应。在这里,您可以访问所有本地变量,包括事件和函数输入中提供的上下文。



之后,我恢复程序以结束调试会话。


现在我有足够的信心通过右键单击项目(或 SAM 模板文件)部署无服务器应用程序。我可以创建一个新的 CloudFormation 堆栈,或者更新现有的堆栈。现在,我创建了一个名为 hello-world-prod 的新堆栈。例如,您可以拥有一个用于生产的堆栈和一个用于测试的堆栈。我在区域中选择一个 S3 存储桶来存储用于部署的包。如果您的模板具有参数,则可以在此处设置此部署使用的值。



几分钟后,堆栈创建完成,我可以在 AWS Explorer 中右键单击,在云中运行该函数。这里还提供了跳转到函数源代码的选项。



正如所料,远程调用的结果与本地执行的结果相同。我的无服务器应用程序在生产环境中运行了!



使用这些工具套件,开发人员可以在本地进行测试,以便在部署之前发现问题,更改其应用程序的代码或 SAM 模板中所需的资源,并更新现有堆栈,快速迭代直到达到目标。例如,他们可以添加 S3 存储桶来存储图像或文档,或者添加 DynamoDB 表来存储用户,或者更改其函数使用的权限。


我很高兴看到您在 AWS 上将创意变为现实的速度得到大幅提升,过程也大大简化了。现在,您可以使用首选环境进一步提升速度。我期待看到您使用这些新工具的构建成果


作者介绍:


Jeff Barr


AWS 首席布道师; 2004 年开始发布博客,此后便笔耕不辍。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/new-aws-toolkits-for-pycharm-intellij-preview-and-visual-studio-code-preview/


2019-10-14 13:531037
用户头像

发布了 1917 篇内容, 共 150.1 次阅读, 收获喜欢 81 次。

关注

评论

发布
暂无评论
发现更多内容

资料分享|kafka学习推荐书籍

Kafka中文社区

如何使用Kubernetes里的NetworkPolicy

汪子熙

Kubernetes k8s 28天写作 docker build 12月日更

科技令生活“焕然一新”|年末清洁黑科技:美菱洗地机!

联营汇聚

美菱洗地机

28《重学JAVA》--注解

杨鹏Geek

Java25周年 28天写作 12月日更

netty系列之:好马配好鞍,为channel选择配套的selector

程序那些事

Java Netty 程序那些事 12月日更

带你详细了解 Node.js 中的事件循环

编程江湖

前端开发 node,js

用户文章转载:P4 Rmdir 会自动删除空目录?不,没那么简单

龙智—DevSecOps解决方案

perforce P4 P4 Rmdir

直播预告|智能运维管理平台OMP核心特性及落地场景介绍

云智慧AIOps社区

DevOps 运维 AIOPS 智能运维 运维管理

Flink 实践教程-进阶(5):排序(乱序调整)

腾讯云大数据

流计算 Oceanus

我的2021之感谢有你们(上篇)

坚果

年终总结 28天写作 12月日更 盘点2021

参加过 4 届 TiDB Hackathon 是一种什么体验? | TiDB Hackathon 选手访谈

PingCAP

行业分析| 实时音视频的未来

anyRTC开发者

音视频 WebRTC 实时通信 语音通话 视频通话

seata入门介绍与seata-service部署与验证(一)

恒生LIGHT云社区

架构 分布式 seata

走访数年,编撰3年:你能看到的互联网企业案例最多的一本书

博文视点Broadview

观点 | NoSQL 产品的 SaaS 化之路

RadonDB

数据库 nosql NoSQL 数据库

拍乐云解析融合语音通话技术实践

拍乐云Pano

音视频 RTC 拍乐云 技术干货 融合语音通话

【转】java开发之批处理框架 Spring Batch

@零度

JAVA开发 spring batch

流计算 Oceanus | 巧用 Flink 构建高性能 ClickHouse 实时数仓

腾讯云大数据

flink Clickhouse 流计算 Oceanus

给弟弟的信第27封|学会说不,别让面子害了你

大菠萝

28天写作

探索 Design Token

凹凸实验室

前端 设计

智汇华云 | 使用Kubeadm进行Kubernetes集群版本升级

华云数据

大型软件交付项目注意事项53条

IT民工大叔

项目管理 SaaS

【转】前端开发之React Native SDK 升级问题

@零度

前端 React Native

从翻硬币游戏看敏捷开发

华为云开发者联盟

敏捷 敏捷开发 软件开发 团队 开发

Java序列化与反序列化

编程江湖

AI实战分享 | 基于CANN的辅助驾驶应用案例

华为云开发者联盟

目标检测算法 CANN 昇腾 辅助驾驶 AscendCL

实战大数据,HBase 性能调优指南

编程江湖

HBase

低代码行业浅析

凹凸实验室

前端 低代码

智汇华云 | 桌面云卓越体验下的协议技术解析

华云数据

智汇华云 | ArSDN给VMware带来了什么

华云数据

计划被打乱怎么办?

Tiger

28天写作

AWS Toolkits for PyCharm、IntelliJ(预览版)和 Visual Studio Code(预览版)_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章