2026-09-14T13:59:21.579766Z INFO webhook::routes: Triggered restart for service directus-sync
2026-09-14T13:59:21.580158Z INFO service{name="directus-sync"}: webhook::restart: Restarting...
2026-09-14T13:59:21.580788Z DEBUG service{name="directus-sync"}:stop_command: webhook::restart: Command is empty, skipping
2026-09-14T13:59:21.580825Z DEBUG service{name="directus-sync"}:pre_start_command: webhook::restart: Command is empty, skipping
2026-09-14T13:59:21.580850Z DEBUG service{name="directus-sync"}:start_command: webhook::restart: command="ansible-pull -U https://github.com/clicepfl/clic-infra -e @/var/secrets.yaml deploy.yaml --extra-vars SERVICES=directus --extra-vars DIRECTUS_SYNC_ONLY=true"
2026-09-14T13:59:41.889150Z ERROR service{name="directus-sync"}:start_command: webhook::restart: Failed with status exit status: 2
2026-09-14T13:59:41.889236Z ERROR service{name="directus-sync"}:start_command: webhook::restart: STDOUT: [WARNING]: Could not match supplied host pattern, ignoring: clic-server
localhost | CHANGED => {
"after": "eeea915c019ad1c93d688e392156c7c44ed375b2",
"before": "7583398a25c0ef61e0499f191c9561ee98cc6995",
"changed": true,
"remote_url_changed": false
}
[WARNING]: No inventory was parsed, only implicit localhost is available
[WARNING]: provided hosts list is empty, only localhost is available. Note that
the implicit localhost does not match 'all'
[WARNING]: Could not match supplied host pattern, ignoring: clic-server
PLAY [Deploy all services] *****************************************************
TASK [Gathering Facts] *********************************************************
ok: [localhost]
TASK [Set full service list] ***************************************************
ok: [localhost]
TASK [Compute list of services to deploy] **************************************
ok: [localhost]
TASK [Deploy] ******************************************************************
TASK [directus : Validating arguments against arg spec 'main'] *****************
ok: [localhost]
TASK [directus : Get config] ***************************************************
changed: [localhost]
TASK [directus : Using default deploy method] **********************************
skipping: [localhost]
TASK [directus : Give docker time to down the current instance] ****************
skipping: [localhost]
TASK [directus : Wait for directus to be online] *******************************
skipping: [localhost]
TASK [directus : Sync docker schema] *******************************************
fatal: [localhost]: FAILED! => {"changed": true, "container": {"AppArmorProfile": "docker-default", "Args": ["npx", "-y", "directus-sync", "push"], "Config": {"AttachStderr": true, "AttachStdin": false, "AttachStdout": true, "Cmd": ["npx", "-y", "directus-sync", "push"], "Domainname": "", "Entrypoint": ["docker-entrypoint.sh"], "Env": ["DIRECTUS_URL=https://clic.epfl.ch/directus", "DIRECTUS_TOKEN=89a3d8m1-EfB5Id65o0HtOoDVfadhoPN", "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "NODE_VERSION=22.19.0", "YARN_VERSION=1.22.22", "DB_CLIENT=sqlite3", "DB_FILENAME=/directus/database/database.sqlite", "NODE_ENV=production", "NPM_CONFIG_UPDATE_NOTIFIER=false"], "ExposedPorts": {"8055/tcp": {}}, "Hostname": "818c15a8d4bd", "Image": "tractr/directus-sync:11.12.0", "Labels": {"org.opencontainers.image.created": "2025-09-16T20:38:45.092Z", "org.opencontainers.image.description": "The flexible backend for all your projects 🐰 Turn your DB into a headless CMS, admin panels, or apps with a custom UI, instant APIs, auth & more.", "org.opencontainers.image.licenses": "NOASSERTION", "org.opencontainers.image.revision": "f118b89dee1b0fdf6e46f081fdf5479fe1b94dfb", "org.opencontainers.image.source": "https://github.com/directus/directus", "org.opencontainers.image.title": "directus", "org.opencontainers.image.url": "https://github.com/directus/directus", "org.opencontainers.image.version": "11.12.0"}, "OpenStdin": false, "StdinOnce": false, "Tty": false, "User": "node", "Volumes": null, "WorkingDir": "/directus-config"}, "Created": "2026-09-14T13:59:31.780606371Z", "Driver": "overlay2", "ExecIDs": null, "GraphDriver": {"Data": {"ID": "818c15a8d4bd091a1934ff9e01a2df5df50896fd782b29e236f377ac63184638", "LowerDir": "/var/lib/docker/overlay2/986f865690b30d43191c26b60d44cfd275c7bf64917e64af55cedfd979db5f47-init/diff:/var/lib/docker/overlay2/07180f0639e794ff6137ea249997e9615423da20e832a48da79d87e167e5be1f/diff:/var/lib/docker/overlay2/abe4f6ad4565bfd7e816b5e39a881f2953f229a4e2cdc8f96805f1f8209724f1/diff:/var/lib/docker/overlay2/bbc2af23aeda20bfe4be3c790d32b4afd1c5cbb7cb2b492a5128179bd9a7891b/diff:/var/lib/docker/overlay2/2e50e484cdba169ba1dabd106db073552cd63d3aa82149d88414cd5537c287c9/diff:/var/lib/docker/overlay2/525a74adbd7e31313060bc8d31208cc6880b3a9f5cf2e24fb25c5e996246d3f0/diff:/var/lib/docker/overlay2/1034bded18dce6e2bacfbf19f9beee9d4986df4b87907a8a1d0e90c41589d935/diff:/var/lib/docker/overlay2/9e9c91421e815635b90f4f3f3c368cfc08f89a37e143b946e99309439217a8bc/diff:/var/lib/docker/overlay2/f3405f6bc7b16b728fb96e2eb90b9b9c03142416520b72fa75a8a941294908fe/diff:/var/lib/docker/overlay2/87012689a0b93755e6e483bca1d40af71ad274ca201616fc019177650dd1cf14/diff", "MergedDir": "/var/lib/docker/overlay2/986f865690b30d43191c26b60d44cfd275c7bf64917e64af55cedfd979db5f47/merged", "UpperDir": "/var/lib/docker/overlay2/986f865690b30d43191c26b60d44cfd275c7bf64917e64af55cedfd979db5f47/diff", "WorkDir": "/var/lib/docker/overlay2/986f865690b30d43191c26b60d44cfd275c7bf64917e64af55cedfd979db5f47/work"}, "Name": "overlay2"}, "HostConfig": {"AutoRemove": false, "Binds": ["/root/.ansible/pull/clic-server/roles/directus/files/directus-config:/directus-config:rw"], "BlkioDeviceReadBps": null, "BlkioDeviceReadIOps": null, "BlkioDeviceWriteBps": null, "BlkioDeviceWriteIOps": null, "BlkioWeight": 0, "BlkioWeightDevice": null, "CapAdd": null, "CapDrop": null, "Cgroup": "", "CgroupParent": "", "CgroupnsMode": "private", "ConsoleSize": [0, 0], "ContainerIDFile": "", "CpuCount": 0, "CpuPercent": 0, "CpuPeriod": 0, "CpuQuota": 0, "CpuRealtimePeriod": 0, "CpuRealtimeRuntime": 0, "CpuShares": 0, "CpusetCpus": "", "CpusetMems": "", "DeviceCgroupRules": null, "DeviceRequests": null, "Devices": null, "Dns": null, "DnsOptions": null, "DnsSearch": null, "ExtraHosts": null, "GroupAdd": null, "IOMaximumBandwidth": 0, "IOMaximumIOps": 0, "IpcMode": "private", "Isolation": "", "Links": null, "LogConfig": {"Config": {}, "Type": "json-file"}, "MaskedPaths": ["/proc/acpi", "/proc/asound", "/proc/interrupts", "/proc/kcore", "/proc/keys", "/proc/latency_stats", "/proc/sched_debug", "/proc/scsi", "/proc/timer_list", "/proc/timer_stats", "/sys/devices/virtual/powercap", "/sys/firmware", "/sys/devices/system/cpu/cpu0/thermal_throttle", "/sys/devices/system/cpu/cpu1/thermal_throttle", "/sys/devices/system/cpu/cpu2/thermal_throttle", "/sys/devices/system/cpu/cpu3/thermal_throttle", "/sys/devices/system/cpu/cpu4/thermal_throttle", "/sys/devices/system/cpu/cpu5/thermal_throttle", "/sys/devices/system/cpu/cpu6/thermal_throttle", "/sys/devices/system/cpu/cpu7/thermal_throttle"], "Memory": 0, "MemoryReservation": 0, "MemorySwap": 0, "MemorySwappiness": null, "NanoCpus": 0, "NetworkMode": "bridge", "OomKillDisable": null, "OomScoreAdj": 0, "PidMode": "", "PidsLimit": null, "PortBindings": {}, "Privileged": false, "PublishAllPorts": false, "ReadonlyPaths": ["/proc/bus", "/proc/fs", "/proc/irq", "/proc/sys", "/proc/sysrq-trigger"], "ReadonlyRootfs": false, "RestartPolicy": {"MaximumRetryCount": 0, "Name": "no"}, "Runtime": "runc", "SecurityOpt": null, "ShmSize": 67108864, "UTSMode": "", "Ulimits": null, "UsernsMode": "", "VolumeDriver": "", "VolumesFrom": null}, "HostnamePath": "/var/lib/docker/containers/818c15a8d4bd091a1934ff9e01a2df5df50896fd782b29e236f377ac63184638/hostname", "HostsPath": "/var/lib/docker/containers/818c15a8d4bd091a1934ff9e01a2df5df50896fd782b29e236f377ac63184638/hosts", "Id": "818c15a8d4bd091a1934ff9e01a2df5df50896fd782b29e236f377ac63184638", "Image": "sha256:532b888bc40e4849e0c1f1dcd07e95cd61d8fd0e5e8ebd8772f81c3263c4d950", "LogPath": "/var/lib/docker/containers/818c15a8d4bd091a1934ff9e01a2df5df50896fd782b29e236f377ac63184638/818c15a8d4bd091a1934ff9e01a2df5df50896fd782b29e236f377ac63184638-json.log", "MountLabel": "", "Mounts": [{"Destination": "/directus-config", "Mode": "rw", "Propagation": "rprivate", "RW": true, "Source": "/root/.ansible/pull/clic-server/roles/directus/files/directus-config", "Type": "bind"}], "Name": "/directus-sync", "NetworkSettings": {"Networks": {"bridge": {"Aliases": null, "DNSNames": null, "DriverOpts": null, "EndpointID": "", "Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "GwPriority": 0, "IPAMConfig": null, "IPAddress": "", "IPPrefixLen": 0, "IPv6Gateway": "", "Links": null, "MacAddress": "", "NetworkID": "e391840b75e3bff925a5177d2b806bbd651c4b55a9cade7d9ee5e2f400c67b44"}}, "Ports": {}, "SandboxID": "", "SandboxKey": ""}, "Output": "[13:59:38.561] \u001b[32mINFO\u001b[39m (18): \u001b[36m[config] Loaded config file from /directus-config/directus-sync.config.cjs\u001b[39m\n[13:59:38.831] \u001b[32mINFO\u001b[39m (18): \u001b[36m⬆️ Push schema\u001b[39m\nServiceUnavailableError: Service Unavailable\n at SettingsIdMapperClient.<anonymous> (/home/node/.npm/_npx/502cfebbe3723bc6/node_modules/directus-sync/dist/lib/services/extension-client.js:55:59)\n at Generator.next (<anonymous>)\n at fulfilled (/home/node/.npm/_npx/502cfebbe3723bc6/node_modules/directus-sync/dist/lib/services/extension-client.js:14:58)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n[13:59:40.340] \u001b[32mINFO\u001b[39m (18): \u001b[36m🧹 Clean up collections\u001b[39m\n", "Path": "docker-entrypoint.sh", "Platform": "linux", "ProcessLabel": "", "ResolvConfPath": "/var/lib/docker/containers/818c15a8d4bd091a1934ff9e01a2df5df50896fd782b29e236f377ac63184638/resolv.conf", "RestartCount": 0, "State": {"Dead": false, "Error": "", "ExitCode": 1, "FinishedAt": "2026-09-14T13:59:41.140092146Z", "OOMKilled": false, "Paused": false, "Pid": 0, "Restarting": false, "Running": false, "StartedAt": "2026-09-14T13:59:31.988761703Z", "Status": "exited"}}, "failed_when_result": true, "msg": "[13:59:38.561] \u001b[32mINFO\u001b[39m (18): \u001b[36m[config] Loaded config file from /directus-config/directus-sync.config.cjs\u001b[39m\n[13:59:38.831] \u001b[32mINFO\u001b[39m (18): \u001b[36m⬆️ Push schema\u001b[39m\nServiceUnavailableError: Service Unavailable\n at SettingsIdMapperClient.<anonymous> (/home/node/.npm/_npx/502cfebbe3723bc6/node_modules/directus-sync/dist/lib/services/extension-client.js:55:59)\n at Generator.next (<anonymous>)\n at fulfilled (/home/node/.npm/_npx/502cfebbe3723bc6/node_modules/directus-sync/dist/lib/services/extension-client.js:14:58)\n at process.processTicksAndRejections (node:internal/process/task_queues:105:5)\n[13:59:40.340] \u001b[32mINFO\u001b[39m (18): \u001b[36m🧹 Clean up collections\u001b[39m\n", "status": 1}
PLAY RECAP *********************************************************************
localhost : ok=5 changed=1 unreachable=0 failed=1 skipped=3 rescued=0 ignored=0
Starting Ansible Pull at 2026-09-14 13:59:22
/usr/bin/ansible-pull -U https://github.com/clicepfl/clic-infra -e @/var/secrets.yaml deploy.yaml --extra-vars SERVICES=directus --extra-vars DIRECTUS_SYNC_ONLY=true
2026-09-14T13:59:41.890035Z ERROR service{name="directus-sync"}:start_command: webhook::restart: STDOUT:
Deployment for directus-sync failed.
Triggered by the push of 1 commits on https://github.com/clicepfl/directus-config. HEAD after the push is e9b8d1159df3dcd272025bc53d620b3be97f9f56.
Logs: