eMudhra CA follow-up: patched Node.js releases, Cinc, CAcert; migrating off nodejs-4 #687
Labels
Clear labels
monitoring
bug
design
dev environment
docs
duplicate
enhancement
feature
good first issue
idea
invalid
kredits-1
kredits-2
kredits-3
on hold
ops
question
security
ui/ux
wontfix
Infrastructure metrics, alerts, notifications, etc.
service
discourse
Kosmos Community Forums
service
accounts
Kosmos Accounts
service
drone-ci
Kosmos Drone CI
service
email
mail.kosmos.org
service
garage
S3-compatible object storage
service
gitea
Kosmos Gitea
service
ipfs
Kosmos IPFS
service
lightning
Lightning address, lndhub, etc.
service
mastodon
kosmos.social
service
nostr
Relays, Blossom server, etc.
service
postgres
Database cluster
service
remotestorage
Portable data storage for the Web
service
wiki
Kosmos Wiki
service
xmpp
Kosmos Chat
Something is not working
Graphic/visual design
Config, builds, CI, deployment, etc.
Documentation
This issue or pull request already exists
Improving existing functionality
New functionality
Dive in, and start contributing
Something to consider
Not a bug
Small contribution
Medium contribution
Large contribution
Currently not actionable
Manual IT ops activities
Looking for an answer
All your base are belong to us
User interface, process design, etc.
This won't be fixed
release
major
release
minor
release
patch
Milestone
No items
No Milestone
Projects
Clear projects
No projects
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: kosmos/chef#687
Reference in new issue
Block a user
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.
Follow-up to the eMudhra CA incident, plus the Node.js-side migrations that went with it.
eMudhra CA / Node.js releases
kosmos-nodejs(a barepackage nodejsnever upgrades an already-installed package).NODE_OPTIONS=--use-openssl-caso they use the patched system trust store (ipfs-pinner, kredits-github, hubot botka/hal8000, sockethub).kosmos-base(resolve the client config dir at runtime) and use it by default for knife-zero bootstraps.Hubot migration (off
nodejs-4)kosmos-hubot: replaces the per-bot/per-vhost recipes withresources/bot.rb(git checkout,npm install, generatedexternal-scripts.json, extra files, one hardened systemd unit per bot) plusrecipes/default.rb/recipes/nginx.rblooping over attributes.recipes/hal8000_extras.rbaugments hal8000 (IPFS/RSK hosts, kredits.env, wallet).@hubot-friends/hubot-irc, hal8000 →hubot-xmpp; Node.js 22.23.4;kosmos_redisreplacesredisio;REDIS_URLuses?<prefix>; the adapter is passed as-a <module>. Drophubot-auth,hubot-shipit,hubot-schedule,hubot-tell,hubot-seen,hubot-web-push-notifications,hubot-scripts,coffee-script,request, and the dormant wormhole bot.firewall_rules; vhost upstream scoped tochef_environment:production.credentials/hubotbag; per-bot bags dropped.nodejs-4(node object removed; host powered off).kredits-github (off
nodejs-4)HOST=0.0.0.0/NODE_ENV=production, open port 3000 to10.1.1.0/24; addkredits-github::nginx_proxyand register it in theopenresty_proxyrun list; drop the app-node nginx recipe/template and role entry.nodejs-5in the nodes submodule and add its client.Related repos
kosmos/hubot-xmpp(Gitea): new hubot 14 XMPP adapter built on@xmpp/client0.14.0, replacing the oldnode-xmpp-clientfork (host resolved from the JID domain via DNS SRV / well-known; XEP-0368 SNI workaround).67P/hubot-remotestorage-logger(GitHub): modernized for hubot 14 / ESM and published v2.0.0 and v2.0.1 (npm + GitHub releases); 2.0.1 logs viareceiveMiddleware/responseMiddleware, so bot commands and their replies stay out of the archives.67P/hubot-incoming-webhook(GitHub): modernized for hubot 14 / Node.js 22 and published v2.0.0.kredits/hubot-kredits(Gitea): target Node.js 22 and userobot.logger.warn(#72); release-drafter added (draft v4.1.1 pending).kosmos/botka,kosmos/hal8000(Gitea): modernized to hubot 14 / ESM; hal8000 picks up the newhubot-xmpp.Verification
Deployed and verified on
nodejs-5: botka in IRC rooms + remoteStorage logging; hal8000 online in XMPP MUCs with kredits; kredits-github and the bot webhooks reachable through openresty on draco and fornax.Waiting on
See
doc/hubot-migration.md(upstream@xmpp/stream-managementfix, etc.).eMudhra CA follow-up: patched Node.js releases, Cinc, CAcert; hubot + kredits-github off nodejs-4to eMudhra CA follow-up: patched Node.js releases, Cinc, CAcert; migrating off nodejs-4👍