Posso fazer uma ação juju passar um arquivo de volta para onde foi chamado?

0

Os documentos descrevem uma ação de "instantâneo", que faz o backup de um banco de dados. Eu usei algo semelhante, mas eu estava pensando, uma vez que o instantâneo criar um arquivo (no meu caso, um despejo postgresql) ele só fica lá na máquina para esse encanto particular. Não há uma maneira de devolvê-lo à máquina de onde você executou o comando "juju run-action ..."? (Não tenho certeza da terminologia aqui, então vou chamá-la de "host")

Estou usando python e sei que você pode usar hookenv.action_set({}) para passar uma mensagem de volta, mas e quanto a um arquivo inteiro? Acho que eu poderia usar isso para passar o conteúdo do arquivo de volta, mas parece um pouco hacky.

Se eu usar algo como: %código% e tente scp o arquivo usando a informação do host_ip, ele quer uma senha, então não é realmente automatizado.

Alguém tem alguma sugestão para fazer isso de dentro de uma ação, por favor?

    
por Darren 28.10.2016 / 14:38

1 resposta

1

Você pode enviar uma chave privada shh em ação de charme,

$ juju run-action ssh_pkey='cat .ssh/somekey'

e adicione chave pública para hospedar authorized_keys.

ou apenas defina a chave do host na configuração de charme

$ juju config myservice key='cat .ssh/somekey'
    
por rudicba 29.11.2016 / 04:47