41 lines
1.7 KiB
Markdown
41 lines
1.7 KiB
Markdown
# Flowable runbook
|
|
|
|
Flowable (`infra/flowable/docker-compose.yml`) runs the **flowable-rest** engine on
|
|
Postgres. The `workflows/registratie.bpmn` model is deployed via the REST API at boot by
|
|
the `flowable-init` container. Host port **:8090**; REST API under
|
|
`http://localhost:8090/flowable-rest/service/` (basic auth **rest-admin / test**, dev only).
|
|
|
|
## The model — `registratie`
|
|
|
|
A minimal "Registratie ontvangen" process: **start → external-worker task
|
|
`OpenZaakAanmaken` → end**. The external task is where the Workflow Client / ACL will
|
|
later create the zaak in OpenZaak (S-04/S-05); for now a started instance parks there.
|
|
|
|
## Quick test (`make`)
|
|
|
|
```bash
|
|
make flowable-up # start engine + deploy registratie.bpmn on boot
|
|
make flowable-smoke # start + verify a new instance waits on the external task
|
|
make flowable-down # stop + wipe
|
|
```
|
|
|
|
`make flowable-smoke` runs `infra/flowable/verify.py`, which:
|
|
1. waits for the `registratie` process definition to be deployed,
|
|
2. starts an instance and asserts it did **not** end immediately,
|
|
3. asserts an execution is parked at activity **`OpenZaakAanmaken`**,
|
|
4. deletes the test instance.
|
|
|
|
## Notes
|
|
|
|
- **Deploy on boot** is idempotent: `flowable-init` skips if a deployment named
|
|
`registratie` already exists (so restarts on the same volume don't pile up versions).
|
|
- **Dev creds:** `rest-admin` / `test`. Override via the flowable-rest app config for
|
|
anything beyond local dev.
|
|
- **Image** `flowable/flowable-rest:latest` — pin a tag when stabilising.
|
|
- Start an instance by hand:
|
|
```bash
|
|
curl -s -u rest-admin:test -H 'Content-Type: application/json' \
|
|
-d '{"processDefinitionKey":"registratie"}' \
|
|
http://localhost:8090/flowable-rest/service/runtime/process-instances
|
|
```
|