heat_template_version: 2013-05-23 description: > TOSCA simple profile with nodejs and mongodb. parameters: github_url: type: string description: The URL to download nodejs. default: http://github.com/paypal/rest-api-sample-app-nodejs.git my_cpus: type: number description: Number of CPUs for the server. default: 4 constraints: - allowed_values: - 1 - 2 - 4 - 8 resources: mongo_dbms_create_deploy: type: OS::Heat::SoftwareDeployment properties: config: get_resource: mongo_dbms_create_config server: get_resource: mongo_server mongo_dbms_create_config: type: OS::Heat::SoftwareConfig properties: config: get_file: mongodb/create.sh group: script mongo_dbms_configure_deploy: type: OS::Heat::SoftwareDeployment properties: config: get_resource: mongo_dbms_configure_config input_values: mongodb_ip: get_attr: - mongo_server - networks - private - 0 server: get_resource: mongo_server depends_on: - mongo_dbms_create_deploy mongo_dbms_configure_config: type: OS::Heat::SoftwareConfig properties: config: get_file: mongodb/config.sh group: script mongo_dbms_start_deploy: type: OS::Heat::SoftwareDeployment properties: config: get_resource: mongo_dbms_start_config server: get_resource: mongo_server depends_on: - mongo_dbms_configure_deploy mongo_dbms_start_config: type: OS::Heat::SoftwareConfig properties: config: get_file: mongodb/start.sh group: script mongo_db_create_deploy: type: OS::Heat::SoftwareDeployment properties: config: get_resource: mongo_db_create_config server: get_resource: mongo_server depends_on: - mongo_dbms_start_deploy mongo_db_create_config: type: OS::Heat::SoftwareConfig properties: config: get_file: mongodb/create_database.sh group: script nodejs_create_deploy: type: OS::Heat::SoftwareDeployment properties: config: get_resource: nodejs_create_config server: get_resource: app_server nodejs_create_config: type: OS::Heat::SoftwareConfig properties: config: get_file: nodejs/create.sh group: script paypal_pizzastore_configure_deploy: type: OS::Heat::SoftwareDeployment properties: config: get_resource: paypal_pizzastore_configure_config input_values: github_url: http://github.com/paypal/rest-api-sample-app-nodejs.git mongodb_ip: get_attr: - mongo_server - networks - private - 0 server: get_resource: app_server depends_on: - mongo_db_create_deploy - nodejs_create_deploy paypal_pizzastore_configure_config: type: OS::Heat::SoftwareConfig properties: config: get_file: nodejs/config.sh group: script paypal_pizzastore_start_deploy: type: OS::Heat::SoftwareDeployment properties: config: get_resource: paypal_pizzastore_start_config server: get_resource: app_server depends_on: - paypal_pizzastore_configure_deploy paypal_pizzastore_start_config: type: OS::Heat::SoftwareConfig properties: config: get_file: nodejs/start.sh group: script mongo_server: type: OS::Nova::Server properties: flavor: m1.medium image: ubuntu-software-config-os-init key_name: userkey user_data_format: SOFTWARE_CONFIG app_server: type: OS::Nova::Server properties: flavor: m1.medium image: ubuntu-software-config-os-init key_name: userkey user_data_format: SOFTWARE_CONFIG outputs: mongodb_url: description: URL for the mongodb server. value: get_attr: - mongo_server - networks - private - 0 nodejs_url: description: URL for the nodejs server, http://:3000 value: get_attr: - app_server - networks - private - 0