Home

Awesome

website-deploy

A simple utility to deploy a static website to [s3-bucket, lambda, ...]

CircleCI Known Vulnerabilities Codacy Badge Dependabot Status npm npm NpmLicense

Pre-requisite

You need a node v8 or higher to run this utility.

Installation

Install globally

npm install --global website-deploy

Install in project

npm install --save-dev website-deploy

Usage

This utility has following sub-commands:

s3 deploy

This sub-command sync the provided source folder with AWS s3 bucket.

website-deploy s3 [options] <SOURCE_DIR> <S3_BUCKET_NAME>

Options

--delete

This will delete all the files from the AWS s3 bucket which are not present in provided <SOURCE_DIR>

--debug

This will print extra debug statements for more visibility

--profile <profile name>

Provide a AWS credential profile as a credentials.

--region <AWS region>

Provide a AWS region Name. Default is us-east-1.

lambda deploy

This will deploy your application deployable file to AWS lambda.

update

Deploy/update a new function code.

website-deploy lambda update [options] <functionName> <zipFilePath>

--debug

This will print extra debug statements for more visibility

--profile <profile name>

Provide a AWS credential profile as a credentials.

--region <AWS region>

Provide a AWS region Name. Default is us-east-1.

version

Get the versions deployed to function.

website-deploy lambda version [options] <functionName>

--count [count]

This will display the maximum version specified by count. Default is 10.

--debug

This will print extra debug statements for more visibility

--profile <profile name>

Provide a AWS credential profile as a credentials.

--region <AWS region>

Provide a AWS region Name. Default is us-east-1.

build

Create the lambda deploable zip file

website-deploy lambda build [options] <outputZipFileName>

--path <PATH>

A object path to be invalidated. This can be provided multiple times to specify additional paths.

e.g.

website-deploy lambda build --path "/index.js" --path "/lambda.js" myapp.zip

--include-node-modules

Include the production npm packages. This will need package-lock.json

--debug

This will print extra debug statements for more visibility

invalidate-cache

This sub-command will invalidate the cloudfront cache

website-deploy invalidate-cache [options] <CLOUDFRONT_DISTRIBUTION_ID>

Options

--path <PATH>

A object path to be invalidated. This can be provided multiple times to specify additional paths.

e.g.

website-deploy invalidate-cache <CLOUDFRONT_DISTRIBUTION_ID> --path "/index.html" --path "/error.html"

--debug [true|false]

This will print extra debug statements for more visibility

--profile <profile name>

Provide a AWS credential profile as a credentials.

--region <AWS region>

Provide a AWS region Name. Default is us-east-1.

Issue or need a new feature?

If you are experiencing a issue or wanted to add a new feature, please create a github issue here.

Contributing

:star: Star me on GitHub — it helps!

:heart: contribution: Here is contributing guide in deatil.

For impatient here are quick steps: