conan-aws-lambda
v0.0.13
Published
AWS Lambda plugin for Conan: The Deployer.
Downloads
250
Maintainers
Readme
conan-aws-lambda
conan-aws-lambda
is a barbarically simple deployment system for AWS Lambda
.
Unobtrusive and Unopinionated
Code lambda functions any way you want, with any directory structure, any filenames... then just tell conan-aws-lambda
how you want it deployed:
// conan.config.js
import Conan from "conan";
import ConanAwsLambda from "conan-aws-lambda";
conan = new Conan({
region: "us-east-1"
});
conan.use(ConanAwsLambda);
// deploy.js
import "./conan.config.js";
conan
.lambda("HelloWorld")
.description("A simple 'Hello, World!' example!")
.filePath(`helloWorld.js`)
.role("MyIamRoleName");
console.log("Deploy beginning...");
conan.deploy(error => {
if (error) { throw error; }
console.log("Deploy complete!");
});
Featuring seamless integration with conan-aws-api-gateway
and akiro.js
.
Additionally, conan-aws-lambda
comes with key integrations and advanced features such as remote package building (for architectural compatibility with compilers) and dependency management.
- Installation
- Quality and Compatibility
- Features
- AWS API Gateway Integration
- Akiro.js Integration
- Name-Based IamARN Referencing
- Deploy Other Runtimes
Installation
Conan can be installed as an npm development dependency with a single terminal command:
$ npm install conan --save-dev
If your platform is not listed above, you can test your local environment for compatibility by copying and pasting the following commands into your terminal:
npm install conan-aws-lambda
cd node_modules/conan-aws-lambda
npm test
Configuration
AWS IAM Roles & Permissions
Important: In order for Conan AWS Lambda to work properly, you must provide an AWS IAM Role with sufficient permissions for:
- Creating more IAM Roles and set their permissions
- Full Access For AWS Lambda
- Full Access For AWS API Gateway
- Full Access For AWS S3
Changelog
- 0.1.0 - First BETA release for public review.
How to Contribute
To contribute to the core Conan.js repository, you will need a firm understanding of:
- behavior-driven-development
- linting with
eslint
- babel & transpiling
In order for a pull request to be accepted:
- All tests must pass.
- All tests must be meaningful.
- There must be 100% coverage for