npm 包 cfn-custom-resource-helper 使用教程

介绍

cfn-custom-resource-helper 是一个 npm 包,用于帮助 AWS CloudFormation 服务使用自定义资源,简化开发过程。它提供了一个 Node.js 版本的 AWS Lambda 函数,支持以下特性:

  • 向领域资源提供数据
  • 从 AWS Lambda 向 AWS CloudFormation 发送成功/失败信号
  • 自动签名
  • 序列化响应和数据

使用教程

安装

使用以下 npm 命令来安装 cfn-custom-resource-helper:

--- ------- --------------------------

配置

  1. 开发一个 Node.js 的 AWS Lambda 函数,例如:
--------------- - --------------- -------- -
-- ---- -------- ---- ----
--
  1. 引入 cfn-response 模块,例如:
----- ----------- - ------------------------
  1. 使用 cfnResponse.send 来发送成功/失败信号,例如:
--------------- - --------------- -------- -
   ----------------------- -------- -------------------- --------- -------------
--

使用

创建 CloudFormation 资源

  1. 在 CloudFormation 模板中,使用以下代码来创建 /create 路径的新自定义资源:
---------------
   ----- --------------------
   -------- -----
   -----------
       ------------- ---- ------------------------------------------------------------------------------------------
       ----- --------
       --- ---- ----

其中,MyResource 是自定义资源名称,可以自由定义。ServiceToken 是 AWS Lambda 的 ARN,ID 是自定义资源的属性。

  1. 配置以下环境变量:
环境变量名 含义
ROLES_TO_ASSUME 要使用的 AWS 角色
ARTIFACTS_BUCKET 构建工件所在的 S3 存储桶。
CFN_POLLING_INTERVAL (可选)AWS CloudFormation 轮询的时间间隔。
SEND_TYPE (可选)指示事件侦听器是否将事件捕获并发送给事件中枢。
SEND_STACK_EVENTS (可选) 打开/关闭堆栈事件的发送功能。
SERVICE_NAME_POSTFIX 若干重复使用的前缀
  1. 在 AWS Console 上部署该 CloudFormation 模板。

更改/删除 CloudFormation 资源

请参照步骤 “创建 CloudFormation 资源”,不同之处是要修改对应的 AWS Lambda 函数和 CloudFormation 模板。

示例代码

这是一个使用 cfn-custom-resource-helper 来自定义 CloudFormation 资源的示例代码:

开始一个 Create 路径:

---- --------

----- ----------- - ------------------------
----- --- - -------------------

----- ------- - --- -----------------------------
   -------------------- ------------------ - --------------------------
---

----- ---- - ------- -------- --------------- ------------- -- -
   ----------------------- -------- --------------- --------------
--

--------------- - ----- ------- -------- -- -
   --------------------- -----------------------
   ----------------------- -------------------------

   ----- - - --- ---------------------

   --- -
       ----- -----------------------------

       ------------------- ------ -- -----------------------

       ----- ---- - -----------------------
       ------------------- ----- -- ----------------------

       ------------------- ----- ---------- -- -----------------------------

       ------ ------------ -
           ---- ----------
               ------------------- ------ ----- ----------------------
               ----- ---- - ----- --------------------------
                   ------------- ----------------------------------
                   ----- -------
               ------------
               ------------------- ----- -- ----------------------
               ----------- -------- ---------- ----------- ------- -----------
               ------

           --------
               ----------- -------- --------- ----------- --------
               ------
       -
   - ----- ----- -
       ------------------- ------ -- -----
       ----------- -------- --------- --------- ------
   -
--

注:本篇文章的示例代码没有经过严格性能测试,不建议直接应用于生产环境。

学习与指导作用

cfn-custom-resource-helper 插件简化了 AWS CloudFormation 自定义资源的开发过程。同时,它提供了一套简洁、易于理解的 API,给初学者提供了学习的机会。对于经验丰富的开发人员,它是一个就可以用来优化和简化开发流程的工具。

总之,学习 cfn-custom-resource-helper 对于扩展 CloudFormation 开发技能来说是有指导意义的。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005664581e8991b448e258b


