[openstack-dev] [app-catalog][heat] Heat template contributors repo

Fox, Kevin M Kevin.Fox at pnnl.gov
Wed Aug 12 18:46:38 UTC 2015


While being able to write kind of stand alone templates for apps is the goal, any sufficiently complicated cloud app template starts to benefit from shared components.

If you look at a bunch of the templates that are in:
https://github.com/EMSL-MSC/heat-templates/tree/master/cfn
They are more and more sharing components. So I've built into a shared library there:
https://github.com/EMSL-MSC/heat-templates/tree/master/cfn/lib

By having one place to put open sourced production ready templates, these common features can start to be abstracted out, made more robust and featureful in standard libraries. This in turn makes it easier to write production grade, generic templates to put in the catalog.

Its the back and forth between the production templates, and the shared libraries that I think is a very important piece to the issue.

Its also a place developers can congregate around and recommend ways for the templates to be made better. "Hey, rather then hard code that manually, why don't you use X shared library feature?". This also is an important piece.

Lastly, its a place where the heat engine developers can go actually look at and quickly see what things app developers are having to do in order to make production grade templates work. There are some unfortunate things that have to be done today, and it becomes more easy to convince developers new features are needed when they can see the reasons themselves.

Eventually the shared libraries and individual app templates will mature enough that having just the shared libraries in the common repo, and having the templates be split out on their own will probably make sense. I think that's several years out at very least. Probably longer.

Thanks,
Kevin


________________________________________
From: Christopher Aedo [doc at aedo.net]
Sent: Wednesday, August 12, 2015 10:39 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [app-catalog][heat] Heat template contributors     repo

On Sun, Aug 9, 2015 at 3:32 PM, Steve Baker <sbaker at redhat.com> wrote:
> On 07/08/15 06:56, Fox, Kevin M wrote:
>>
>> Heat templates so far seems to be a place to dump examples for showing off
>> how to use specific heat resources/features.
>>
>> Are there any intentions to maintain production ready heat templates in
>> it? Last I asked the answer seemed to be no.
>>
>> If I misunderstood, heat-templates would be a logical place to put them
>> then.
>>
> Historically heat-templates has avoided hosting production-ready templates,
> but this has purely been due to having the resources available to maintain
> them.
>
> If a community emerged who were motivated to author, maintain and support
> the infrastructure which tests these templates then I think they would
> benefit from being hosted in the heat-templates repository. It sounds like
> such a community is coalescing around the app-catalog project.
>
> Production-ready templates could end up somewhere like
> heat-templates/hot/app-catalog. If this takes off then heat-templates can be
> assigned its own core team so that more than just heat-core could approve
> these templates.

Steve and Kevin have both touched on what I was hoping for when I sent
the initial note.  That is to try to make a place for developing heat
templates, and a path to get there for those who might contribute.

Ryan asked a key question that was definitely not clear from what I was asking:
On Thu, Aug 6, 2015 at 11:55 AM, Ryan Brown <rybrown at redhat.com> wrote:
> What do you imagine these templates being for? Are people creating
> little reusable snippets/nested stacks that can be incorporated into
> someone else's infrastructure? Or standalone templates for stuff like
> "here, instant mongodb cluster"?

I was thinking of this from the perspective of all the people who have
access to OpenStack clouds now (whether private self-hosted clouds or
the dozens of public OpenStack clouds people can use today).  The App
Catalog is meant to be a showcase for things that you can do with that
cloud; packing it full of useful Heat templates would be excellent.  I
am thinking standalone templates, basically like the great set of
templates available on Rackspace cloud [1] but ones tailored for ALL
OpenStack clouds.

I do not believe just creating a repo will magically result in people
adding templates there (with expert guidance from unspecified core
reviewers).  But it feels to me like we are missing a place and
community for sharing the templates that are being developed (or the
ideas that could be turned into templates).  Like Kevin pointed out
for the work J^2 did for the Chef templates, there's no obvious place
to go check first to see if someone else has created and shared a
template before you start working on one.  Ideally the app-catalog
becomes that place, but I'm trying to figure out how to engage the
Heat community in making that a reality.  If making a new repo is not
the answer (and I agree with most of the points in this thread -
that's not the way forward), let's see what else we can do.

Can we agree the world of people using OpenStack would benefit from
having easy access to Heat templates that stand up applications for
users?  Given that, what would be the best way to start collecting
what already exists, and start encouraging newcomers to contribute
there?

[1]: https://github.com/rackspace-orchestration-templates

-Christopher

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



More information about the OpenStack-dev mailing list