opscode/omnibus-ruby — pull request #135 by sersut (2014-04-08 06:09:00+00:00)
Title: WIP: Resource updates for packagers.

:construction:

Currently there are two problems with the way resources are managed in packagers.

1. Nearly 100% of the time, some resources need to be templates, e.g. update some version string dynamically (see msi packages for Chef Client).
2. When managing more than one projects with a single omnibus repository, individual projects might need different resources for themselves.

The updates I'm proposing for resolving these are:

1. Move the resources of projects to the staging directory so that we can use templates and render them without worrying about actually modifying the `project_root`.
2. Have a project level override for the `resources_path` that's coming from `Omnibus.Config`.

I think (2) is a more global problem. We need to occasionally override some of the global `Config` parameters at the project level. I think there is already some thinking to refactor the `Config` in the near future and we need to think about this use case while doing this refactoring.

However for "Beautifying Mac Installers for Chef Client and Chef DK" we need to have a shortcut solution in the very short term. I don't think (2) above is the long term solution however it would remediate the immediate needs until we get to refactoring config.

This is the cleanest thing I can think for the short term. I'm open to other ideas. However we need to have a quick decision. Thoughts @opscode/release-engineers ?

/cc: @opscode/client-eng