tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 description: MySQL RDBMS installation on a specific mounted volume path. template_name: mysql-uploadComponent template_version: 1.1.1-SNAPSHOT template_author: FastConnect imports: - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" node_types: alien.nodes.Mysql-uploadComponent: derived_from: tosca.nodes.Database description: > A node to install MySQL v5.5 database with data on a specific attached volume. capabilities: host: type: alien.capabilities.MysqlDatabase properties: valid_node_types: [ tosca.nodes.WebApplication ] requirements: - host: tosca.nodes.Compute type: tosca.relationships.HostedOn tags: icon: /images/mysql.png properties: db_port: type: integer default: 3306 description: The port on which the underlying database service will listen to data. db_name: type: string required: true default: wordpress description: The logical name of the database. db_user: type: string default: pass description: The special user account used for database administration. db_password: type: string default: pass description: The password associated with the user account provided in the ‘db_user’ property. bind_address: type: boolean default: true required: false description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. storage_path: type: string default: /mountedStorage constraints: - valid_values: [ "/mountedStorage", "/var/mysql" ] interfaces: Standard: create: scripts/install_mysql.sh start: inputs: VOLUME_HOME: { get_property: [SELF, storage_path] } PORT: { get_property: [SELF, db_port] } DB_NAME: { get_property: [SELF, db_name] } DB_USER: { get_property: [SELF, db_user] } DB_PASSWORD: { get_property: [SELF, db_password] } BIND_ADRESS: { get_property: [SELF, bind_address] } implementation: scripts/start_mysql.sh fastconnect.cloudify.extensions: start_detection: inputs: PORT: { get_property: [SELF, db_port] } implementation: scripts/mysql_start_detection.groovy artifacts: - scripts: scripts type: tosca.artifacts.File capability_types: alien.capabilities.MysqlDatabase: derived_from: tosca.capabilities.Container artifact_types: tosca.artifacts.GroovyScript: description: A groovy script (.groovy file) file_ext: [groovy]