Advertisement
Guest User

Untitled

a guest
Dec 29th, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.75 KB | None | 0 0
  1. heat_template_version: 2017-02-24
  2.  
  3. description: >
  4. wordpress HPCC
  5. parameters:
  6. key_name:
  7. type: string
  8. description: Name of a key pair to enable SSH access to instances.
  9. default: default
  10. flavor:
  11. type: string
  12. description: Flavor to use for the WordPress server.
  13. constraints:
  14. - custom_constraint: nova.flavor
  15. image:
  16. type: string
  17. description: >
  18. Name or ID of the image to use for the WordPress server.
  19. Recommended values are fedora-20.i386 or fedora-20.x86_64.
  20. Those images can be obtained from
  21. http://cloud.fedoraproject.org/fedora-20.i386.qcow2 or from
  22. http://cloud.fedoraproject.org/fedora-20.x86_64.qcow2 .
  23. The used image also has to have elements for software config built in.
  24. default: fedora-20.x86_64
  25. db_name:
  26. type: string
  27. description: WordPress database name
  28. default: wordpress
  29. constraints:
  30. - length: { min: 1, max: 64 }
  31. description: db_name must be between 1 and 64 characters
  32. - allowed_pattern: '[a-zA-Z][a-zA-Z0-9]*'
  33. description: >
  34. db_name must begin with a letter and contain only alphanumeric
  35. characters
  36. db_username:
  37. type: string
  38. description: The WordPress database admin account username
  39. default: admin
  40. hidden: true
  41. constraints:
  42. - length: { min: 1, max: 16 }
  43. description: db_username must be between 1 and 64 characters
  44. - allowed_pattern: '[a-zA-Z][a-zA-Z0-9]*'
  45. description: >
  46. db_username must begin with a letter and contain only alphanumeric
  47. characters
  48. resources:
  49. wordpress_config:
  50. type: OS::Heat::SoftwareConfig
  51. properties:
  52. inputs:
  53. - name: db_name
  54. - name: db_user
  55. - name: db_password
  56. - name: db_ipaddr
  57. group: script
  58. config: { get_file: wp_install.sh }
  59.  
  60. db_config:
  61. type: OS::Heat::SoftwareConfig
  62. properties:
  63. inputs:
  64. - name: db_rootpassword
  65. - name: db_name
  66. - name: db_user
  67. - name: db_password
  68. group: script
  69. config: { get_file: db_install.sh }
  70.  
  71. db_root_password:
  72. type: OS::Heat::RandomString
  73.  
  74. db_password:
  75. type: OS::Heat::RandomString
  76.  
  77. wordpress_deployment:
  78. type: OS::Heat::SoftwareDeployment
  79. depends_on: db_deployment
  80. properties:
  81. config:
  82. get_resource: wordpress_config
  83. server:
  84. get_resource: webserver_instance
  85. input_values:
  86. db_name: { get_param: db_name }
  87. db_user: { get_param: db_username }
  88. db_password: { get_attr: [ db_password, value ] }
  89. db_ipaddr: { get_attr: [ dbserver_instance, networks, private, 0 ] }
  90.  
  91. db_deployment:
  92. type: OS::Heat::SoftwareDeployment
  93. properties:
  94. config:
  95. get_resource: db_config
  96. server:
  97. get_resource: dbserver_instance
  98. input_values:
  99. db_rootpassword: { get_attr: [ db_root_password, value ] }
  100. db_name: { get_param: db_name }
  101. db_user: { get_param: db_username }
  102. db_password: { get_attr: [ db_password, value ] }
  103.  
  104. webserver_instance:
  105. type: OS::Nova::Server
  106. properties:
  107. image: { get_param: image }
  108. flavor: { get_param: flavor }
  109. key_name: { get_param: key_name }
  110. user_data_format: SOFTWARE_CONFIG
  111.  
  112. dbserver_instance:
  113. type: OS::Nova::Server
  114. properties:
  115. image: { get_param: image }
  116. flavor: { get_param: flavor }
  117. key_name: { get_param: key_name }
  118. user_data_format: SOFTWARE_CONFIG
  119.  
  120. outputs:
  121. WebsiteURL:
  122. description: URL for Wordpress wiki
  123. value:
  124. str_replace:
  125. template: http://host/wordpress
  126. params:
  127. host: { get_attr: [webserver_instance, networks, private, 0] }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement