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
52 lines
1.0 KiB
Ruby
52 lines
1.0 KiB
Ruby
name "openresty_proxy"
|
|
|
|
override_attributes(
|
|
'openresty' => {
|
|
'server_names_hash_bucket_size' => 128
|
|
},
|
|
)
|
|
|
|
development_run_list = %w(
|
|
role[openresty]
|
|
kosmos_assets::nginx_site
|
|
)
|
|
|
|
default_run_list = %w(
|
|
role[openresty]
|
|
)
|
|
|
|
production_run_list = %w(
|
|
role[openresty]
|
|
role[garage_gateway]
|
|
kosmos_assets::nginx_site
|
|
kosmos_blossom::nginx
|
|
kosmos_discourse::nginx
|
|
kosmos_drone::nginx
|
|
kosmos_garage::nginx_web
|
|
kosmos_garage::nginx_s3
|
|
kosmos_gitea::nginx
|
|
kosmos_gitea::nginx_ssh
|
|
kosmos_liquor-cabinet::nginx
|
|
kosmos_rsk::nginx_testnet
|
|
kosmos_rsk::nginx_mainnet
|
|
kosmos_strfry::nginx
|
|
kosmos_website::default
|
|
kosmos_website::redirects
|
|
kosmos-akkounts::nginx
|
|
kosmos-akkounts::nginx_api
|
|
kosmos-bitcoin::nginx_lndhub
|
|
kosmos-hubot::nginx
|
|
kosmos-ipfs::nginx_public_gateway
|
|
kredits-github::nginx_proxy
|
|
kosmos-mastodon::nginx
|
|
remotestorage_discourse::nginx
|
|
sockethub::nginx
|
|
role[tor_proxy]
|
|
)
|
|
|
|
env_run_lists(
|
|
'_default' => default_run_list,
|
|
'development' => development_run_list,
|
|
'production' => production_run_list
|
|
)
|