On Fri, Nov 25, 2016 at 3:40 PM, Marek Hulán <[email protected]> wrote:
> Hello foreman devs,
>
> As I demonstrated on last community demo [1] templates can be now easily
> exported from Foreman. I also mentioned that I'm working [2] on
> foreman_templates feature to easily export all templates to a given git repo.
> Since the plugin can be used with any git repo, not just the community-
> templates [3] one, I'd like to standardize the format of such repository.
>
> When we export templates from Foreman, we can only use template attributes to
> determine the resulting path in the repo. First obvious idea is to name the
> template file according to it's name in Foreman. That's probably not enough
> since it wold result in one directory mixing all partition tables,
> provisioning templates and job templates. So I came up with structure like
> $template_type/$name. For better look and feel of what it means, you can see
> it in one of my branches [4].
>
> Currently we also separate provisioning templates into more directories. I
> don't think the rule is well defined today. I think we could separate it per
> template kind. Again you can see this demonstrated in another branch at [5].
> It applies only to provisioning templates, other types don't have template
> kind attribute.
>
> Please share your ideas for other structuring or which of schema mentioned
> above you find better. The level of nesting does not matter from technical
> point of view but I think 2 or 3 directories is the limit.
>

I like kind + subkind the most.

> The ultimate goal of making foreman_templates exporting compatible with
> community-templates is making sharing of user changes easy, in fact just a
> matter of opening PR from the forked repo. Another nice benefit would be that
> future changes in metadata, e.g. adding organizations and locations keys would
> be much easier, we'd just reexport all templates from Foreman with updated
> export code.
>
> Since we now have metadata as a part of each template we could also improve
> seeding to avoid hard coding the list in seed files [6]
>
> [1] https://www.youtube.com/watch?v=M0-3x8AUfFQ
> [2] https://github.com/theforeman/foreman_templates/pull/36
> [3] https://github.com/theforeman/community-templates
> [4] https://github.com/ares/community-templates/tree/develop_kind_only
> [5] https://github.com/ares/community-templates/tree/develop_kind_and_subkind
> [6] 
> https://github.com/theforeman/foreman/blob/develop/db/seeds.d/07-provisioning_templates.rb#L21-L94
>
> Thanks for all comments
>
> --
> Marek
>
> --
> You received this message because you are subscribed to the Google Groups 
> "foreman-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"foreman-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to