For troubleshooting the cluster: Settings > About now shows
Webmail node: NODE_NAME (set per host by hosts-baseline deploy-web.sh: host1/host2/host3), else the container's hostname.
Mail server node: the address the server's name resolves to from inside the webmail container (pinned to the local node by the host entry), named by its PTR record, e.g. mx2.inbuxa.com (95.216.2.52).
The server gives its node name only to administrators (x:ClusterNode), so the webmail works it out itself. New endpoint GET /api/about/nodes (session required, 401 without one), fetched on every visit to About, cached for a minute on the server.
Fork-only, not for upstream ihasmail.
Translation: 4 new strings ("Webmail node", "Mail server node", "{host} does not resolve", "unavailable"), added to all 9 catalogues. Fallbacks stay at 19 per language, as on main. The Dutch ones join the native review.
Checked: typecheck; server tests 270/270 (4 new in nodes.test.ts); web tests 1423/1423; against the mock, the endpoint returns {"webmail":"test-node-1","mailServer":{"host":"localhost","address":"::1","name":"localhost"}}. The rendered page was not viewed in a browser.
After merging: deploy on host2, then hosts-baseline/deploy-web.sh --sync (hosts-baseline #4), which sets NODE_NAME and the host entry on all three copies.
For troubleshooting the cluster: Settings > About now shows
- **Webmail node**: `NODE_NAME` (set per host by hosts-baseline `deploy-web.sh`: host1/host2/host3), else the container's hostname.
- **Mail server node**: the address the server's name resolves to from inside the webmail container (pinned to the local node by the host entry), named by its PTR record, e.g. `mx2.inbuxa.com (95.216.2.52)`.
The server gives its node name only to administrators (`x:ClusterNode`), so the webmail works it out itself. New endpoint `GET /api/about/nodes` (session required, 401 without one), fetched on every visit to About, cached for a minute on the server.
**Fork-only**, not for upstream ihasmail.
Translation: 4 new strings ("Webmail node", "Mail server node", "{host} does not resolve", "unavailable"), added to all 9 catalogues. Fallbacks stay at 19 per language, as on main. The Dutch ones join the native review.
Checked: typecheck; server tests 270/270 (4 new in `nodes.test.ts`); web tests 1423/1423; against the mock, the endpoint returns `{"webmail":"test-node-1","mailServer":{"host":"localhost","address":"::1","name":"localhost"}}`. The rendered page was not viewed in a browser.
After merging: deploy on host2, then `hosts-baseline/deploy-web.sh --sync` (hosts-baseline #4), which sets `NODE_NAME` and the host entry on all three copies.
Settings > About shows which webmail node answered (NODE_NAME, else the
container hostname) and which inbuxa node it talks to: the address the
server's name resolves to from the webmail, named by its PTR record. The
server only tells administrators its node name, so the webmail works it
out itself. Fetched from /api/about/nodes on every visit, cached for a
minute server-side, for troubleshooting a cluster.
Fork-only: upstream ihasmail runs one webmail against one server.
4 new strings, translated in all 9 catalogues.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
For troubleshooting the cluster: Settings > About now shows
NODE_NAME(set per host by hosts-baselinedeploy-web.sh: host1/host2/host3), else the container's hostname.mx2.inbuxa.com (95.216.2.52).The server gives its node name only to administrators (
x:ClusterNode), so the webmail works it out itself. New endpointGET /api/about/nodes(session required, 401 without one), fetched on every visit to About, cached for a minute on the server.Fork-only, not for upstream ihasmail.
Translation: 4 new strings ("Webmail node", "Mail server node", "{host} does not resolve", "unavailable"), added to all 9 catalogues. Fallbacks stay at 19 per language, as on main. The Dutch ones join the native review.
Checked: typecheck; server tests 270/270 (4 new in
nodes.test.ts); web tests 1423/1423; against the mock, the endpoint returns{"webmail":"test-node-1","mailServer":{"host":"localhost","address":"::1","name":"localhost"}}. The rendered page was not viewed in a browser.After merging: deploy on host2, then
hosts-baseline/deploy-web.sh --sync(hosts-baseline #4), which setsNODE_NAMEand the host entry on all three copies.