Merge "Allow enabling debug mode for config management (Puppet)"
[apex-tripleo-heat-templates.git] / extraconfig / pre_deploy / rhel-registration / rhel-registration.yaml
1 heat_template_version: 2014-10-16
2
3 description: >
4   RHEL Registration and unregistration software deployments.
5
6 # Note extra parameters can be defined, then passed data via the
7 # environment parameter_defaults, without modifying the parent template
8 parameters:
9   server:
10     type: string
11   # To be defined via a local or global environment in parameter_defaults
12   rhel_reg_activation_key:
13     type: string
14   rhel_reg_auto_attach:
15     type: string
16   rhel_reg_base_url:
17     type: string
18   rhel_reg_environment:
19     type: string
20   rhel_reg_force:
21     type: string
22   rhel_reg_machine_name:
23     type: string
24   rhel_reg_org:
25     type: string
26   rhel_reg_password:
27     type: string
28   rhel_reg_pool_id:
29     type: string
30   rhel_reg_release:
31     type: string
32   rhel_reg_repos:
33     type: string
34   rhel_reg_sat_url:
35     type: string
36   rhel_reg_server_url:
37     type: string
38   rhel_reg_service_level:
39     type: string
40   rhel_reg_user:
41     type: string
42   rhel_reg_type:
43     type: string
44   rhel_reg_method:
45     type: string
46
47 resources:
48
49   RHELRegistration:
50     type: OS::Heat::SoftwareConfig
51     properties:
52       group: script
53       inputs:
54         - name: REG_ACTIVATION_KEY
55         - name: REG_AUTO_ATTACH
56         - name: REG_BASE_URL
57         - name: REG_ENVIRONMENT
58         - name: REG_FORCE
59         - name: REG_MACHINE_NAME
60         - name: REG_ORG
61         - name: REG_PASSWORD
62         - name: REG_POOL_ID
63         - name: REG_RELEASE
64         - name: REG_REPOS
65         - name: REG_SAT_URL
66         - name: REG_SERVER_URL
67         - name: REG_SERVICE_LEVEL
68         - name: REG_USER
69         - name: REG_TYPE
70         - name: REG_METHOD
71       config: {get_file: scripts/rhel-registration}
72
73   RHELRegistrationDeployment:
74     type: OS::Heat::SoftwareDeployment
75     properties:
76       server:  {get_param: server}
77       config: {get_resource: RHELRegistration}
78       actions: ['CREATE'] # Only do this on CREATE
79       input_values:
80         REG_ACTIVATION_KEY: {get_param: rhel_reg_activation_key}
81         REG_AUTO_ATTACH: {get_param: rhel_reg_auto_attach}
82         REG_BASE_URL: {get_param: rhel_reg_base_url}
83         REG_ENVIRONMENT: {get_param: rhel_reg_environment}
84         REG_FORCE: {get_param: rhel_reg_force}
85         REG_MACHINE_NAME: {get_param: rhel_reg_machine_name}
86         REG_ORG: {get_param: rhel_reg_org}
87         REG_PASSWORD: {get_param: rhel_reg_password}
88         REG_POOL_ID: {get_param: rhel_reg_pool_id}
89         REG_RELEASE: {get_param: rhel_reg_release}
90         REG_REPOS: {get_param: rhel_reg_repos}
91         REG_SAT_URL: {get_param: rhel_reg_sat_url}
92         REG_SERVER_URL: {get_param: rhel_reg_server_url}
93         REG_SERVICE_LEVEL: {get_param: rhel_reg_service_level}
94         REG_USER: {get_param: rhel_reg_user}
95         REG_TYPE: {get_param: rhel_reg_type}
96         REG_METHOD: {get_param: rhel_reg_method}
97
98   RHELUnregistration:
99     type: OS::Heat::SoftwareConfig
100     properties:
101       group: script
102       config: {get_file: scripts/rhel-unregistration}
103       inputs:
104         - name: REG_METHOD
105
106   RHELUnregistrationDeployment:
107     type: OS::Heat::SoftwareDeployment
108     properties:
109       server:  {get_param: server}
110       config: {get_resource: RHELUnregistration}
111       actions: ['DELETE'] # Only do this on DELETE
112       input_values:
113         REG_METHOD: {get_param: rhel_reg_method}
114
115 outputs:
116   deploy_stdout:
117     description: Deployment reference, used to trigger puppet apply on changes
118     value: {get_attr: [RHELRegistrationDeployment, deploy_stdout]}
119