Files
chef/roles/openresty_proxy.rb
T
raucao cc9b324a18 Refactor kosmos-hubot to a data-driven model
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
2026-10-28 18:22:22 +04:00

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
)