Steps to reproduce
- Install and configure the ns8-nextcloud module with a valid host (e.g.
nextcloud.example.com)
- Verify the
nextcloud-notify_push container is running: runagent -m nextcloud1 podman ps | grep push
- Run the self-test:
runagent -m nextcloud1 podman exec --user www-data nextcloud-app php occ notify_push:self-test
Expected behavior
After configure-module completes, occ notify_push:setup https://<host>/push should have been called automatically, the base_endpoint config key should be set, and the self-test should pass all 6 checks, allowing desktop and mobile clients to use WebSocket push instead of polling.
Actual behavior
The self-test immediately returns 🗴 no push server configured. The notify_push container is running and the app is enabled, but base_endpoint is never set.
Root cause: configure-module and setup-notify_push only generate notify_push.env with NEXTCLOUD_URL=http://127.0.0.1, but occ notify_push:setup <URL> is never called anywhere in the codebase.
Workaround — run manually after configure:
[root@ns8-leader ~]# runagent -m nextcloud1 podman exec --user www-data nextcloud-app php occ notify_push:setup https://nextcloud.domain.com/push 2>/dev/null
✓ redis is configured
✓ push server is receiving redis messages
✓ push server can load mount info from database
✓ push server can connect to the Nextcloud server
✓ push server is a trusted proxy
✓ push server is running the same version as the app
configuration saved
[root@ns8-leader ~]# runagent -m nextcloud2 podman exec --user www-data nextcloud-app php occ notify_push:self-test 2>/dev/null
✓ redis is configured
✓ push server is receiving redis messages
✓ push server can load mount info from database
✓ push server can connect to the Nextcloud server
✓ push server is a trusted proxy
✓ push server is running the same version as the app
[root@ns8-leader ~]# runagent -m nextcloud2 podman exec --user www-data nextcloud-app php occ notify_push:metrics 2>/dev/null
Active connection count: 1
Active user count: 1
Total connection count: 10
Total database query count: 62
Events received: 1082
Messages sent: 1
Messages sent (file): 1
Messages sent (notification): 0
Messages sent (activity): 0
Messages sent (custom): 0
[root@ns8-leader ~]#
Suggested fix: add a step in imageroot/actions/configure-module/ that reads host from config.json and calls:
occ(["notify_push:setup", f"https://{host}/push"])
after wait-startup.
Components
ns8-nextcloud 1.6.1, Nextcloud 32
See also
https://mattermost.nethesis.it/nethesis/pl/mjspzdydktd9tgkfou6h1hjayh
https://github.com/nextcloud/notify_push
https://github.com/nextcloud/notify_push#nextcloud-app
thank nrauso
Steps to reproduce
nextcloud.example.com)nextcloud-notify_pushcontainer is running:runagent -m nextcloud1 podman ps | grep pushrunagent -m nextcloud1 podman exec --user www-data nextcloud-app php occ notify_push:self-testExpected behavior
After
configure-modulecompletes,occ notify_push:setup https://<host>/pushshould have been called automatically, thebase_endpointconfig key should be set, and the self-test should pass all 6 checks, allowing desktop and mobile clients to use WebSocket push instead of polling.Actual behavior
The self-test immediately returns
🗴 no push server configured. Thenotify_pushcontainer is running and the app is enabled, butbase_endpointis never set.Root cause:
configure-moduleandsetup-notify_pushonly generatenotify_push.envwithNEXTCLOUD_URL=http://127.0.0.1, butocc notify_push:setup <URL>is never called anywhere in the codebase.Workaround — run manually after configure:
Suggested fix: add a step in
imageroot/actions/configure-module/that readshostfromconfig.jsonand calls:after
wait-startup.Components
ns8-nextcloud 1.6.1, Nextcloud 32
See also
https://mattermost.nethesis.it/nethesis/pl/mjspzdydktd9tgkfou6h1hjayh
https://github.com/nextcloud/notify_push
https://github.com/nextcloud/notify_push#nextcloud-app
thank nrauso