bustle / sammie Goto Github PK
View Code? Open in Web Editor NEWServerless Application Model Made Infinitely Easier
Serverless Application Model Made Infinitely Easier
cloudfront package
and cloudfront deploy
are exclusive to AWS CLI and not available via the JS SDK.
They are however a series of commands that are able to be rebuilt with the SDK, it's just complex.
figured this was intentional, but if you can generate a yaml template, i think you should be able to deploy with one
$ sammie deploy -y -t template.yaml
(node:27404) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): SyntaxError: Unexpected token :
(node:27404) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
I have a need for deploying lambda functions with ENV vars per alias. This can be accomplished using https://github.com/awslabs/aws-sam-cli#package-and-deploy-to-lambda however the environment variables must be explicitly declared (with values) inside of the sam.json
or sam.yaml
file.
Since Sammie uses the template per env , i.e., adds -${env}
to the stack name, I would need sammie to add these environment variables from a file on a per environment basis.
An idea is to detect ${env}.json
files at the same directory level as the SAM config file sam.json
. Sammie can then write those ENV vars into the lambda functions specified in sam.json
if a file with the same name as the ENV exists.
E.g.
When using sammie deploy
with the ENV staging
, if there exists a staging.json
in the same directory, extract those key values and add them to the EnvironmentVariables
section of the Lambda portion of sam.json
When a cloudformation deploy fails, it logs this without specific failure reasons:
Failed to create/update the stack. Run the following command
to fetch the list of events leading up to the failure
aws cloudformation describe-stack-events --stack-name stack-name
Let's run that suggested command automatically as a convenience in sammie.
sam-packaged.json
is created by aws cloudformation package
with info specific to an individual deploy. After the deploy succeeds, sammie deletes this file.
A few enhancement ideas:
How would I pass a the --create-bucket-configuration LocationConstraint=eu-west-1
flag to sammie?
I am getting this error when running sammie deploy
sammie deploy --create-bucket-configuration LocationConstraint=eu-west-3
[sammie] Validating template...
aws cloudformation validate-template --template-body file://sam.json
[sammie] Template valid ✔︎
[sammie] Creating s3 code bucket (if necessary)...
aws s3api create-bucket --bucket sam-uploads-086445346371
An error occurred (IllegalLocationConstraintException) when calling the CreateBucket operation: The unspecified location constraint is incompatible for the region specific endpoint this request was sent to.
Error: 255
at ChildProcess.child.on.code (/Users/prisc_000/.npm-global/lib/node_modules/sammie/src/utils.js:21:47)
at ChildProcess.emit (events.js:182:13)
at Process.ChildProcess._handle.onexit (internal/child_process.js:237:12)
CREATE BUCKET flag should resolve this but can figure out how to pass the flag to sammie. Thank you!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.