Add subordinate packages interface helper
Publish releases packages map to principal charm Related-Bug: #1806111 Change-Id: I1d58e9735360a43f9d2d32d6aefe18d0e5a2937d
This commit is contained in:
parent
fec2ad600a
commit
18893a5c38
18
provides.py
18
provides.py
@ -12,12 +12,15 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
|
import json
|
||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
from charms.reactive import RelationBase
|
from charms.reactive import RelationBase
|
||||||
from charms.reactive import hook
|
from charms.reactive import hook
|
||||||
from charms.reactive import scopes
|
from charms.reactive import scopes
|
||||||
|
|
||||||
|
import charmhelpers.core.hookenv as hookenv
|
||||||
|
|
||||||
|
|
||||||
class KeystoneDomainBackendProvides(RelationBase):
|
class KeystoneDomainBackendProvides(RelationBase):
|
||||||
scope = scopes.GLOBAL
|
scope = scopes.GLOBAL
|
||||||
@ -47,3 +50,18 @@ class KeystoneDomainBackendProvides(RelationBase):
|
|||||||
'restart-nonce': str(uuid.uuid4())
|
'restart-nonce': str(uuid.uuid4())
|
||||||
}
|
}
|
||||||
self.set_remote(**relation_info)
|
self.set_remote(**relation_info)
|
||||||
|
|
||||||
|
def publish_releases_packages_map(self, releases_packages_map):
|
||||||
|
"""Publish releases_packages_map.
|
||||||
|
|
||||||
|
:param releases_packages_map: Map of releases and packages
|
||||||
|
:type releases_packages_map: Dict[str,Dict[str,List[str]]]
|
||||||
|
"""
|
||||||
|
# NOTE: To allow relation updates outside of relation hook execution,
|
||||||
|
# e.g. upgrade-charm hook, we need to revert to classic hookenv tools.
|
||||||
|
for rid in hookenv.relation_ids(self.relation_name):
|
||||||
|
relation_info = {
|
||||||
|
'releases-packages-map': json.dumps(
|
||||||
|
releases_packages_map, sort_keys=True)
|
||||||
|
}
|
||||||
|
hookenv.relation_set(rid, relation_info)
|
||||||
|
Loading…
Reference in New Issue
Block a user