plugins: ansible: executor: central_deployment_agent source: https://github.com/cloudify-cosmo/cloudify-ansible-plugin/archive/2.8.2.zip package_name: cloudify-ansible-plugin package_version: '2.8.2' dsl_definitions: playbook_config: &playbook_config ansible_playbook_executable_path: type: string default: "ansible-playbook" description: > A full path to your ansible_playbook executable if user don't want to use the included version of executable in the plugin playbook_source_path: type: string default: "" description: > A full path/URL that contain playbook specified in playbook_path or site_yaml_path. playbook_path: type: string default: "" description: > A path to your `site.yaml` or `main.yaml` in your Ansible Playbook relative to blueprint or playbook_source_path if playbook_source_path is URL to archive File relative inside the archive. site_yaml_path: type: string default: "" description: > DEPRECATED. A path to your `site.yaml` or `main.yaml` in your Ansible Playbook relative to blueprint or playbook_source_path if playbook_source_path is URL to archive File relative inside the archive. additional_playbook_files: # uncomment on 5+ # type: list default: [] description: > A list of string paths blueprint resources that you would like to download to the playbook directory. If you use this variable, you must list all of the paths that you expect to download. sources: type: string default: "" description: > Your Inventory sources. Either YAML or a path to a file. If not provided the inventory will be take from the `sources` runtime property. run_data: default: {} description: > Variable values. sensitive_keys: # uncomment on 5+ # type: list description: keys that you want us to obscure default: - ansible_password options_config: default: {} description: > Command-line options, such as `tags` or `skip_tags`. ansible_env_vars: default: ANSIBLE_HOST_KEY_CHECKING: "False" # On Ansible 2.8.x "INVALID_TASK_ATTRIBUTE_FAILED" default value has # been changed to "True" which cause failure when run playbook ANSIBLE_INVALID_TASK_ATTRIBUTE_FAILED: "False" description: > A dictionary of environment variables to set. debug_level: type: integer default: 2 description: > Debug level additional_args: type: string description: > Additional args that you want to use, for example, '-c local'. default: '' save_playbook: type: boolean description: > Save playbook after action default: false remerge_sources: type: boolean description: > update sources on target node default: false ansible_become: type: boolean description: > A boolean value, `true` or `false` whether to assume the user privileges. default: false playbook_inputs: &playbook_inputs ansible_playbook_executable_path: default: { get_property: [SELF, ansible_playbook_executable_path] } playbook_source_path: default: { get_property: [SELF, playbook_source_path] } playbook_path: default: { get_property: [SELF, playbook_path] } site_yaml_path: default: { get_property: [SELF, site_yaml_path] } save_playbook: default: { get_property: [SELF, save_playbook] } remerge_sources: default: { get_property: [SELF, remerge_sources] } sources: default: { get_property: [SELF, sources] } run_data: default: { get_property: [SELF, run_data] } sensitive_keys: default: { get_property: [SELF, sensitive_keys] } options_config: default: { get_property: [SELF, options_config] } ansible_env_vars: default: { get_property: [SELF, ansible_env_vars] } debug_level: default: { get_property: [SELF, debug_level] } additional_args: default: { get_property: [SELF, additional_args] } node_types: cloudify.nodes.ansible.Executor: derived_from: cloudify.nodes.Root properties: <<: *playbook_config interfaces: cloudify.interfaces.lifecycle: start: implementation: ansible.cloudify_ansible.tasks.run inputs: <<: *playbook_inputs delete: implementation: ansible.cloudify_ansible.tasks.cleanup cloudify.nodes.ansible.Playbook: derived_from: cloudify.nodes.Root properties: <<: *playbook_config interfaces: cloudify.interfaces.lifecycle: configure: implementation: ansible.cloudify_ansible.tasks.set_playbook_config inputs: <<: *playbook_inputs ansible: reload: implementation: ansible.cloudify_ansible.tasks.run inputs: <<: *playbook_inputs relationships: cloudify.ansible.relationships.connected_to_host: derived_from: cloudify.relationships.connected_to source_interfaces: cloudify.interfaces.relationship_lifecycle: preconfigure: implementation: ansible.cloudify_ansible.tasks.ansible_requires_host inputs: group_name: default: "" description: > Ansible node group name hostname: default: "" description: > Hostname host_config: default: {} description: > Host configuration: ansible_host: The hostname or IP address of the host to SSH into. ansible_user: The username to SSH with. ansible_ssh_private_key_file: The private key file to SSH with. ansible_become: A boolean value, `true` or `false` whether to assume the user privileges. ansible_ssh_common_args: Additional arguments to the SSH command, by default: '-o StrictHostKeyChecking=no' unlink: implementation: ansible.cloudify_ansible.tasks.ansible_remove_host inputs: group_name: default: "" description: > Ansible node group name hostname: default: "" description: > Hostname cloudify.ansible.relationships.run_on_host: derived_from: cloudify.relationships.connected_to source_interfaces: cloudify.interfaces.relationship_lifecycle: establish: implementation: ansible.cloudify_ansible.tasks.run inputs: ansible_playbook_executable_path: default: { get_attribute: [SOURCE, ansible_playbook_executable_path] } playbook_source_path: default: { get_attribute: [SOURCE, playbook_source_path] } playbook_path: default: { get_attribute: [SOURCE, playbook_path] } site_yaml_path: default: { get_attribute: [SOURCE, site_yaml_path] } save_playbook: default: { get_attribute: [SOURCE, save_playbook] } remerge_sources: default: { get_attribute: [SOURCE, remerge_sources] } sources: default: { get_attribute: [SOURCE, sources] } run_data: default: { get_attribute: [SOURCE, run_data] } sensitive_keys: default: { get_attribute: [SOURCE, sensitive_keys] } options_config: default: { get_attribute: [SOURCE, options_config] } ansible_env_vars: default: { get_attribute: [SOURCE, ansible_env_vars] } debug_level: default: { get_attribute: [SOURCE, debug_level] } additional_args: default: { get_attribute: [SOURCE, additional_args] } unlink: implementation: ansible.cloudify_ansible.tasks.cleanup workflows: reload_ansible_playbook: mapping: ansible.cloudify_ansible.workflows.reload_playbook parameters: playbook_source_path: type: string default: "" description: > A full path/URL that contain playbook specified in playbook_path or site_yaml_path. playbook_path: type: string default: "" description: > A path to your `site.yaml` or `main.yaml` in your Ansible Playbook relative to blueprint or playbook_source_path if playbook_source_path is URL to archive File relative inside the archive. node_instance_ids: # uncomment on 5+ # type: list default: [] description: | List of node instance ID's to reload for. node_ids: # uncomment on 5+ # type: list default: [] description: | List of node templates to reload for.