joshbalfour / cloudformation-extensions Goto Github PK
View Code? Open in Web Editor NEWExtensions to Amazon CloudFormation
License: ISC License
Extensions to Amazon CloudFormation
License: ISC License
If it could search up for a .cfnex to load any settings such as extensions directry, template directory and dist directory. So i can at anytime call cfnex to rebuild, and if im in the folder with the .cfnex file then it knows where to build (and everything is relative to the .cfnex file)
When using the include-file extension, it parses <%cfnex tags so that it can pass the contents of those tags back to the outer template. However, the <%cfnex parsing simply passes the contents of the tag through as a string instead of parsing it as an object, which doesn't seem to provide the value that is intended by this feature.
For example, using the e2e test which pulls in example/ec2/boot.sh
:
#!/bin/bash
echo ECS_CLUSTER=<%cfnex { "Ref": "EcsCluster" } cfnex%> >> /etc/ecs/ecs.config
When pulled in by example/cfnex-cloudformation.json
this generates:
...
"UserData": {
"Fn::Base64": {
"Fn::Join": [
"\n",
[
"#!/bin/bash",
{
"Fn::Join": [
"",
[
"echo ECS_CLUSTER=",
" { \"Ref\": \"EcsCluster\" } ",
" >> /etc/ecs/ecs.config"
]
]
},
""
]
]
}
}
...
which the CloudFront template will not recognize for parameterization, since it sees the Ref as just part of a string. The expected output is:
"UserData": {
"Fn::Base64": {
"Fn::Join": [
"\n",
[
"#!/bin/bash",
{
"Fn::Join": [
"",
[
"echo ECS_CLUSTER=",
{
"Ref": "EcsCluster"
},
" >> /etc/ecs/ecs.config"
]
]
},
""
]
]
}
}
so that CloudFront will actually insert the parameter inline. I will be submitting a PR with this fix shortly.
I want to installed things via npm and using them as extensions. Like grunt extensions are called contrib-xxx
. If i install module call cfext-base64
, it should just be able to use the function base64
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.