3fa1f62f106c765b373ae123d5ed271196f50101
[parser.git] /
1 heat_template_version: 2013-05-23
2
3 description: >
4   TOSCA simple profile with wordpress, web server and mysql on the same server.
5
6 parameters:
7   db_name:
8     type: string
9     description: The name of the database.
10     default: wordpress
11   db_user:
12     type: string
13     description: The user name of the DB user.
14     default: wp_user
15   db_pwd:
16     type: string
17     description: The WordPress database admin account password.
18     default: wp_pass
19   cpus:
20     type: number
21     description: Number of CPUs for the server.
22     default: 8
23     constraints:
24     - allowed_values:
25       - 1
26       - 2
27       - 4
28       - 8
29   db_root_pwd:
30     type: string
31     description: Root password for MySQL.
32     default: passw0rd
33   db_port:
34     type: number
35     description: Port for the MySQL database.
36     default: 3366
37
38 resources:
39
40   mysql_dbms_create_config:
41     type: OS::Heat::SoftwareConfig
42     properties:
43       config:
44         get_file: mysql/mysql_dbms_install.sh
45       group: script
46
47   mysql_dbms_create_deploy:
48     type: OS::Heat::SoftwareDeployment
49     properties:
50       config:
51         get_resource: mysql_dbms_create_config
52       input_values:
53         db_root_password: passw0rd
54       server:
55         get_resource: server
56
57   mysql_dbms_start_config:
58     type: OS::Heat::SoftwareConfig
59     properties:
60       config:
61         get_file: mysql/mysql_dbms_start.sh
62       group: script
63
64   mysql_dbms_start_deploy:
65     type: OS::Heat::SoftwareDeployment
66     properties:
67       config:
68         get_resource: mysql_dbms_start_config
69       server:
70         get_resource: server
71     depends_on:
72     - mysql_dbms_configure_deploy
73
74   mysql_dbms_configure_config:
75     type: OS::Heat::SoftwareConfig
76     properties:
77       config:
78         get_file: mysql/mysql_dbms_configure.sh
79       group: script
80
81   mysql_dbms_configure_deploy:
82     type: OS::Heat::SoftwareDeployment
83     properties:
84       config:
85         get_resource: mysql_dbms_configure_config
86       input_values:
87         db_port: 3366
88       server:
89         get_resource: server
90     depends_on:
91     - mysql_dbms_create_deploy
92
93   mysql_database_configure_config:
94     type: OS::Heat::SoftwareConfig
95     properties:
96       config:
97         get_file: mysql/mysql_database_configure.sh
98       group: script
99
100   mysql_database_configure_deploy:
101     type: OS::Heat::SoftwareDeployment
102     properties:
103       config:
104         get_resource: mysql_database_configure_config
105       input_values:
106         db_name: wordpress
107         db_password: wp_pass
108         db_root_password: passw0rd
109         db_user: wp_user
110       server:
111         get_resource: server
112     depends_on:
113     - mysql_dbms_start_deploy
114
115   webserver_create_config:
116     type: OS::Heat::SoftwareConfig
117     properties:
118       config:
119         get_file: webserver/webserver_install.sh
120       group: script
121
122   webserver_create_deploy:
123     type: OS::Heat::SoftwareDeployment
124     properties:
125       config:
126         get_resource: webserver_create_config
127       server:
128         get_resource: server
129
130   webserver_start_config:
131     type: OS::Heat::SoftwareConfig
132     properties:
133       config:
134         get_file: webserver/webserver_start.sh
135       group: script
136
137   webserver_start_deploy:
138     type: OS::Heat::SoftwareDeployment
139     properties:
140       config:
141         get_resource: webserver_start_config
142       server:
143         get_resource: server
144     depends_on:
145     - webserver_create_deploy
146
147   wordpress_create_config:
148     type: OS::Heat::SoftwareConfig
149     properties:
150       config:
151         get_file: wordpress/wordpress_install.sh
152       group: script
153
154   wordpress_create_deploy:
155     type: OS::Heat::SoftwareDeployment
156     properties:
157       config:
158         get_resource: wordpress_create_config
159       server:
160         get_resource: server
161     depends_on:
162     - webserver_start_deploy
163     - mysql_database_configure_deploy
164
165   wordpress_configure_config:
166     type: OS::Heat::SoftwareConfig
167     properties:
168       config:
169         get_file: wordpress/wordpress_configure.sh
170       group: script
171
172   wordpress_configure_deploy:
173     type: OS::Heat::SoftwareDeployment
174     properties:
175       config:
176         get_resource: wordpress_configure_config
177       input_values:
178         wp_db_name: wordpress
179         wp_db_password: wp_pass
180         wp_db_user: wp_user
181       server:
182         get_resource: server
183     depends_on:
184     - wordpress_create_deploy
185
186   server:
187     type: OS::Nova::Server
188     properties:
189       flavor: m1.xlarge
190       image: ubuntu-software-config-os-init
191       key_name: userkey
192       user_data_format: SOFTWARE_CONFIG
193
194 outputs:
195   website_url:
196     description: URL for Wordpress wiki.
197     value:
198       get_attr:
199       - server
200       - networks
201       - private
202       - 0