heat_template_version: ocata description: > This is a template which will fetch the ssh host public key. parameters: server: description: ID of the node to apply this config to type: string resources: SshHostPubKeyConfig: type: OS::Heat::SoftwareConfig properties: group: script outputs: - name: rsa - name: ecdsa - name: ed25519 config: | #!/bin/sh -x test -e '/etc/ssh/ssh_host_rsa_key.pub' && cat /etc/ssh/ssh_host_rsa_key.pub > $heat_outputs_path.rsa test -e '/etc/ssh/ssh_host_ecdsa_key.pub' && cat /etc/ssh/ssh_host_ecdsa_key.pub > $heat_outputs_path.ecdsa test -e '/etc/ssh/ssh_host_ed25519_key.pub' && cat /etc/ssh/ssh_host_ed25519_key.pub > $heat_outputs_path.ed25519 SshHostPubKeyDeployment: type: OS::Heat::SoftwareDeployment properties: config: {get_resource: SshHostPubKeyConfig} server: {get_param: server} outputs: ecdsa: description: Host ssh public key (ecdsa) value: {get_attr: [SshHostPubKeyDeployment, ecdsa]} rsa: description: Host ssh public key (rsa) value: {get_attr: [SshHostPubKeyDeployment, rsa]} ed25519: description: Host ssh public key (ed25519) value: {get_attr: [SshHostPubKeyDeployment, ed25519]}