Olá, Cledson. Tudo bem?
Sim, é possível. O Ansible permite executar comandos shell diretamente. No seu caso, você gostaria de ativar o ambiente virtual e executar o servidor. Pra isso, você pode usar o módulo shell
do Ansible.
- name: Executar servidor Django
hosts: seu_host
tasks:
- name: Ativar ambiente virtual e executar servidor
shell: |
source venv/bin/activate
python manage.py runserver 0.0.0.0:8000
args:
chdir: /caminho/para/seu/projeto
O módulo shell
executa os comandos em sequência. O argumento chdir
é usado para mudar para o diretório do seu projeto antes de executar os comandos.
E claro, lembrar de substituir seu_host
pelo host onde você deseja executar o servidor e /caminho/para/seu/projeto
pelo caminho real do seu projeto no servidor.
Um abraço e bons estudos.