猜你喜欢

  • npm 包 bfn-grunt-webshot 使用教程

    介绍 在前端开发中,我们经常需要将网页截图用于展示或测试。npm 包 bfn-grunt-webshot 就是一个用于在 grunt 任务中生成网页截图的工具。 bfn-grunt-webshot 的...

    3 年前
  • npm 包 centit.easyui 使用教程

    前言 centit.easyui 是一个基于 jQuery 和 EasyUI 的前端 UI 库,提供了丰富的 UI 组件和插件,能够有效地帮助前端开发者快速开发出高质量的前端页面和应用。

    3 年前
  • npm 包 generator-nethserver-cockpit 使用教程

    在开发 Web 应用程序时,前端技术扮演了至关重要的角色。其中,npm 包是不可或缺的一部分。在许多开发工具中,generator-nethserver-cockpit 是一个非常有用的工具,可以帮助...

    3 年前
  • 前端学习笔记:npm包 react-native-markdown-text 使用教程

    什么是 react-native-markdown-text ? react-native-markdown-text 是一个用于 React Native 的 Markdown 渲染组件。

    3 年前
  • npm 包 valif 使用教程

    在前端开发中,我们经常需要对用户输入进行验证。为了方便开发者对数据进行验证,有很多 npm 包可以使用。其中,valif 包就是一款非常好用的数据验证工具。在本篇文章中,我们将会介绍如何使用这个 np...

    3 年前
  • npm 包 angulargrid-autoload 使用教程

    介绍 angulargrid-autoload 是一个用于 AngularJS 应用程序中的可重用模块,它提供了一个基于网络的单元格布局的解决方案。它能够自动将大量数据加载到单元格集合中,从而让前端工...

    3 年前
  • npm 包 express-yields-2 使用教程

    前言 在 Web 应用程序的开发中,Node.js 和 Express.js 的出现极大地简化了服务器端的开发工作。npm 是以 Node.js 为基础建立的包管理器,使用 npm 可以轻松地安装、更...

    3 年前
  • npm 包 ng2-smart-table-custom 使用教程

    ng2-smart-table-custom 是一个基于 Angular 2 和 ngx-smart-table 的前端开源库,它提供了可定制的数据表格、多选、单选、分页、排序和搜索等功能,从而以便捷...

    3 年前
  • npm包micro-access使用教程

    简介 micro-access是一个 npm 包,它提供一种简单的方法来限制对常规 Express 路由的访问。micro-access可以与任何路由器一起使用,但是它最常用于微服务场景。

    3 年前
  • npm 包 machinepack-pushnotifications-it 使用教程

    介绍 npm(Node Package Manager) 是 Node.js 开发中非常重要的工具。使用 npm 可以方便的搜索、安装、更新和管理 Node.js 模块。

    3 年前
  • npm 包 node-be 使用教程

    简介 npm 是前端开发中常用的包管理器,而 node-be 是一个适用于 node.js 的反向代理服务器,可以将请求转发到指定的目标服务器上,并且支持负载均衡。

    3 年前
  • npm 包 yarn-or-die 使用教程

    如果你是一位前端开发者,就一定会经常使用包管理工具 npm 或者 yarn。但是有时候,当你的项目依赖关系比较复杂的时候,使用 npm 或者 yarn 安装依赖可能会出现一些问题。

    3 年前
  • npm 包 react-sigma-benjie 使用教程

    如果你是一名前端开发者,并且使用 React 进行开发,那么你可能会遇到一些复杂的图形以及网络拓扑结构的可视化。在这种情况下,react-sigma-benjie 这个 npm 包就可以派上用场了。

    3 年前
  • npm 包 plus-editor.md 使用教程

    在前端开发中,文本编辑器是不可或缺的工具之一。而 plus-editor.md 则是一个强大的、支持 markdown 的富文本编辑器插件。该插件可以让用户在可视化的编辑器中编辑自己的文章,并将其转换...

    3 年前
  • npm 包 tic2tiled 使用教程

    介绍 在前端开发中,我们常常需要将游戏开发者使用的 tic80 引擎生成的游戏地图转化为游戏编辑器 Tiled 所需要的 tmx 格式。而 npm 包 tic2tiled 可以帮助我们实现这一功能。

    3 年前
  • npm 包 chipa 使用教程

    简介 npm 是开发者常用的包管理工具之一,可以方便地安装、更新和卸载各种依赖包。其中,chipa 是一个前端类的 npm 包,主要功能为生成随机颜色。该包功能简单、易用,适合初学者学习 npm 包的...

    3 年前
  • npm 包 yeps-mysql 使用教程

    前言 yeps-mysql 是一个让 Node.js 开发者更便捷地连接和操作 MySQL 数据库的 npm 包。本文主要介绍该包的使用教程,包括安装、连接数据库以及常见的操作等。

    3 年前
  • npm 包 data-table-angular-4-bootstrap-3 使用教程

    前端工程师在开发 Web 应用时经常需要展示数据表格,为了便捷使用和样式美观,我们可以使用 data-table-angular-4-bootstrap-3 这个 npm 包,以下是使用教程。

    3 年前
  • npm 包 easy-graphql 使用教程

    随着前端技术的不断发展,越来越多的开发者开始尝试使用 GraphQL 替代传统的 RESTful 接口。Easy-graphql 就是一个基于 GraphQL 的前端 npm 包,可以轻松帮助开发者实...

    3 年前
  • npm 包 nd-weather 使用教程

    现代的 Web 应用越来越依赖于大量的第三方库和框架。npm(Node Package Manager)是一个让你能够使用别人的模块化代码的包管理器,它是 Node.js 的默认包管理器,为前端开发提...

    3 年前

相关推荐

    暂无文章