I recently wrote a CF template building tool for my company. its part of a 
larger project that we want to eventually open source, but the CF template 
stuff is small enough that I can put most of it into a gist. 
https://gist.github.com/marshallbrekka/7686151
This was basically copied and pasted from a single namespace with a few 
things left out that weren't terribly relevant.

Take a look at the resource fn . Its the most used fn for all of our stack. 
Basically every single thing we create is defined as a resource.
You probably noticed that I didn't try to create wrappers around any of the 
CF primitives (ec2, elb, subnet, etc).
This was a design decision, mostly because it makes doing complex template 
generation much easier because you are just dealing with maps and lists.
Finally, we didn't try to accommodate parameters because, this being 
clojure, we could just generate a template dynamically with all of the 
things that would have been parameters hardcoded right into the template. 
Obviously if you did need that ability it wouldn't be to hard to add it to 
the system we created.
 
Hope its helpful.

On Monday, November 25, 2013 8:41:29 PM UTC-8, Kevin Bell wrote:
>
> Hey folks, I'm working on a tool to enable the generation of AWS 
> CloudFormation templates using a Clojure-based syntax kind of like 
> leiningen's project.clj. I'm working on how the syntax should look to be 
> most clojurey, and I wonder if anyone has some input: 
> https://gist.github.com/bellkev/7653342
>
> I should add that I'm very new to Clojure and using this project as an 
> opportunity to learn more about the language internals. So please forgive 
> any particularly non-idiomatic Clojure...
>
> Thanks!!
>

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to