Replace the per-bot and per-vhost recipes with a single data-driven setup. - resources/bot.rb (kosmos_hubot_bot): git checkout, npm install, generated external-scripts.json, extra files, and one hardened systemd unit for every hubot (Type=simple, Restart=always, RestartSec=2, TimeoutSec=10, PrivateTmp, ProtectSystem=full, NoNewPrivileges, PrivateDevices) - recipes/default.rb: shared setup + loop over node['kosmos-hubot']['bots']; recipes/nginx.rb: loop over node['kosmos-hubot']['vhosts']; recipes/hal8000_extras.rb: augments the hal8000 bot (searched IPFS/RSK hosts, kredits .env, wallet) and declares no resources itself - bot config and vhosts now live in attributes; secrets come from the encrypted credentials/hubot bag via secret_env - Node 22.23.4; kosmos_redis replaces redisio; REDIS_URL uses ?<prefix>; the adapter is passed as -a <module>; botka gains hubot-incoming-webhook - roles/hubot, nginx_proxy, openresty_proxy and the chef-nodes pointer updated
12 lines
187 B
Ruby
12 lines
187 B
Ruby
name "hubot"
|
|
|
|
default_run_list = %w(
|
|
kosmos-hubot::default
|
|
)
|
|
|
|
env_run_lists(
|
|
'_default' => default_run_list,
|
|
'development' => default_run_list,
|
|
'production' => default_run_list
|
|
)
|