53d3af77f7
subscription-manager will fail if run from within a container. Since some nodes are bindmounting /run, a .containerenv file is exposed inside /run on the hosts and this breaks subscription-manager on overcloud nodes. We can bypass this validation from subscription-manager by enabling the SMDEV_CONTAINER_OFF environment boolean as described here [1]. Related: https://bugzilla.redhat.com/show_bug.cgi?id=2058540 [1] https://github.com/candlepin/subscription-manager/pull/2652/files Co-authored-by: Bogdan Dobrelia <bdobreli@redhat.com> Depends-On: https://review.opendev.org/c/openstack/ansible-role-redhat-subscription/+/831810 Change-Id: Id23af246cc91fa830c30985437791533e8bd354c
86 lines
2.7 KiB
YAML
86 lines
2.7 KiB
YAML
heat_template_version: wallaby
|
|
|
|
description: Configure Red Hat Subscription Management.
|
|
|
|
parameters:
|
|
RoleNetIpMap:
|
|
default: {}
|
|
type: json
|
|
ServiceData:
|
|
default: {}
|
|
description: Dictionary packing service data
|
|
type: json
|
|
ServiceNetMap:
|
|
default: {}
|
|
description: Mapping of service_name -> network name. Typically set
|
|
via parameter_defaults in the resource registry. Use
|
|
parameter_merge_strategies to merge it with the defaults.
|
|
type: json
|
|
RoleName:
|
|
default: ''
|
|
description: Role name on which the service is applied
|
|
type: string
|
|
RoleParameters:
|
|
default: {}
|
|
description: Parameters specific to the role
|
|
type: json
|
|
EndpointMap:
|
|
default: {}
|
|
description: Mapping of service endpoint -> protocol. Typically set
|
|
via parameter_defaults in the resource registry.
|
|
type: json
|
|
RhsmVars:
|
|
default: {}
|
|
description: Hash of ansible-role-redhat-subscription variables
|
|
used to configure RHSM.
|
|
# The parameters contains sensible data like activation key or password.
|
|
hidden: true
|
|
tags:
|
|
- role_specific
|
|
type: json
|
|
|
|
resources:
|
|
# Merging role-specific parameters (RoleParameters) with the default parameters.
|
|
# RoleParameters will have the precedence over the default parameters.
|
|
RoleParametersValue:
|
|
type: OS::Heat::Value
|
|
properties:
|
|
type: json
|
|
value:
|
|
map_merge:
|
|
- rhsm_disable_container_check: true
|
|
- if:
|
|
- not: {equals: [{get_param: [RoleParameters, RhsmVars]}, '']}
|
|
- {get_param: [RoleParameters, RhsmVars]}
|
|
- {get_param: RhsmVars}
|
|
|
|
outputs:
|
|
role_data:
|
|
description: Role data for the RHSM service.
|
|
value:
|
|
service_name: rhsm
|
|
host_prep_tasks:
|
|
- name: Red Hat Subscription Management configuration during deployment
|
|
import_role:
|
|
name: redhat-subscription
|
|
vars: {get_attr: [RoleParametersValue, value]}
|
|
scale_tasks:
|
|
- name: Red Hat Subscription Management configuration during scale-down
|
|
tags: down
|
|
when: step|int == 1
|
|
import_role:
|
|
name: redhat-subscription
|
|
tasks_from: unregister
|
|
vars: {get_attr: [RoleParametersValue, value]}
|
|
upgrade_tasks:
|
|
- name: Red Hat Subscription Management configuration
|
|
import_role:
|
|
name: redhat-subscription
|
|
vars:
|
|
map_merge:
|
|
- {get_attr: [RoleParametersValue, value]}
|
|
# Force only rhsm_repos content to be enabled.
|
|
- rhsm_repos_purge: True
|
|
- rhsm_force_register: True
|
|
when: step|int == 0
|