From c799b2e04ea7e2fb0266484fd435782b5f6d3fbf Mon Sep 17 00:00:00 2001 From: Steven Hardy Date: Thu, 9 Apr 2015 15:01:08 +0100 Subject: post-deploy hook for rhel registration Adds a potential usage of the post-deploy hooks to register a server with RHN or a satellite. Note this requires some additional parameters, which can be specified in environment_rhel_reg.yaml, and this must be passed into the call to heat via another -e parameter. An alternative may be to have a global extraconfig_env.yaml at the top level, which the scripts always pass, or to use the global environment (/etc/heat/environment.d/default.yaml) on the seed. Co-Authored-By: James Slagle Change-Id: Ia6fd270122cbc2e51beb672654e5e1ebd3bd2966 --- .../rhel-registration/rhel-registration.yaml | 113 +++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 extraconfig/post_deploy/rhel-registration/rhel-registration.yaml (limited to 'extraconfig/post_deploy/rhel-registration/rhel-registration.yaml') diff --git a/extraconfig/post_deploy/rhel-registration/rhel-registration.yaml b/extraconfig/post_deploy/rhel-registration/rhel-registration.yaml new file mode 100644 index 00000000..cbf8f8b5 --- /dev/null +++ b/extraconfig/post_deploy/rhel-registration/rhel-registration.yaml @@ -0,0 +1,113 @@ +heat_template_version: 2014-10-16 + +description: > + RHEL Registration and unregistration software deployments. + +# Note extra parameters can be defined, then passed data via the +# environment parameter_defaults, without modifying the parent template +parameters: + servers: + type: json + # To be defined via a local or global environment in parameter_defaults + rhel_reg_activation_key: + type: string + rhel_reg_auto_attach: + type: string + rhel_reg_base_url: + type: string + rhel_reg_environment: + type: string + rhel_reg_force: + type: string + rhel_reg_machine_name: + type: string + rhel_reg_org: + type: string + rhel_reg_password: + type: string + rhel_reg_pool_id: + type: string + rhel_reg_release: + type: string + rhel_reg_repos: + type: string + rhel_reg_sat_url: + type: string + rhel_reg_server_url: + type: string + rhel_reg_service_level: + type: string + rhel_reg_user: + type: string + rhel_reg_type: + type: string + rhel_reg_method: + type: string + +resources: + + RHELRegistration: + type: OS::Heat::SoftwareConfig + properties: + group: script + inputs: + - name: REG_ACTIVATION_KEY + - name: REG_AUTO_ATTACH + - name: REG_BASE_URL + - name: REG_ENVIRONMENT + - name: REG_FORCE + - name: REG_MACHINE_NAME + - name: REG_ORG + - name: REG_PASSWORD + - name: REG_POOL_ID + - name: REG_RELEASE + - name: REG_REPOS + - name: REG_SAT_URL + - name: REG_SERVER_URL + - name: REG_SERVICE_LEVEL + - name: REG_USER + - name: REG_TYPE + - name: REG_METHOD + config: {get_file: scripts/rhel-registration} + + RHELRegistrationDeployment: + type: OS::Heat::StructuredDeployments + properties: + servers: {get_param: servers} + config: {get_resource: RHELRegistration} + actions: ['CREATE'] # Only do this on CREATE + input_values: + REG_ACTIVATION_KEY: {get_param: rhel_reg_activation_key} + REG_AUTO_ATTACH: {get_param: rhel_reg_auto_attach} + REG_BASE_URL: {get_param: rhel_reg_base_url} + REG_ENVIRONMENT: {get_param: rhel_reg_environment} + REG_FORCE: {get_param: rhel_reg_force} + REG_MACHINE_NAME: {get_param: rhel_reg_machine_name} + REG_ORG: {get_param: rhel_reg_org} + REG_PASSWORD: {get_param: rhel_reg_password} + REG_POOL_ID: {get_param: rhel_reg_pool_id} + REG_RELEASE: {get_param: rhel_reg_release} + REG_REPOS: {get_param: rhel_reg_repos} + REG_SAT_URL: {get_param: rhel_reg_sat_url} + REG_SERVER_URL: {get_param: rhel_reg_server_url} + REG_SERVICE_LEVEL: {get_param: rhel_reg_service_level} + REG_USER: {get_param: rhel_reg_user} + REG_TYPE: {get_param: rhel_reg_type} + REG_METHOD: {get_param: rhel_reg_method} + + RHELUnregistration: + type: OS::Heat::SoftwareConfig + properties: + group: script + config: {get_file: scripts/rhel-unregistration} + inputs: + - name: REG_METHOD + + RHELUnregistrationDeployment: + type: OS::Heat::StructuredDeployments + properties: + servers: {get_param: servers} + config: {get_resource: RHELUnregistration} + actions: ['DELETE'] # Only do this on DELETE + input_values: + REG_METHOD: {get_param: rhel_reg_method} -- cgit 1.2.3-korg