Instalacion en Docker Compose de StackStorm + Rundeck con el pack de workflows de Pathgate.
Este repositorio entrega un entorno StackStorm listo para usar con un runner de acciones personalizado (Ansible/Junos moderno), el pack de desarrollo pathgate (workflows Orquesta), plantillas Jinja compartidas y un job de Rundeck precargado para ejecutar el workflow principal.
- Imagen de runner personalizada construída desde
Dockerfile.override - Ansible + Colecciones Juniper preinstaladas y enlazadas via un shim de entrypoint
packs.dev/pathgatecon acciones y workflows (ej.epl_aso_v1)- Playbooks e inventario para dispositivos Junos
- Job de Rundeck que llama a StackStorm por API Key
Consulta readme.md para la versión en inglés.
- Servicios: st2api, st2auth, st2web, st2stream, st2scheduler, st2workflowengine, st2rulesengine, st2sensorcontainer, st2notifier, st2garbagecollector, st2client
- Runner personalizado:
st2actionrunner-custom - Rundeck
rundeck/rundeck:5.15.0con jobs/tools de bootstrap - Datastores: MongoDB 4.4, RabbitMQ 3.12, Redis 7.2
- Montajes clave: playbooks, inventario, plantillas, packs.dev, configs, virtualenvs
Despliegue con Docker Compose para StackStorm + Rundeck con el pack de workflows Pathgate.
docker compose up -d --build
docker compose exec st2client bash -lc "st2 pack install ansible netbox" docker compose exec st2client bash -lc "st2 pack config netbox" docker compose exec st2client bash -lc "st2 run packs.load packs=pathgate register=all" docker compose exec st2client bash -lc "st2 run packs.setup_virtualenv packs=pathgate" docker compose exec st2client bash -lc "st2 apikey create -k"
## Ejecutar el workflow principal
```powershell
docker compose exec st2client bash -lc "\
st2 run pathgate.epl_aso_v1 \
sid=12345 pad=PE-A paif=xe-0/0/0 \
pbd=PE-B pbif=xe-0/0/1 \
bw=50 lmpvlan=123 prov=ACME dry_run=true"O usa el job de Rundeck “pathgate - epl_aso_v1”.
- Usa
ansible_inventory.examplecomo base para tu inventario real (ansible_inventory). - El runner custom expone Ansible moderno y módulos de Juniper para el runner
ansible. - Las plantillas viven en
templates/y las consume la acciónrender_vpls.
Basado en StackStorm st2-docker (ver LICENSE). Este repositorio añade la personalización Pathgate sobre el upstream.