The challenge with 2) is that currently deployment resources do not expose any digestable attributes. Some possible solutions are:
a) In heat implement and backport a derived_config_id attribute on deployment resources
b) Replace os-apply-config config resources with a dedicated hieradata config resource, and use a custom orc script to do the hiera merging. This script signals back either the derived_config_id or a digest of all hieradata
Then 2) can be implemented digesting the required attribute from all the hiera deployment resources.
I think a) is worth trying, if we can justify it as a bugfix backport
The challenge with 2) is that currently deployment resources do not expose any digestable attributes. Some possible solutions are:
a) In heat implement and backport a derived_config_id attribute on deployment resources
b) Replace os-apply-config config resources with a dedicated hieradata config resource, and use a custom orc script to do the hiera merging. This script signals back either the derived_config_id or a digest of all hieradata
Then 2) can be implemented digesting the required attribute from all the hiera deployment resources.
I think a) is worth trying, if we can justify it as a bugfix backport