Allow to specify a user SoftwareConfig template

Registered by Mathieu Velten

We could use Heat resource_registry to allow the user to provide a custom SoftwareConfig that will be called by each node/master.
Example of typical usage : register a CA.

The implementation would be something like :
- add a new entry in MultipartMime, with a corresponding resource with a custom type like User::SoftwareConfig
- define this User::SoftwareConfig as an empty SoftwareConfig by default
- use resource_registry to map the provided user SoftwareConfig template if needed

Should we provide 2 hooks, one for before the various other scripts and one for after ?
I would say a single hook after would be enough but I am unsure.

Blueprint information

Status:
Not started
Approver:
Adrian Otto
Priority:
Medium
Drafter:
Mathieu Velten
Direction:
Approved
Assignee:
Spyros Trigazis
Definition:
New
Series goal:
Accepted for rocky
Implementation:
Unknown
Milestone target:
milestone icon rocky-2

Related branches

Sprints

Whiteboard

(ricardo_rocha): another example of a feature that does not make sense upstream but we need:
- CERN applications access an internal distributed filesystem called cvmfs for installation of analysis software (these are http caches with clients using fuse mounts)
- we've written a docker volume driver for it, but need to have the magnum hosts configured to get the bind mounts working properly (and launch the docker-volume-cvmfs daemon), without having every container requiring --privileged
- a hook that would allow us to extend the templates without changing the upstream ones would make maintenance and upgrades a bit easier

(hongbin): Ricardo, the approach sounds good to me. I think we can start with a single hook and add another hook later if needed. BTW, could I know who is going to implement this BP so that I can assign the BP to him/her.

(ricardo_rocha): That would be Spyros :) Thanks.

Gerrit topic: https://review.openstack.org/#q,topic:bp/decouple-lbaas,n,z

Addressed by: https://review.openstack.org/334009
    [WIP] Allow Bay templates to include Heat environments

Addressed by: https://review.openstack.org/336702
    Allow Bay templates to include Heat environments

Gerrit topic: https://review.openstack.org/#q,topic:bp/heat-agent,n,z

Addressed by: https://review.openstack.org/525662
    WIP: Add pre_hook interface

Gerrit topic: https://review.openstack.org/#q,topic:bug/1680900,n,z

Gerrit topic: https://review.openstack.org/#q,topic:bp/allow-user-softwareconfig,n,z

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.