mangum的cli工具

mangum-cli的Python项目详细描述


mangum cli

此包提供用于生成与Mangum一起使用的aws lambda&api网关部署的命令行接口。

注意:这是一项正在进行的繁重工作,可以随时删除/更改。

需求:python3.7+

安装

pip install mangum-cli

命令

mangum init-创建新的部署配置。

mangum build-创建本地生成。

mangum deploy-部署打包的项目。

mangum package-打包本地构建。

mangum describe-检索部署的终结点。

mangum validate-验证aws cloudformation模板。

教程

下面的步骤概述了基本的FastAPI部署,但是您应该能够在适配器中使用任何asgi框架/应用程序。

步骤1-创建本地项目

首先,创建一个新目录app/,这是包含主应用程序代码和函数处理程序的文件夹。

然后使用以下命令创建文件asgi.py

frommangumimportMangumfromfastapiimportFastAPIapp=FastAPI()@app.post("/items/")defcreate_item(item_id:int):return{"id":item_id}@app.get("/items/")deflist_items():items=[{"id":i}foriinrange(10)]returnitems@app.get("/")defread_root():return{"Hello":"World!"}handler=Mangum(app)

这演示了一个基本的fastapi应用程序,最相关的部分是:

handler=Mangum(app)

变量handler将用作稍后生成的cloudformation模板中定义的处理程序名称。

最后,创建一个requirements.txt文件,将mangum和fastapi包含在构建中:

mangum
fastapi

步骤2-创建新的部署配置

使用项目的名称(必需)运行以下命令,并可选地包括s3存储桶的名称和区域(这些值可以稍后更改):

mangum init <name> [bucket-name][region-name]

定义配置后,将生成一个mangum.yml文件,当前目录现在应该如下所示:

├── app
│   └── asgi.py
├── mangum.yml
└── requirements.txt

步骤3-创建本地生成

运行以下命令以创建本地应用程序生成:

mangum build

这将创建一个build/目录,其中包含应用程序代码和requirements.txt中包含的任何依赖项。

步骤4-打包本地构建

运行以下命令打包本地生成:

mangum package

这将包装aws cli的package命令,它使用mangum.yml中的定义生成packaged.yml文件和template.yml文件。

步骤5-部署打包的构建

运行以下命令以部署打包的生成:

mangum deploy

这将包装aws cli的deploy命令。可能需要几分钟才能完成。如果成功,则已部署应用程序的终结点将显示在控制台中。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用安卓摄像头拍摄照片并显示   java如何从EJB计时器更改callerPrincipal?   java如何将SetInputFilter DEFLATE放入httpd。apacheso的conf文件,用于解压缩Gzip压缩的请求体   java无法使用Spring Boot创建mysql数据库   java二进制搜索递归调用数?   java-spring@transactional-performance   java为什么分类器不做任何更改就给我输入   基于Java的用户界面桌面应用   从实现接口(java)的类调用方法的继承   java DAO、Spring和Hibernate   swing Java计时框架Animator类查询   java我们可以在spring启动项目中定义更多的JNDI资源吗?   数组如何在Java中编写和插入Norder方法?   使用JSP/JAVA的mysql下拉列表   java将高分保存到游戏中   如何使用java在appium中单击gridview中的元素