Como você deseja executar charm_helpers_sync.py
toda vez que implantar o encanto, suspeito que deseja sempre ter a versão mais recente de python-charmhelpers
. Existe uma maneira muito mais fácil de fazer isso:
Instale automaticamente os charmhelpers usando o python-pip
A função a seguir instala os charmhelpers usando o repositório e python-pip.
def install_charmhelpers():
"""
Install the charmhelpers library, if not present.
"""
try:
import charmhelpers # noqa
except ImportError:
import subprocess
subprocess.check_call(['apt-get', 'install', '-y', 'python-pip'])
subprocess.check_call(['pip', 'install', 'charmhelpers'])
Chame essa função na parte superior de seus scripts de gancho, acima das importações de charme-ajudante. O modelo de charme python de Juju mostra uma maneira limpa de fazer isso.
Escreva um plugin Juju para fazer o download da fonte charmhelpers
Se você realmente quer que o Juju baixe o código do charmhelpers e o inclua nos charms, você terá que escrever um plugin do Juju.
- Houve uma palestra sobre como escrever plug-ins no Ubuntu Online Summit
- Você pode encontrar outros plugins do Juju na página do gjuub do plugin Juju