Compare commits
32 Commits
0338e56d4c
..
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
8d0c6bc301
|
|||
|
80766f2473
|
|||
|
d9a59e064e
|
|||
|
16cb333991
|
|||
|
7386de86d7
|
|||
|
5ff6046169
|
|||
|
093a98b753
|
|||
|
7b76fc1579
|
|||
|
527603bd63
|
|||
|
6bb23e70d6
|
|||
|
bd3e8d8c26
|
|||
|
b2aa902421
|
|||
|
3c740a0b92
|
|||
|
4e0131597f
|
|||
|
742ca590f2
|
|||
|
4ecfb8fc7f
|
|||
|
66481aa4c4
|
|||
|
626662a7ff
|
|||
|
f2e0a0929a
|
|||
|
12948be193
|
|||
|
df4f1236de
|
|||
|
875b23c746
|
|||
|
b34c3ad20b
|
|||
|
db69e437d5
|
|||
|
663c4da0a0
|
|||
|
010e2d0d64
|
|||
|
065eac06b1
|
|||
|
1759af98b8
|
|||
|
736d4effa4
|
|||
|
1ebe0e4074
|
|||
|
9250b2c726
|
|||
|
6807b8f5bc
|
+2
-22
@@ -8,27 +8,7 @@ data_bag_path "data_bags"
|
|||||||
encrypted_data_bag_secret "#{current_dir}/encrypted_data_bag_secret"
|
encrypted_data_bag_secret "#{current_dir}/encrypted_data_bag_secret"
|
||||||
local_mode true # Chef local mode, replacing Solo
|
local_mode true # Chef local mode, replacing Solo
|
||||||
|
|
||||||
# Knife-Zero config, see https://knife-zero.github.io/40_configuration/
|
|
||||||
# Prevent attributes from being saved to the node files
|
|
||||||
knife[:automatic_attribute_whitelist] = %w[
|
|
||||||
fqdn
|
|
||||||
os
|
|
||||||
os_version
|
|
||||||
hostname
|
|
||||||
ipaddress
|
|
||||||
roles
|
|
||||||
recipes
|
|
||||||
ipaddress
|
|
||||||
platform
|
|
||||||
platform_version
|
|
||||||
cloud
|
|
||||||
cloud_v2
|
|
||||||
chef_packages
|
|
||||||
]
|
|
||||||
|
|
||||||
# Added to /etc/chef/client.rb on node bootstrap
|
# Added to /etc/chef/client.rb on node bootstrap
|
||||||
# https://docs.chef.io/attribute_persistence/
|
# https://docs.chef.io/attribute_persistence/
|
||||||
# Source of truth: site-cookbooks/kosmos-base/files/default/chef_normal_attributes.yml
|
# Source of truth: site-cookbooks/kosmos-base/files/default/chef_attributes.rb
|
||||||
normal_attrs = YAML.load_file(File.expand_path("../site-cookbooks/kosmos-base/files/default/chef_normal_attributes.yml", __dir__))
|
client_d_dir(File.expand_path("../site-cookbooks/kosmos-base/files/default/chef_attributes.rb"))
|
||||||
knife[:normal_attribute_allowlist] = normal_attrs
|
|
||||||
knife[:allowed_normal_attributes] = normal_attrs
|
|
||||||
|
|||||||
@@ -1,40 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
SCRIPT="$(git rev-parse --show-toplevel)/scripts/util/sanitize_node.sh"
|
|
||||||
|
|
||||||
FILES=$(git diff --cached --name-only --diff-filter=ACM -- 'nodes/*.json' || true)
|
|
||||||
|
|
||||||
[[ -z "$FILES" ]] && exit 0
|
|
||||||
|
|
||||||
DIRTY=0
|
|
||||||
|
|
||||||
while IFS= read -r file; do
|
|
||||||
staged_tmp=$(mktemp)
|
|
||||||
sanitized_tmp=$(mktemp)
|
|
||||||
|
|
||||||
# 1. get staged version
|
|
||||||
git show ":$file" > "$staged_tmp"
|
|
||||||
|
|
||||||
# 2. sanitize IN PLACE (on temp copy)
|
|
||||||
cp "$staged_tmp" "$sanitized_tmp"
|
|
||||||
"$SCRIPT" "$sanitized_tmp"
|
|
||||||
|
|
||||||
# 3. if sanitizer changed file, update working tree
|
|
||||||
if ! diff -q "$staged_tmp" "$sanitized_tmp" >/dev/null; then
|
|
||||||
cp "$sanitized_tmp" "$file"
|
|
||||||
echo "Sanitized: $file"
|
|
||||||
DIRTY=1
|
|
||||||
fi
|
|
||||||
|
|
||||||
rm -f "$staged_tmp" "$sanitized_tmp"
|
|
||||||
|
|
||||||
done <<< "$FILES"
|
|
||||||
|
|
||||||
if [[ "$DIRTY" -ne 0 ]]; then
|
|
||||||
echo ""
|
|
||||||
echo "Commit paused, sanitized files must be re-staged."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
exit 0
|
|
||||||
@@ -13,3 +13,6 @@
|
|||||||
[submodule "site-cookbooks/blossom"]
|
[submodule "site-cookbooks/blossom"]
|
||||||
path = site-cookbooks/blossom
|
path = site-cookbooks/blossom
|
||||||
url = git@gitea.kosmos.org:kosmos/blossom-cookbook.git
|
url = git@gitea.kosmos.org:kosmos/blossom-cookbook.git
|
||||||
|
[submodule "nodes"]
|
||||||
|
path = nodes
|
||||||
|
url = git@gitea.kosmos.org:kosmos/chef-nodes.git
|
||||||
|
|||||||
@@ -28,10 +28,6 @@ Clone this repository, `cd` into it, and run:
|
|||||||
|
|
||||||
bundle install
|
bundle install
|
||||||
|
|
||||||
### Enable Git hooks
|
|
||||||
|
|
||||||
git config core.hooksPath .githooks
|
|
||||||
|
|
||||||
## Common tasks
|
## Common tasks
|
||||||
|
|
||||||
### Bootstrap a new host server
|
### Bootstrap a new host server
|
||||||
|
|||||||
@@ -1,4 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "akkounts-1",
|
|
||||||
"public_key": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0LKcqydrG3zgtmThEg+q\nOcw8QvIB2usMkF4kNMFeqhhdr2q/AtRcq4RJ0u0MiZbkHduGWfG9QZpjmbFZcEke\nURJbddqSDPHFAtrK2+BpcMqNN/mSp59f4MJf6wdLnBoeZCF5pCCXibyj+/754Ly+\nEJNiB1sf1Lu82YW2YM7iLhOLk1QQD2DTfBGbj9swdPrgKK+1npQ4A7O8sOB5gDjb\n9QVLCvCEoYFi+9is0vw/YryEr6tfnNw+CroP2uDfyVfWznF8oPUuttAcHgqDA3CV\n7lCRk9yVt1FKwuq2lFcsMqZ7wO4EoxpzCz/XTnpFPFvgeVinyXjSPsQCBAdwJe5T\nWQIDAQAB\n-----END PUBLIC KEY-----\n"
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"name": "akkounts-2",
|
||||||
|
"public_key": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAi/0X3npRvDRwPVRIWu4z\nY+9Qnj7EONuarsZ5aVuuVV/sqUpdJoQB/zYCxrF3HvNXbaDDOmIKiUiTfttWdcVK\nOIXH1IcykFSXFzT5tBof+kRVTHIVp5vtR1dAi1eCm1i7CId52Zqti0aF2/08XVUy\npWOJLlDObwn/M6i0gAQs/kGtYkFhlvZrmAkrlDYCzHb1nalyATohS9n/aNn8bvY1\noSPZb4vmlW4ln5y+tqJf8fOWlfUiIdgRnsQKFa97ijfQFbv1TGv33rhqDdsjR2jn\n7qJmYQ7U83W2cGhBiUR7N4rWY0Mig3e9UeOufVpNDLVvRcXZWx1pzDyn9pD6lk+7\nFwIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||||
|
}
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"name": "redis-3",
|
||||||
|
"public_key": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoRDTlMy6e+GXmen1nvQL\nTlbfXosRk1qTiqXYKtH0fmXz6i0OchBeNj4xZP+UvkrKcsifoumScGhSslQo1lzU\nASAJe5/lG1govkK27UFXwnYPZGRaB13CXJSDe5nbhga21HdDBbZOYttYa8/xQIes\nkbUGUu6uzJKXux5tiOD1ZhQTVIgnXx0ELjeRvRR4NOqEaXW+PPht6pK9MFFoN3tf\nnG/vt19QBM6Eox+UuKqSYloBseu8HRbves7jN4g/ml4qdjftgXft9H6OGCPmv+rA\nyRezzcVN7L092y3Ti+d6RftOBnIl8ABlURChnEFvUFxNRtT/0Zo7321w2TaDBfGa\n2wIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||||
|
}
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"name": "redis-4",
|
||||||
|
"public_key": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn3Zdzfao+n3PdtlJlViJ\nnpVDcL8ofw2rb2/VK7ivpWMKaL7mOq8HIQ+R+ghvllX/vPmN6co3+aUxOvvQ6KGC\nmAcnc7StqOpYUK0g6QZFROESO0vz1hy078AL9D2dEwOj7XS8leWCQyGgA1Z89T9n\naatXqEF1zGuvnVLA340prYkJk5S1X6KHq1WIi9H23hYehvGZlpkJ87wv8sKIo4Y3\nzIVA5hio0t0q+JyStOGr+xRl3mM43b25XcIh2ibrzKp3YoRWSCvMfhAdMKm1WEEI\njM/3fQRtkI1OQSb0o/wUoAmpUEEOTIvbWU2SuFVY7HYRuPwEilvbrGZKgrvbp8R+\nZQIDAQAB\n-----END PUBLIC KEY-----\n"
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"id": "sentry",
|
||||||
|
"launchpad_rpc_shared_secret": {
|
||||||
|
"encrypted_data": "Y8BFYM4YZjz/nv4zHEAkyheAVB18HdNi1KzvqJrRXXnnYI5bC8fVO9g=\n",
|
||||||
|
"iv": "1txuL+Uy+HIIs6CF\n",
|
||||||
|
"auth_tag": "aVHnUaVRo/xXeZRh0Z1pbw==\n",
|
||||||
|
"version": 3,
|
||||||
|
"cipher": "aes-256-gcm"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"id": "kare",
|
"id": "kare",
|
||||||
"ssh_keys": [
|
"ssh_keys": [
|
||||||
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCw0I82gT8R4tpsqWGovLyjm2SR2F863MqNz224h3h/wl0xA5Eu0eRro+ELLv2hoebqQbcMsb89X5+7ObhDRar+b7tzDlXq4x+ECkAy6WbDSmBp3kNVd7muT4c9Zw7UxKsIvIm1ven1TkJ3UG80o6PyGiAUlBj4puIQwhp7OVknVutBBe8Rpp4f6BEuWluwpnPxc3KSaGhhr9p10xeX69cfspH40r8vHpI0zp19O5GpfYSOEH64UbwRpN2QypNB8ISmDHFsNGwdz0Ba4qrEOSGU9GveyOcsvEtt630/0fHqtbPBovOYu/FJISQZya2tofDig4EngBCJNfsPCbXFHtlp greg@karekinian.com"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE0mZjhqMeoA//SFg8i8XvXIaiUwXXjoCiBTloe7HPQH greg+2026@kosmos.org"
|
||||||
],
|
],
|
||||||
"groups": ["sysadmin", "systemd-journal"],
|
"groups": ["sysadmin", "systemd-journal"],
|
||||||
"shell": "\/bin\/bash"
|
"shell": "\/bin\/bash"
|
||||||
|
|||||||
@@ -81,7 +81,7 @@
|
|||||||
"garage-",
|
"garage-",
|
||||||
"lq-",
|
"lq-",
|
||||||
"rsk-",
|
"rsk-",
|
||||||
"postgres-6"
|
"postgres-11"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
Submodule
+1
Submodule nodes added at 2535a79036
@@ -1,90 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "akkounts-1",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.144"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "akkounts-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-223-generic",
|
|
||||||
"hostname": "akkounts-1",
|
|
||||||
"ipaddress": "192.168.122.160",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"ldap_client",
|
|
||||||
"sentry_client",
|
|
||||||
"garage_gateway",
|
|
||||||
"akkounts",
|
|
||||||
"postgresql_client"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"kosmos_sentry::client",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_postgresql::hostsfile",
|
|
||||||
"kosmos-akkounts",
|
|
||||||
"kosmos-akkounts::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"redisio::default",
|
|
||||||
"redisio::_install_prereqs",
|
|
||||||
"redisio::install",
|
|
||||||
"redisio::ulimit",
|
|
||||||
"redisio::disable_os_default",
|
|
||||||
"redisio::configure",
|
|
||||||
"redisio::enable",
|
|
||||||
"kosmos-nodejs::default",
|
|
||||||
"nodejs::nodejs_from_package",
|
|
||||||
"nodejs::repo",
|
|
||||||
"nodejs::npm",
|
|
||||||
"nodejs::install"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[ldap_client]",
|
|
||||||
"role[sentry_client]",
|
|
||||||
"role[garage_gateway]",
|
|
||||||
"role[akkounts]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,112 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "bitcoin-2",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.163"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "bitcoin-2",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-216-generic",
|
|
||||||
"hostname": "bitcoin-2",
|
|
||||||
"ipaddress": "192.168.122.148",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"sentry_client",
|
|
||||||
"bitcoind",
|
|
||||||
"lnd",
|
|
||||||
"lndhub",
|
|
||||||
"postgresql_client",
|
|
||||||
"btcpay"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_sentry::client",
|
|
||||||
"tor-full",
|
|
||||||
"tor-full::default",
|
|
||||||
"kosmos-bitcoin::bitcoind",
|
|
||||||
"kosmos-bitcoin::lnd",
|
|
||||||
"kosmos-bitcoin::lnd-scb-s3",
|
|
||||||
"kosmos-bitcoin::rtl",
|
|
||||||
"kosmos-bitcoin::peerswap-lnd",
|
|
||||||
"kosmos_postgresql::hostsfile",
|
|
||||||
"kosmos-bitcoin::lndhub-go",
|
|
||||||
"kosmos-bitcoin::dotnet",
|
|
||||||
"kosmos-bitcoin::nbxplorer",
|
|
||||||
"kosmos-bitcoin::btcpay",
|
|
||||||
"kosmos-bitcoin::price_tracking",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"ark::default",
|
|
||||||
"kosmos-bitcoin::user",
|
|
||||||
"kosmos-bitcoin::blocksdir-mount",
|
|
||||||
"kosmos-bitcoin::firewall",
|
|
||||||
"git::default",
|
|
||||||
"git::package",
|
|
||||||
"kosmos-bitcoin::golang",
|
|
||||||
"golang::default",
|
|
||||||
"backup::default",
|
|
||||||
"logrotate::default",
|
|
||||||
"kosmos-bitcoin::aws-client",
|
|
||||||
"kosmos-nodejs::default",
|
|
||||||
"nodejs::nodejs_from_package",
|
|
||||||
"nodejs::repo",
|
|
||||||
"firewall::default",
|
|
||||||
"kosmos-nginx::default",
|
|
||||||
"nginx::default",
|
|
||||||
"nginx::package",
|
|
||||||
"nginx::ohai_plugin",
|
|
||||||
"nginx::repo",
|
|
||||||
"nginx::commons",
|
|
||||||
"nginx::commons_dir",
|
|
||||||
"nginx::commons_script",
|
|
||||||
"nginx::commons_conf",
|
|
||||||
"kosmos-nginx::firewall",
|
|
||||||
"kosmos-base::letsencrypt"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.2.7",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[sentry_client]",
|
|
||||||
"recipe[tor-full]",
|
|
||||||
"role[bitcoind]",
|
|
||||||
"role[lnd]",
|
|
||||||
"role[lndhub]",
|
|
||||||
"role[btcpay]",
|
|
||||||
"recipe[kosmos-bitcoin::price_tracking]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,72 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "discourse-2",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.35"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "discourse-2",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1133-kvm",
|
|
||||||
"hostname": "discourse-2",
|
|
||||||
"ipaddress": "192.168.122.104",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_gateway",
|
|
||||||
"kosmos_discourse"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"kosmos_discourse",
|
|
||||||
"kosmos_discourse::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"discourse::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_gateway]",
|
|
||||||
"role[kosmos_discourse]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,139 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "draco.kosmos.org",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.167"
|
|
||||||
},
|
|
||||||
"kosmos_kvm": {
|
|
||||||
"backup": {
|
|
||||||
"schedule": "0/3:55"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"openresty": {
|
|
||||||
"listen_ip": "148.251.237.111",
|
|
||||||
"listen_ipv6": "2a01:4f8:202:804a::2",
|
|
||||||
"log_formats": {
|
|
||||||
"json": "{\"ip\":\"$remote_addr\",\"time\":\"$time_local\",\"host\":\"$host\",\"method\":\"$request_method\",\"uri\":\"$uri\",\"status\":$status,\"size\":$body_bytes_sent,\"referer\":\"$http_referer\",\"upstream_addr\":\"$upstream_addr\",\"upstream_response_time\":\"$upstream_response_time\",\"ua\":\"$http_user_agent\"}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "draco.kosmos.org",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-187-generic",
|
|
||||||
"hostname": "draco",
|
|
||||||
"ipaddress": "148.251.237.73",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_host",
|
|
||||||
"email_proxy",
|
|
||||||
"openresty_proxy",
|
|
||||||
"openresty",
|
|
||||||
"garage_gateway",
|
|
||||||
"tor_proxy"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::host",
|
|
||||||
"kosmos_kvm::backup",
|
|
||||||
"kosmos_email::firewall",
|
|
||||||
"kosmos_openresty",
|
|
||||||
"kosmos_openresty::default",
|
|
||||||
"kosmos_openresty::firewall",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"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",
|
|
||||||
"kosmos_website::default",
|
|
||||||
"kosmos_website::redirects",
|
|
||||||
"kosmos-akkounts::nginx",
|
|
||||||
"kosmos-akkounts::nginx_api",
|
|
||||||
"kosmos-bitcoin::nginx_lndhub",
|
|
||||||
"kosmos-hubot::nginx_botka_irc-libera-chat",
|
|
||||||
"kosmos-hubot::nginx_hal8000_xmpp",
|
|
||||||
"kosmos-ipfs::nginx_public_gateway",
|
|
||||||
"kosmos-mastodon::nginx",
|
|
||||||
"remotestorage_discourse::nginx",
|
|
||||||
"kosmos-base::tor_services",
|
|
||||||
"tor-full",
|
|
||||||
"tor-full::default",
|
|
||||||
"kosmos_encfs",
|
|
||||||
"kosmos_encfs::default",
|
|
||||||
"kosmos-ejabberd::firewall",
|
|
||||||
"kosmos-ipfs::firewall_swarm",
|
|
||||||
"kosmos-bitcoin::firewall",
|
|
||||||
"kosmos_zerotier::firewall",
|
|
||||||
"sockethub::firewall",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"openresty::apt_package",
|
|
||||||
"openresty::ohai_plugin",
|
|
||||||
"openresty::commons_cleanup",
|
|
||||||
"openresty::commons_user",
|
|
||||||
"openresty::commons_dir",
|
|
||||||
"openresty::commons_script",
|
|
||||||
"openresty::commons_conf",
|
|
||||||
"logrotate::default",
|
|
||||||
"openresty::luarocks",
|
|
||||||
"firewall::default",
|
|
||||||
"git::default",
|
|
||||||
"git::package",
|
|
||||||
"kosmos-base::letsencrypt",
|
|
||||||
"fail2ban::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_host]",
|
|
||||||
"role[email_proxy]",
|
|
||||||
"role[openresty_proxy]",
|
|
||||||
"recipe[kosmos_encfs]",
|
|
||||||
"recipe[kosmos-ejabberd::firewall]",
|
|
||||||
"recipe[kosmos-ipfs::firewall_swarm]",
|
|
||||||
"recipe[kosmos-bitcoin::firewall]",
|
|
||||||
"recipe[kosmos_zerotier::firewall]",
|
|
||||||
"recipe[sockethub::firewall]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "drone-1",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.128"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "drone-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1133-kvm",
|
|
||||||
"hostname": "drone-1",
|
|
||||||
"ipaddress": "192.168.122.200",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"drone",
|
|
||||||
"postgresql_client"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_postgresql::hostsfile",
|
|
||||||
"kosmos_drone",
|
|
||||||
"kosmos_drone::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.7.10",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.7.10/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.5",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.5/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[drone]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "ejabberd-4",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.113"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "ejabberd-4",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1073-kvm",
|
|
||||||
"hostname": "ejabberd-4",
|
|
||||||
"ipaddress": "192.168.122.39",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"ldap_client",
|
|
||||||
"ejabberd",
|
|
||||||
"postgresql_client",
|
|
||||||
"garage_gateway"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"kosmos_postgresql::hostsfile",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos-ejabberd::letsencrypt",
|
|
||||||
"kosmos-ejabberd",
|
|
||||||
"kosmos-ejabberd::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"kosmos-base::letsencrypt",
|
|
||||||
"kosmos-ejabberd::firewall"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.3.0",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.3.0/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[ldap_client]",
|
|
||||||
"role[ejabberd]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "ejabberd-8",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.123"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "ejabberd-8",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1063-kvm",
|
|
||||||
"hostname": "ejabberd-8",
|
|
||||||
"ipaddress": "192.168.122.27",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"ldap_client",
|
|
||||||
"ejabberd",
|
|
||||||
"postgresql_client",
|
|
||||||
"garage_gateway"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"kosmos_postgresql::hostsfile",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos-ejabberd::letsencrypt",
|
|
||||||
"kosmos-ejabberd",
|
|
||||||
"kosmos-ejabberd::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"kosmos-base::letsencrypt",
|
|
||||||
"kosmos-ejabberd::firewall"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.3.0",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.3.0/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[ldap_client]",
|
|
||||||
"role[ejabberd]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,131 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "fornax.kosmos.org",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.147"
|
|
||||||
},
|
|
||||||
"kosmos_kvm": {
|
|
||||||
"backup": {
|
|
||||||
"schedule": "0/3:00"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "fornax.kosmos.org",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-88-generic",
|
|
||||||
"hostname": "fornax",
|
|
||||||
"ipaddress": "148.251.83.201",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_host",
|
|
||||||
"openresty_proxy",
|
|
||||||
"openresty",
|
|
||||||
"garage_gateway",
|
|
||||||
"tor_proxy",
|
|
||||||
"zerotier_controller",
|
|
||||||
"turn_server"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::host",
|
|
||||||
"kosmos_kvm::backup",
|
|
||||||
"kosmos_openresty",
|
|
||||||
"kosmos_openresty::default",
|
|
||||||
"kosmos_openresty::firewall",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"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",
|
|
||||||
"kosmos_website::default",
|
|
||||||
"kosmos_website::redirects",
|
|
||||||
"kosmos-akkounts::nginx",
|
|
||||||
"kosmos-akkounts::nginx_api",
|
|
||||||
"kosmos-bitcoin::nginx_lndhub",
|
|
||||||
"kosmos-hubot::nginx_botka_irc-libera-chat",
|
|
||||||
"kosmos-hubot::nginx_hal8000_xmpp",
|
|
||||||
"kosmos-ipfs::nginx_public_gateway",
|
|
||||||
"kosmos-mastodon::nginx",
|
|
||||||
"remotestorage_discourse::nginx",
|
|
||||||
"kosmos-base::tor_services",
|
|
||||||
"tor-full",
|
|
||||||
"tor-full::default",
|
|
||||||
"kosmos_zerotier::controller",
|
|
||||||
"kosmos_zerotier::firewall",
|
|
||||||
"kosmos_zerotier::zncui",
|
|
||||||
"kosmos-ejabberd::coturn",
|
|
||||||
"kosmos-ejabberd::firewall",
|
|
||||||
"kosmos-ipfs::firewall_swarm",
|
|
||||||
"sockethub::firewall",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"openresty::apt_package",
|
|
||||||
"openresty::ohai_plugin",
|
|
||||||
"openresty::commons_cleanup",
|
|
||||||
"openresty::commons_user",
|
|
||||||
"openresty::commons_dir",
|
|
||||||
"openresty::commons_script",
|
|
||||||
"openresty::commons_conf",
|
|
||||||
"logrotate::default",
|
|
||||||
"openresty::luarocks",
|
|
||||||
"firewall::default",
|
|
||||||
"git::default",
|
|
||||||
"git::package",
|
|
||||||
"kosmos-base::letsencrypt",
|
|
||||||
"fail2ban::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_host]",
|
|
||||||
"role[openresty_proxy]",
|
|
||||||
"role[zerotier_controller]",
|
|
||||||
"role[turn_server]",
|
|
||||||
"recipe[kosmos-ejabberd::firewall]",
|
|
||||||
"recipe[kosmos-ipfs::firewall_swarm]",
|
|
||||||
"recipe[kosmos_zerotier::firewall]",
|
|
||||||
"recipe[sockethub::firewall]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "garage-11",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.165"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "garage-11",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1059-kvm",
|
|
||||||
"hostname": "garage-11",
|
|
||||||
"ipaddress": "192.168.122.9",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_node"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_garage::firewall_apis",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.5.0",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.5.0/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.11",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.11/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_node]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "garage-14",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.151"
|
|
||||||
},
|
|
||||||
"vm_host": "leo"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "garage-14",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1095-kvm",
|
|
||||||
"hostname": "garage-14",
|
|
||||||
"ipaddress": "192.168.122.36",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_node"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_garage::firewall_apis",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_node]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "garage-15",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.82"
|
|
||||||
},
|
|
||||||
"vm_host": "leo"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "garage-15",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1095-kvm",
|
|
||||||
"hostname": "garage-15",
|
|
||||||
"ipaddress": "192.168.122.57",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_node"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_garage::firewall_apis",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_node]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,65 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "garage-16",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.153"
|
|
||||||
},
|
|
||||||
"vm_host": "leo"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "garage-16",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "6.8.0-106-generic",
|
|
||||||
"hostname": "garage-16",
|
|
||||||
"ipaddress": "192.168.122.182",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_node"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_garage::firewall_apis",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "24.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_node]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "garage-2",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.40"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "garage-2",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-132-generic",
|
|
||||||
"hostname": "garage-2",
|
|
||||||
"ipaddress": "192.168.122.241",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_node"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_garage::firewall_apis",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_node]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "garage-7",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.182"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "garage-7",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1090-kvm",
|
|
||||||
"hostname": "garage-7",
|
|
||||||
"ipaddress": "192.168.122.86",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_node"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_garage::firewall_apis",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.3.0",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.3.0/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_node]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,67 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "garage-8",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.61"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "garage-8",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1090-kvm",
|
|
||||||
"hostname": "garage-8",
|
|
||||||
"ipaddress": "192.168.122.207",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_node"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_garage::firewall_apis",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.4.2",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.4.2/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.11",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.11/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_node]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,81 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "gitea-2",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.21"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "gitea-2",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1123-kvm",
|
|
||||||
"hostname": "gitea-2",
|
|
||||||
"ipaddress": "192.168.122.189",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"ldap_client",
|
|
||||||
"garage_gateway",
|
|
||||||
"gitea",
|
|
||||||
"postgresql_client",
|
|
||||||
"gitea_actions_runner"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_postgresql::hostsfile",
|
|
||||||
"kosmos_gitea",
|
|
||||||
"kosmos_gitea::default",
|
|
||||||
"kosmos_gitea::backup",
|
|
||||||
"kosmos_gitea::runner",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"backup::default",
|
|
||||||
"logrotate::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[ldap_client]",
|
|
||||||
"role[garage_gateway]",
|
|
||||||
"role[gitea]",
|
|
||||||
"role[gitea_actions_runner]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,60 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "her",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.222"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "her",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-101-generic",
|
|
||||||
"hostname": "her",
|
|
||||||
"ipaddress": "192.168.30.173",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_host"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::host",
|
|
||||||
"kosmos_kvm::backup",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.3.0",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.3.0/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_host]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "ipfs-1",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.198"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "ipfs-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-152-generic",
|
|
||||||
"hostname": "ipfs-1",
|
|
||||||
"ipaddress": "192.168.122.195",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"ipfs_gateway"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-ipfs",
|
|
||||||
"kosmos-ipfs::default",
|
|
||||||
"kosmos-ipfs::kredits_pinner",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"ipfs::default",
|
|
||||||
"ipfs::_user",
|
|
||||||
"firewall::default",
|
|
||||||
"kosmos-nodejs::default",
|
|
||||||
"nodejs::nodejs_from_package",
|
|
||||||
"nodejs::repo",
|
|
||||||
"kosmos-ipfs::firewall_swarm"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.2.7",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[ipfs_gateway]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,68 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "ldap-3.kosmos.org",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.6"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "ldap-3.kosmos.org",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1073-kvm",
|
|
||||||
"hostname": "ldap-3",
|
|
||||||
"ipaddress": "192.168.122.34",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"dirsrv_supplier"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv",
|
|
||||||
"kosmos-dirsrv::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"kosmos-dirsrv::firewall",
|
|
||||||
"backup::default",
|
|
||||||
"logrotate::default",
|
|
||||||
"ulimit::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[dirsrv_supplier]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,69 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "ldap-4.kosmos.org",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.106"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "ldap-4.kosmos.org",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1079-kvm",
|
|
||||||
"hostname": "ldap-4",
|
|
||||||
"ipaddress": "192.168.122.73",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"dirsrv_supplier"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv",
|
|
||||||
"kosmos-dirsrv::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"kosmos-dirsrv::firewall",
|
|
||||||
"backup::default",
|
|
||||||
"logrotate::default",
|
|
||||||
"ulimit::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[dirsrv_supplier]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,59 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "leo.kosmos.org",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.204"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "leo.kosmos.org",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-173-generic",
|
|
||||||
"hostname": "leo",
|
|
||||||
"ipaddress": "5.9.81.116",
|
|
||||||
"roles": [
|
|
||||||
"base"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::host",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"recipe[kosmos_kvm::host]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "lq-1",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.87"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "lq-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1104-kvm",
|
|
||||||
"hostname": "lq-1",
|
|
||||||
"ipaddress": "192.168.122.158",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_gateway",
|
|
||||||
"liquor_cabinet"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_liquor-cabinet",
|
|
||||||
"kosmos_liquor-cabinet::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"liquor_cabinet::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_gateway]",
|
|
||||||
"role[liquor_cabinet]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "lq-2",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.188"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "lq-2",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1104-kvm",
|
|
||||||
"hostname": "lq-2",
|
|
||||||
"ipaddress": "192.168.122.47",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"garage_gateway",
|
|
||||||
"liquor_cabinet"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_liquor-cabinet",
|
|
||||||
"kosmos_liquor-cabinet::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"liquor_cabinet::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[garage_gateway]",
|
|
||||||
"role[liquor_cabinet]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,73 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "mail.kosmos.org",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.95"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "mail.kosmos.org",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1048-kvm",
|
|
||||||
"hostname": "mail",
|
|
||||||
"ipaddress": "192.168.122.131",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"email_server",
|
|
||||||
"ldap_client"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"kosmos_email",
|
|
||||||
"kosmos_email::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"hostname::default",
|
|
||||||
"kosmos-base::letsencrypt",
|
|
||||||
"unbound::default",
|
|
||||||
"kosmos_email::opendkim",
|
|
||||||
"kosmos_email::spamassassin",
|
|
||||||
"kosmos_email::postfix",
|
|
||||||
"postfix::server",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::relay_restrictions",
|
|
||||||
"kosmos_email::dovecot"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.3.0",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.3.0/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[email_server]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,93 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "mastodon-3",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.30"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "mastodon-3",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1071-kvm",
|
|
||||||
"hostname": "mastodon-3",
|
|
||||||
"ipaddress": "192.168.122.161",
|
|
||||||
"roles": [
|
|
||||||
"kvm_guest",
|
|
||||||
"ldap_client",
|
|
||||||
"garage_gateway",
|
|
||||||
"mastodon",
|
|
||||||
"postgresql_client"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"kosmos_garage",
|
|
||||||
"kosmos_garage::default",
|
|
||||||
"kosmos_garage::firewall_rpc",
|
|
||||||
"kosmos_postgresql::hostsfile",
|
|
||||||
"kosmos-mastodon::libretranslate",
|
|
||||||
"kosmos-mastodon",
|
|
||||||
"kosmos-mastodon::default",
|
|
||||||
"kosmos-mastodon::backup",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"kosmos-nodejs::default",
|
|
||||||
"nodejs::nodejs_from_package",
|
|
||||||
"nodejs::repo",
|
|
||||||
"java::default",
|
|
||||||
"java::set_attributes_from_version",
|
|
||||||
"java::openjdk",
|
|
||||||
"java::notify",
|
|
||||||
"java::default_java_symlink",
|
|
||||||
"java::set_java_home",
|
|
||||||
"redisio::default",
|
|
||||||
"redisio::_install_prereqs",
|
|
||||||
"redisio::install",
|
|
||||||
"redisio::ulimit",
|
|
||||||
"redisio::disable_os_default",
|
|
||||||
"redisio::configure",
|
|
||||||
"redisio::enable",
|
|
||||||
"backup::default",
|
|
||||||
"logrotate::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.2.7",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[ldap_client]",
|
|
||||||
"role[garage_gateway]",
|
|
||||||
"role[mastodon]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,99 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "nodejs-4",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.138"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "nodejs-4",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1089-kvm",
|
|
||||||
"hostname": "nodejs-4",
|
|
||||||
"ipaddress": "192.168.122.106",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"hubot",
|
|
||||||
"kredits_github",
|
|
||||||
"sockethub"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-hubot::botka_irc-libera-chat",
|
|
||||||
"kosmos-hubot::hal8000_xmpp",
|
|
||||||
"kredits-github",
|
|
||||||
"kredits-github::default",
|
|
||||||
"kredits-github::nginx",
|
|
||||||
"sockethub",
|
|
||||||
"sockethub::default",
|
|
||||||
"sockethub::proxy",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"redisio::default",
|
|
||||||
"redisio::_install_prereqs",
|
|
||||||
"redisio::install",
|
|
||||||
"redisio::ulimit",
|
|
||||||
"redisio::disable_os_default",
|
|
||||||
"redisio::configure",
|
|
||||||
"redisio::enable",
|
|
||||||
"kosmos-hubot::_user",
|
|
||||||
"kosmos-hubot::_nodejs",
|
|
||||||
"kosmos-nodejs::default",
|
|
||||||
"nodejs::nodejs_from_package",
|
|
||||||
"nodejs::repo",
|
|
||||||
"kosmos-nginx::default",
|
|
||||||
"nginx::default",
|
|
||||||
"nginx::package",
|
|
||||||
"nginx::ohai_plugin",
|
|
||||||
"nginx::repo",
|
|
||||||
"nginx::commons",
|
|
||||||
"nginx::commons_dir",
|
|
||||||
"nginx::commons_script",
|
|
||||||
"nginx::commons_conf",
|
|
||||||
"kosmos-nginx::firewall",
|
|
||||||
"nodejs::npm",
|
|
||||||
"nodejs::install",
|
|
||||||
"sockethub::firewall",
|
|
||||||
"kosmos-base::letsencrypt"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.2.7",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[hubot]",
|
|
||||||
"role[kredits_github]",
|
|
||||||
"role[sockethub]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,71 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "postgres-11",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.91"
|
|
||||||
},
|
|
||||||
"vm_host": "leo"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "postgres-11",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1095-kvm",
|
|
||||||
"hostname": "postgres-11",
|
|
||||||
"ipaddress": "192.168.122.142",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"postgresql_primary"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_postgresql::primary",
|
|
||||||
"kosmos-akkounts::pg_db",
|
|
||||||
"kosmos-bitcoin::lndhub-go_pg_db",
|
|
||||||
"kosmos-bitcoin::nbxplorer_pg_db",
|
|
||||||
"kosmos_drone::pg_db",
|
|
||||||
"kosmos_gitea::pg_db",
|
|
||||||
"kosmos-mastodon::pg_db",
|
|
||||||
"kosmos_postgresql::firewall",
|
|
||||||
"kosmos_postgresql::management_scripts",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[postgresql_primary]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "postgres-12",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.134"
|
|
||||||
},
|
|
||||||
"vm_host": "her"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "postgres-12",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1096-kvm",
|
|
||||||
"hostname": "postgres-12",
|
|
||||||
"ipaddress": "192.168.122.139",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"postgresql_replica"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_postgresql::hostsfile",
|
|
||||||
"kosmos_postgresql::replica",
|
|
||||||
"kosmos_postgresql::firewall",
|
|
||||||
"kosmos_postgresql::management_scripts",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[postgresql_replica]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,63 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "prometheus-1",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.146"
|
|
||||||
},
|
|
||||||
"vm_host": "leo"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "prometheus-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "6.8.0-134-generic",
|
|
||||||
"hostname": "prometheus-1",
|
|
||||||
"ipaddress": "192.168.122.166",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"prometheus_server"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_prometheus::server",
|
|
||||||
"kosmos_prometheus::alertmanager",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "24.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[prometheus_server]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,76 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "redis-1",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.225"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "redis-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1104-kvm",
|
|
||||||
"hostname": "redis-1",
|
|
||||||
"ipaddress": "192.168.122.83",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"redis_server"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_redis",
|
|
||||||
"kosmos_redis::default",
|
|
||||||
"kosmos_redis::firewall",
|
|
||||||
"kosmos_redis::backup",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"redisio::default",
|
|
||||||
"redisio::_install_prereqs",
|
|
||||||
"redisio::install",
|
|
||||||
"redisio::ulimit",
|
|
||||||
"redisio::disable_os_default",
|
|
||||||
"redisio::configure",
|
|
||||||
"redisio::enable",
|
|
||||||
"backup::default",
|
|
||||||
"logrotate::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.2.7",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[redis_server]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,72 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "redis-2",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.208"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "redis-2",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1104-kvm",
|
|
||||||
"hostname": "redis-2",
|
|
||||||
"ipaddress": "192.168.122.98",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"redis_replica"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_redis::replica",
|
|
||||||
"kosmos_redis::firewall",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"redisio::default",
|
|
||||||
"redisio::_install_prereqs",
|
|
||||||
"redisio::install",
|
|
||||||
"redisio::ulimit",
|
|
||||||
"redisio::disable_os_default",
|
|
||||||
"redisio::configure",
|
|
||||||
"redisio::enable"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.2.7",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.2.7/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[redis_replica]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,65 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "rs-discourse-1",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.187"
|
|
||||||
},
|
|
||||||
"vm_host": "fornax"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "rs-discourse-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1118-kvm",
|
|
||||||
"hostname": "rs-discourse-1",
|
|
||||||
"ipaddress": "192.168.122.30",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"remotestorage_discourse"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"remotestorage_discourse",
|
|
||||||
"remotestorage_discourse::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"discourse::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[remotestorage_discourse]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "rsk-mainnet-3",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.150"
|
|
||||||
},
|
|
||||||
"vm_host": "her"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "rsk-mainnet-3",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1046-kvm",
|
|
||||||
"hostname": "rsk-mainnet-3",
|
|
||||||
"ipaddress": "192.168.122.233",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"rskj_mainnet"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_rsk::rskj",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"kosmos_rsk::firewall",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.3.0",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.3.0/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[rskj_mainnet]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,61 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "rsk-testnet-4",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.126"
|
|
||||||
},
|
|
||||||
"vm_host": "her"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "rsk-testnet-4",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1045-kvm",
|
|
||||||
"hostname": "rsk-testnet-4",
|
|
||||||
"ipaddress": "192.168.122.235",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"rskj_testnet"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_rsk::rskj",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"kosmos_rsk::firewall",
|
|
||||||
"firewall::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.3.0",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.3.0/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.4",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.4/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,62 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "rsk-testnet-6",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.20"
|
|
||||||
},
|
|
||||||
"vm_host": "leo"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "rsk-testnet-6",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "6.8.0-107-generic",
|
|
||||||
"hostname": "rsk-testnet-6",
|
|
||||||
"ipaddress": "192.168.122.231",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"rskj_testnet"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_rsk::rskj",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"kosmos_rsk::firewall"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "24.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.10.17",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.10.17/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.13",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.13/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[rskj_testnet]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,64 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "sentry-1",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.132"
|
|
||||||
},
|
|
||||||
"vm_host": "her"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "sentry-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-1087-kvm",
|
|
||||||
"hostname": "sentry-1",
|
|
||||||
"ipaddress": "192.168.122.251",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"sentry"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos_sentry",
|
|
||||||
"kosmos_sentry::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"firewall::default",
|
|
||||||
"chef-sugar::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "17.10.3",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.0.0/gems/chef-17.10.3/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "17.9.0",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.0.0/gems/ohai-17.9.0/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[sentry]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "strfry-1",
|
|
||||||
"chef_environment": "production",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.164"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "strfry-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.15.0-1060-kvm",
|
|
||||||
"hostname": "strfry-1",
|
|
||||||
"ipaddress": "192.168.122.54",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"strfry",
|
|
||||||
"ldap_client",
|
|
||||||
"blossom"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"strfry",
|
|
||||||
"strfry::default",
|
|
||||||
"kosmos_strfry::policies",
|
|
||||||
"kosmos_strfry::firewall",
|
|
||||||
"kosmos_strfry::substr",
|
|
||||||
"kosmos_blossom",
|
|
||||||
"kosmos_blossom::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"deno::default",
|
|
||||||
"blossom::default"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "22.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.4.12",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.4.12/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.1.11",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.1.11/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[strfry]",
|
|
||||||
"role[blossom]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,88 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "wiki-1",
|
|
||||||
"normal": {
|
|
||||||
"knife_zero": {
|
|
||||||
"host": "10.1.1.206"
|
|
||||||
},
|
|
||||||
"vm_host": "draco"
|
|
||||||
},
|
|
||||||
"automatic": {
|
|
||||||
"fqdn": "wiki-1",
|
|
||||||
"os": "linux",
|
|
||||||
"os_version": "5.4.0-167-generic",
|
|
||||||
"hostname": "wiki-1",
|
|
||||||
"ipaddress": "192.168.122.26",
|
|
||||||
"roles": [
|
|
||||||
"base",
|
|
||||||
"kvm_guest",
|
|
||||||
"ldap_client"
|
|
||||||
],
|
|
||||||
"recipes": [
|
|
||||||
"kosmos-base",
|
|
||||||
"kosmos-base::default",
|
|
||||||
"kosmos_prometheus::node_exporter",
|
|
||||||
"kosmos_kvm::guest",
|
|
||||||
"kosmos-dirsrv::hostsfile",
|
|
||||||
"kosmos-mediawiki",
|
|
||||||
"kosmos-mediawiki::default",
|
|
||||||
"apt::default",
|
|
||||||
"timezone_iii::default",
|
|
||||||
"timezone_iii::debian",
|
|
||||||
"ntp::default",
|
|
||||||
"ntp::apparmor",
|
|
||||||
"kosmos-base::journald_conf",
|
|
||||||
"kosmos-base::systemd_emails",
|
|
||||||
"apt::unattended-upgrades",
|
|
||||||
"kosmos-base::firewall",
|
|
||||||
"kosmos-postfix::default",
|
|
||||||
"postfix::default",
|
|
||||||
"postfix::_common",
|
|
||||||
"postfix::_attributes",
|
|
||||||
"postfix::sasl_auth",
|
|
||||||
"hostname::default",
|
|
||||||
"ark::default",
|
|
||||||
"composer::default",
|
|
||||||
"composer::install",
|
|
||||||
"php::default",
|
|
||||||
"php::package",
|
|
||||||
"php::ini",
|
|
||||||
"composer::global_configs",
|
|
||||||
"mediawiki::default",
|
|
||||||
"mediawiki::database",
|
|
||||||
"kosmos-nginx::default",
|
|
||||||
"nginx::default",
|
|
||||||
"nginx::package",
|
|
||||||
"nginx::ohai_plugin",
|
|
||||||
"nginx::repo",
|
|
||||||
"nginx::commons",
|
|
||||||
"nginx::commons_dir",
|
|
||||||
"nginx::commons_script",
|
|
||||||
"nginx::commons_conf",
|
|
||||||
"kosmos-nginx::firewall",
|
|
||||||
"mediawiki::nginx",
|
|
||||||
"backup::default",
|
|
||||||
"logrotate::default",
|
|
||||||
"kosmos-base::letsencrypt"
|
|
||||||
],
|
|
||||||
"platform": "ubuntu",
|
|
||||||
"platform_version": "20.04",
|
|
||||||
"cloud": null,
|
|
||||||
"chef_packages": {
|
|
||||||
"chef": {
|
|
||||||
"version": "18.7.10",
|
|
||||||
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/chef-18.7.10/lib",
|
|
||||||
"chef_effortless": null
|
|
||||||
},
|
|
||||||
"ohai": {
|
|
||||||
"version": "18.2.5",
|
|
||||||
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.1.0/gems/ohai-18.2.5/lib/ohai"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"run_list": [
|
|
||||||
"role[base]",
|
|
||||||
"role[kvm_guest]",
|
|
||||||
"role[ldap_client]",
|
|
||||||
"recipe[kosmos-mediawiki]"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -3,4 +3,5 @@ name "base"
|
|||||||
run_list %w(
|
run_list %w(
|
||||||
kosmos-base::default
|
kosmos-base::default
|
||||||
kosmos_prometheus::node_exporter
|
kosmos_prometheus::node_exporter
|
||||||
|
kosmos_zerotier::ohai_plugin
|
||||||
)
|
)
|
||||||
|
|||||||
Executable
+70
@@ -0,0 +1,70 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Converge every node in nodes/ with a runlist override (-o).
|
||||||
|
#
|
||||||
|
# Usage:
|
||||||
|
# ./converge_all.sh "recipe[kosmos-base::users]"
|
||||||
|
#
|
||||||
|
# Port selection per node:
|
||||||
|
# - nodes WITH a normal.vm_host attribute (KVM guests): port 22
|
||||||
|
# - nodes WITHOUT a normal.vm_host attribute (bare metal): port 2222
|
||||||
|
#
|
||||||
|
# Runs sequentially and aborts on the first failure (set -euo pipefail).
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
if [[ $# -ne 1 ]]; then
|
||||||
|
echo "Usage: $0 '<runlist override>'" >&2
|
||||||
|
echo " e.g. $0 \"recipe[kosmos-base::users]\"" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
RUNLIST="$1"
|
||||||
|
|
||||||
|
shopt -s nullglob
|
||||||
|
nodes=( nodes/*.json )
|
||||||
|
|
||||||
|
if [[ ${#nodes[@]} -eq 0 ]]; then
|
||||||
|
echo "No nodes found in nodes/" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
total=${#nodes[@]}
|
||||||
|
i=0
|
||||||
|
|
||||||
|
for f in "${nodes[@]}"; do
|
||||||
|
i=$((i + 1))
|
||||||
|
|
||||||
|
IFS=$'\x1f' read -r node_name vm_host knife_host < <(python3 -c '
|
||||||
|
import json, sys
|
||||||
|
d = json.load(open(sys.argv[1]))
|
||||||
|
print("\x1f".join([
|
||||||
|
d.get("name", "") or "",
|
||||||
|
d.get("normal", {}).get("vm_host", "") or "",
|
||||||
|
d.get("normal", {}).get("knife_zero", {}).get("host", "") or "",
|
||||||
|
]))
|
||||||
|
' "$f")
|
||||||
|
|
||||||
|
if [[ -z "$node_name" ]]; then
|
||||||
|
echo "[$i/$total] $f: could not read node name, skipping" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "$knife_host" ]]; then
|
||||||
|
echo "[$i/$total] $node_name: no knife_zero.host set, skipping" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n "$vm_host" ]]; then
|
||||||
|
port=22
|
||||||
|
label="vm_host=${vm_host}"
|
||||||
|
else
|
||||||
|
port=2222
|
||||||
|
label="bare metal"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "[$i/$total] $node_name ($label, port ${port}, host ${knife_host})"
|
||||||
|
knife zero converge "name:${node_name}" -a knife_zero.host -p"${port}" -o "${RUNLIST}"
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "Converged ${total} node(s) successfully."
|
||||||
@@ -1,69 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
# Strip the top-level "override" and "default" attributes from Chef node JSON files.
|
|
||||||
#
|
|
||||||
# Usage:
|
|
||||||
# ./scripts/util/strip_node_attrs.sh <node> [<node> ...]
|
|
||||||
# ./scripts/util/strip_node_attrs.sh --all
|
|
||||||
#
|
|
||||||
# A <node> may be a bare node name (e.g. "prometheus-1"), a path relative to the
|
|
||||||
# repository root (e.g. "nodes/prometheus-1.json"), or an absolute path.
|
|
||||||
#
|
|
||||||
# Exit codes:
|
|
||||||
# 0 - all target files processed successfully
|
|
||||||
# 1 - one or more targets could not be processed (missing args, missing jq,
|
|
||||||
# file not found, invalid JSON, or write failure)
|
|
||||||
|
|
||||||
set -uo pipefail
|
|
||||||
|
|
||||||
command -v jq >/dev/null 2>&1 || exit 1
|
|
||||||
|
|
||||||
root="$(git rev-parse --show-toplevel 2>/dev/null)" || root="$(pwd)"
|
|
||||||
|
|
||||||
targets=()
|
|
||||||
if [ "$#" -eq 0 ]; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
for arg in "$@"; do
|
|
||||||
if [ "$arg" = "--all" ]; then
|
|
||||||
shopt -s nullglob
|
|
||||||
for f in "$root"/nodes/*.json; do
|
|
||||||
targets+=("$f")
|
|
||||||
done
|
|
||||||
shopt -u nullglob
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "$arg" == */* ]]; then
|
|
||||||
if [[ "$arg" = /* ]]; then
|
|
||||||
targets+=("$arg")
|
|
||||||
else
|
|
||||||
targets+=("$root/$arg")
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
targets+=("$root/nodes/$arg.json")
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ "${#targets[@]}" -eq 0 ]; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
rc=0
|
|
||||||
for file in "${targets[@]}"; do
|
|
||||||
[ -f "$file" ] || { rc=1; continue; }
|
|
||||||
|
|
||||||
jq -e . "$file" >/dev/null 2>&1 || { rc=1; continue; }
|
|
||||||
|
|
||||||
tmp="$(mktemp "${file}.XXXXXX")" || { rc=1; continue; }
|
|
||||||
if jq --indent 2 'del(.override, .default)' "$file" > "$tmp" 2>/dev/null; then
|
|
||||||
truncate -s -1 "$tmp" 2>/dev/null || true
|
|
||||||
mv "$tmp" "$file" || { rm -f "$tmp"; rc=1; continue; }
|
|
||||||
else
|
|
||||||
rm -f "$tmp"
|
|
||||||
rc=1
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
exit "$rc"
|
|
||||||
@@ -26,6 +26,8 @@ systemd_unit "discourse.service" do
|
|||||||
Environment: "SUPERVISED=true",
|
Environment: "SUPERVISED=true",
|
||||||
ExecStart: "#{deploy_path}/launcher start app",
|
ExecStart: "#{deploy_path}/launcher start app",
|
||||||
ExecStop: "#{deploy_path}/launcher stop app",
|
ExecStop: "#{deploy_path}/launcher stop app",
|
||||||
|
TimeoutStartSec: '300',
|
||||||
|
TimeoutStopSec: '30'
|
||||||
},
|
},
|
||||||
Install: {
|
Install: {
|
||||||
WantedBy: "multi-user.target"
|
WantedBy: "multi-user.target"
|
||||||
|
|||||||
@@ -4,12 +4,11 @@ maintainer_email 'mail@kosmos.org'
|
|||||||
license 'MIT'
|
license 'MIT'
|
||||||
description 'Installs/configures kosmos-akkounts'
|
description 'Installs/configures kosmos-akkounts'
|
||||||
long_description 'Installs/configures kosmos-akkounts'
|
long_description 'Installs/configures kosmos-akkounts'
|
||||||
version '0.2.0'
|
version '0.3.0'
|
||||||
chef_version '>= 18.0'
|
chef_version '>= 18.0'
|
||||||
|
|
||||||
depends 'kosmos_openresty'
|
depends 'kosmos_openresty'
|
||||||
depends "kosmos-nodejs"
|
depends "kosmos-nodejs"
|
||||||
depends "redisio"
|
|
||||||
depends "postgresql"
|
depends "postgresql"
|
||||||
depends "kosmos_postgresql"
|
depends "kosmos_postgresql"
|
||||||
depends "backup"
|
depends "backup"
|
||||||
|
|||||||
@@ -19,13 +19,16 @@ user deploy_user do
|
|||||||
shell "/bin/bash"
|
shell "/bin/bash"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
directory deploy_path do
|
||||||
|
owner deploy_user
|
||||||
|
group deploy_group
|
||||||
|
mode "0755"
|
||||||
|
end
|
||||||
|
|
||||||
package "libpq-dev"
|
package "libpq-dev"
|
||||||
package "libvips"
|
package "libvips"
|
||||||
|
|
||||||
include_recipe 'redisio::default'
|
node.override["kosmos_nodejs"]["version"] = "22.23.1"
|
||||||
include_recipe 'redisio::enable'
|
|
||||||
|
|
||||||
node.override["nodejs"]["repo"] = "https://deb.nodesource.com/node_20.x"
|
|
||||||
include_recipe 'kosmos-nodejs'
|
include_recipe 'kosmos-nodejs'
|
||||||
npm_package "bun"
|
npm_package "bun"
|
||||||
|
|
||||||
@@ -34,7 +37,7 @@ ruby_path = "/opt/ruby_build/builds/#{ruby_version}"
|
|||||||
bundle_path = "#{ruby_path}/bin/bundle"
|
bundle_path = "#{ruby_path}/bin/bundle"
|
||||||
rails_env = node.chef_environment == "development" ? "development" : "production"
|
rails_env = node.chef_environment == "development" ? "development" : "production"
|
||||||
|
|
||||||
ruby_build_install 'v20240221'
|
ruby_build_install 'v20260701'
|
||||||
ruby_build_definition ruby_version do
|
ruby_build_definition ruby_version do
|
||||||
prefix_path ruby_path
|
prefix_path ruby_path
|
||||||
end
|
end
|
||||||
@@ -221,7 +224,6 @@ systemd_unit "akkounts.service" do
|
|||||||
Unit: {
|
Unit: {
|
||||||
Description: "Kosmos Accounts",
|
Description: "Kosmos Accounts",
|
||||||
Documentation: ["https://gitea.kosmos.org/kosmos/akkounts"],
|
Documentation: ["https://gitea.kosmos.org/kosmos/akkounts"],
|
||||||
Requires: "redis@6379.service",
|
|
||||||
After: "syslog.target network.target"
|
After: "syslog.target network.target"
|
||||||
},
|
},
|
||||||
Service: {
|
Service: {
|
||||||
|
|||||||
@@ -1,2 +1,15 @@
|
|||||||
node.default["kosmos-base"]["journald"]["system_max_use"] = "256M"
|
node.default["kosmos-base"]["journald"]["system_max_use"] = "256M"
|
||||||
node.default["kosmos-base"]["journald"]["max_retention_sec"] = "7d"
|
node.default["kosmos-base"]["journald"]["max_retention_sec"] = "7d"
|
||||||
|
|
||||||
|
node.default["kosmos-base"]["tmux"]["plugins_dir"] = "/usr/local/share/tmux/plugins"
|
||||||
|
node.default["kosmos-base"]["tmux"]["default_conf"] = "/usr/local/share/tmux/tmux.conf.default"
|
||||||
|
node.default["kosmos-base"]["tmux"]["tpm_redux"]["repo"] = "https://github.com/RyanMacG/tpm-redux.git"
|
||||||
|
node.default["kosmos-base"]["tmux"]["tpm_redux"]["revision"] = "c5347f71a291eadf26dbecacc43154ecd8ad061b"
|
||||||
|
# Keys are tpm shorthand names (used in `set -g @plugin`). Values contain the
|
||||||
|
# git repo and the exact commit SHA the plugin is pinned to.
|
||||||
|
node.default["kosmos-base"]["tmux"]["plugins"] = {
|
||||||
|
"tmux-plugins/tmux-resurrect" => {
|
||||||
|
"repo" => "https://github.com/tmux-plugins/tmux-resurrect.git",
|
||||||
|
"revision" => "e87d7d592cac97fa38c12395ebec042c154a1844",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
allowed_automatic_attributes ["fqdn", "os", "os_version", "hostname",
|
||||||
|
"ipaddress", "roles", "recipes", "ipaddress",
|
||||||
|
"platform", "platform_version", "cloud",
|
||||||
|
"cloud_v2", "chef_packages", "zerotier"]
|
||||||
|
allowed_default_attributes []
|
||||||
|
allowed_override_attributes []
|
||||||
|
allowed_normal_attributes ["knife_zero", "kosmos_kvm", "kosmos-ejabberd",
|
||||||
|
"openresty", "vm_host"]
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
---
|
|
||||||
- knife_zero
|
|
||||||
- kosmos_kvm
|
|
||||||
- kosmos-ejabberd
|
|
||||||
- openresty
|
|
||||||
- vm_host
|
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
# basti's tmux overrides — appended after the system default config is sourced.
|
||||||
|
|
||||||
|
set -g prefix C-a
|
||||||
|
set -sg escape-time 1
|
||||||
|
set -g base-index 1
|
||||||
|
set -g history-limit 20000
|
||||||
|
set -g mouse off
|
||||||
|
set -g status-justify centre
|
||||||
|
set -g status-style dim
|
||||||
|
set -ag status-style fg=white
|
||||||
|
set -ag status-style bg=colour236
|
||||||
|
set -g window-status-current-style bright
|
||||||
|
set -ag window-status-current-style fg=white
|
||||||
|
set -ag window-status-current-style bg=colour238
|
||||||
|
set -g pane-border-style fg=colour238
|
||||||
|
set -g pane-active-border-style fg=colour244
|
||||||
|
|
||||||
|
setw -g pane-base-index 1
|
||||||
|
setw -g mode-keys vi
|
||||||
|
|
||||||
|
bind C-a send-prefix
|
||||||
|
bind r source-file ~/.tmux.conf \; display "Reloaded!"
|
||||||
|
bind | split-window -h
|
||||||
|
bind - split-window -v
|
||||||
|
bind h select-pane -L
|
||||||
|
bind j select-pane -D
|
||||||
|
bind k select-pane -U
|
||||||
|
bind l select-pane -R
|
||||||
|
bind -r H resize-pane -L 5
|
||||||
|
bind -r J resize-pane -D 5
|
||||||
|
bind -r K resize-pane -U 5
|
||||||
|
bind -r L resize-pane -R 5
|
||||||
|
|
||||||
|
unbind p
|
||||||
|
bind p paste-buffer
|
||||||
|
bind-key -T copy-mode-vi v send-keys -X begin-selection
|
||||||
|
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
|
||||||
|
|
||||||
|
unbind Up
|
||||||
|
bind Up new-window -d -n tmp \; swap-pane -s tmp.1 \; select-window -t tmp
|
||||||
|
unbind Down
|
||||||
|
bind Down last-window \; swap-pane -s tmp.1 \; kill-window -t tmp
|
||||||
|
|
||||||
|
bind P pipe-pane -o "cat >>~/#W.log" \; display "Toggled logging to ~/#W.log"
|
||||||
@@ -2,57 +2,32 @@
|
|||||||
# Cookbook Name:: kosmos-base
|
# Cookbook Name:: kosmos-base
|
||||||
# Recipe:: default
|
# Recipe:: default
|
||||||
#
|
#
|
||||||
# The MIT License (MIT)
|
|
||||||
#
|
ruby_block "cleanup client.rb" do
|
||||||
# Copyright:: 2019, Kosmos Developers
|
block do
|
||||||
#
|
fe = Chef::Util::FileEdit.new("/etc/chef/client.rb")
|
||||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
# Delete whitelist attribute definitions, everything is defined in attributes.rb
|
||||||
# of this software and associated documentation files (the "Software"), to deal
|
fe.search_file_delete_line(/^.*_attribute_whitelist.*/)
|
||||||
# in the Software without restriction, including without limitation the rights
|
fe.search_file_delete_line(/^allowed_.*_attributes.*/)
|
||||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
fe.write_file
|
||||||
# copies of the Software, and to permit persons to whom the Software is
|
end
|
||||||
# furnished to do so, subject to the following conditions:
|
end
|
||||||
#
|
|
||||||
# The above copyright notice and this permission notice shall be included in
|
cookbook_file "/etc/chef/client.d/attributes.rb" do
|
||||||
# all copies or substantial portions of the Software.
|
source "chef_attributes.rb"
|
||||||
#
|
mode "0644"
|
||||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
notifies :create, "ruby_block[reload_client_config]", :immediately
|
||||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
end
|
||||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
ruby_block "reload_client_config" do
|
||||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
block do
|
||||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
Chef::Config.from_file("/etc/chef/client.rb")
|
||||||
# THE SOFTWARE.
|
end
|
||||||
|
action :nothing
|
||||||
|
end
|
||||||
|
|
||||||
include_recipe "apt"
|
include_recipe "apt"
|
||||||
|
|
||||||
cookbook_file "/etc/chef/chef_normal_attributes.yml" do
|
|
||||||
source "chef_normal_attributes.yml"
|
|
||||||
owner "root"
|
|
||||||
group "root"
|
|
||||||
mode "0644"
|
|
||||||
end
|
|
||||||
|
|
||||||
ruby_block "update allowed_normal_attributes in client.rb" do
|
|
||||||
block do
|
|
||||||
whitelist = YAML.load_file("/etc/chef/chef_normal_attributes.yml")
|
|
||||||
fe = Chef::Util::FileEdit.new("/etc/chef/client.rb")
|
|
||||||
fe.search_file_replace_line(
|
|
||||||
/^allowed_normal_attributes.*/,
|
|
||||||
"allowed_normal_attributes #{whitelist.inspect}"
|
|
||||||
)
|
|
||||||
fe.write_file
|
|
||||||
|
|
||||||
Chef::Config[:allowed_normal_attributes] = whitelist
|
|
||||||
Chef::Config[:normal_attribute_allowlist] = whitelist
|
|
||||||
end
|
|
||||||
not_if do
|
|
||||||
whitelist = YAML.load_file("/etc/chef/chef_normal_attributes.yml")
|
|
||||||
client_rb = ::File.read("/etc/chef/client.rb")
|
|
||||||
whitelist.all? { |attr| client_rb.include?(attr) }
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
directory "/etc/apt/keyrings" do
|
directory "/etc/apt/keyrings" do
|
||||||
mode "0755"
|
mode "0755"
|
||||||
action :create
|
action :create
|
||||||
@@ -85,28 +60,12 @@ package "vim"
|
|||||||
# Don't create users and rewrite the sudo config in development environment.
|
# Don't create users and rewrite the sudo config in development environment.
|
||||||
# It breaks the vagrant user
|
# It breaks the vagrant user
|
||||||
unless node.chef_environment == "development"
|
unless node.chef_environment == "development"
|
||||||
# Searches data bag "users" for groups attribute "sysadmin".
|
include_recipe "kosmos-base::users"
|
||||||
# Places returned users in Unix group "sysadmin" with GID 2300.
|
|
||||||
users_manage "sysadmin" do
|
|
||||||
group_id 2300
|
|
||||||
action %i[remove create]
|
|
||||||
end
|
|
||||||
|
|
||||||
sudo "sysadmin" do
|
|
||||||
groups "sysadmin"
|
|
||||||
nopasswd true
|
|
||||||
defaults [
|
|
||||||
# not default on Ubuntu, explicitely enable. Uses a minimal white list of
|
|
||||||
# environment variables
|
|
||||||
"env_reset",
|
|
||||||
# Send emails on unauthorized attempts
|
|
||||||
"mail_badpass",
|
|
||||||
'secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"'
|
|
||||||
]
|
|
||||||
end
|
|
||||||
|
|
||||||
include_recipe "kosmos-base::firewall"
|
include_recipe "kosmos-base::firewall"
|
||||||
|
|
||||||
|
include_recipe "kosmos-base::tmux"
|
||||||
|
|
||||||
include_recipe "kosmos-postfix"
|
include_recipe "kosmos-postfix"
|
||||||
|
|
||||||
node.override["set_fqdn"] = "*"
|
node.override["set_fqdn"] = "*"
|
||||||
|
|||||||
@@ -0,0 +1,102 @@
|
|||||||
|
#
|
||||||
|
# Cookbook Name:: kosmos-base
|
||||||
|
# Recipe:: tmux
|
||||||
|
#
|
||||||
|
|
||||||
|
package "tmux"
|
||||||
|
|
||||||
|
plugins_dir = node["kosmos-base"]["tmux"]["plugins_dir"]
|
||||||
|
default_conf = node["kosmos-base"]["tmux"]["default_conf"]
|
||||||
|
tpm_redux = node["kosmos-base"]["tmux"]["tpm_redux"]
|
||||||
|
plugins = node["kosmos-base"]["tmux"]["plugins"]
|
||||||
|
|
||||||
|
directory plugins_dir do
|
||||||
|
owner "root"
|
||||||
|
group "root"
|
||||||
|
mode "0755"
|
||||||
|
recursive true
|
||||||
|
action :create
|
||||||
|
end
|
||||||
|
|
||||||
|
# Install tpm-redux (the plugin manager) at a pinned commit.
|
||||||
|
git "#{plugins_dir}/tpm-redux" do
|
||||||
|
repository tpm_redux["repo"]
|
||||||
|
revision tpm_redux["revision"]
|
||||||
|
user "root"
|
||||||
|
group "root"
|
||||||
|
action :sync
|
||||||
|
end
|
||||||
|
|
||||||
|
# Install each managed plugin at a pinned commit. Plugins are cloned by Chef
|
||||||
|
# into a shared, root-owned directory so that users never need to install them
|
||||||
|
# themselves.
|
||||||
|
plugins.each do |shorthand, meta|
|
||||||
|
git "#{plugins_dir}/#{shorthand.split('/').last}" do
|
||||||
|
repository meta["repo"]
|
||||||
|
revision meta["revision"]
|
||||||
|
user "root"
|
||||||
|
group "root"
|
||||||
|
action :sync
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# System default tmux config: minimal — only the plugin manager environment,
|
||||||
|
# the @plugin declarations for the chef-managed plugins, and the tpm-redux
|
||||||
|
# initialisation line (which must be the last line of the file).
|
||||||
|
template default_conf do
|
||||||
|
source "tmux.conf.default.erb"
|
||||||
|
owner "root"
|
||||||
|
group "root"
|
||||||
|
mode "0644"
|
||||||
|
variables(
|
||||||
|
plugins_dir: plugins_dir,
|
||||||
|
plugins: plugins
|
||||||
|
)
|
||||||
|
action :create
|
||||||
|
end
|
||||||
|
|
||||||
|
# Write a per-user ~/.tmux.conf. Users who submit their own overrides as a
|
||||||
|
# cookbook file at files/default/tmux_users/<username>.conf get a fully
|
||||||
|
# managed config: it sources the system default (so chef-managed plugins
|
||||||
|
# always load) and then appends the user's overrides. Users who have not
|
||||||
|
# submitted a file get a blank importer written only if ~/.tmux.conf does
|
||||||
|
# not already exist, so any hand-written/local config is left untouched.
|
||||||
|
cookbook = run_context.cookbook_collection["kosmos-base"]
|
||||||
|
|
||||||
|
search(:users, "groups:sysadmin AND NOT action:remove") do |u|
|
||||||
|
username = u["username"] || u["id"]
|
||||||
|
home_dir = u["home"] || "/home/#{username}"
|
||||||
|
group_name = u["gid"] || username
|
||||||
|
|
||||||
|
next unless Dir.exist?(home_dir)
|
||||||
|
|
||||||
|
user_conf_source = "tmux_users/#{username}.conf"
|
||||||
|
|
||||||
|
if cookbook.has_cookbook_file_for_node?(node, user_conf_source)
|
||||||
|
disk_path = cookbook.preferred_filename_on_disk_location(node, :files, user_conf_source)
|
||||||
|
# Chef reads ERB templates with IO.binread, so the template output buffer
|
||||||
|
# is ASCII-8BIT. File.read returns UTF-8 on the node; concatenating a UTF-8
|
||||||
|
# string into an ASCII-8BIT buffer raises an encoding error on non-ASCII
|
||||||
|
# content. Retag as ASCII-8BIT to match the buffer — the raw bytes are
|
||||||
|
# still valid UTF-8, so the written file is correct.
|
||||||
|
user_content = File.read(disk_path).force_encoding("ASCII-8BIT")
|
||||||
|
|
||||||
|
template "#{home_dir}/.tmux.conf" do
|
||||||
|
source "tmux.conf.user.erb"
|
||||||
|
owner username
|
||||||
|
group group_name
|
||||||
|
mode "0644"
|
||||||
|
variables(default_conf: default_conf, user_content: user_content)
|
||||||
|
action :create
|
||||||
|
end
|
||||||
|
else
|
||||||
|
template "#{home_dir}/.tmux.conf" do
|
||||||
|
source "tmux.conf.user.erb"
|
||||||
|
owner username
|
||||||
|
group group_name
|
||||||
|
mode "0644"
|
||||||
|
variables(default_conf: default_conf, user_content: nil)
|
||||||
|
action :create_if_missing
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
#
|
||||||
|
# Cookbook Name:: kosmos-base
|
||||||
|
# Recipe:: default
|
||||||
|
#
|
||||||
|
|
||||||
|
# Searches data bag "users" for groups attribute "sysadmin".
|
||||||
|
# Places returned users in Unix group "sysadmin" with GID 2300.
|
||||||
|
users_manage "sysadmin" do
|
||||||
|
group_id 2300
|
||||||
|
action %i[remove create]
|
||||||
|
end
|
||||||
|
|
||||||
|
sudo "sysadmin" do
|
||||||
|
groups "sysadmin"
|
||||||
|
nopasswd true
|
||||||
|
defaults [
|
||||||
|
# not default on Ubuntu, explicitely enable. Uses a minimal white list of
|
||||||
|
# environment variables
|
||||||
|
"env_reset",
|
||||||
|
# Send emails on unauthorized attempts
|
||||||
|
"mail_badpass",
|
||||||
|
'secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"'
|
||||||
|
]
|
||||||
|
end
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
# Managed by Chef (kosmos-base::tmux). Do not edit on this host.
|
||||||
|
#
|
||||||
|
# This is the system default tmux config. It is sourced by each user's
|
||||||
|
# ~/.tmux.conf via `source-file`. Plugins are managed by Chef and live in
|
||||||
|
# a shared, root-owned directory; users do not install plugins themselves.
|
||||||
|
|
||||||
|
set-environment -g TMUX_PLUGIN_MANAGER_PATH '<%= @plugins_dir %>'
|
||||||
|
|
||||||
|
<% @plugins.each do |shorthand, _meta| -%>
|
||||||
|
set -g @plugin '<%= shorthand %>'
|
||||||
|
<% end -%>
|
||||||
|
|
||||||
|
# Initialize TPM Redux (must remain the last line of the file)
|
||||||
|
run '<%= @plugins_dir %>/tpm-redux/tpm'
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
# ~/.tmux.conf — created/managed by Chef (kosmos-base::tmux).
|
||||||
|
#
|
||||||
|
# This file imports the system default config below, then appends any overrides
|
||||||
|
# the user has submitted to files/default/tmux_users/<username>.conf in the
|
||||||
|
# kosmos-base cookbook. If you manage your own tmux config locally and have not
|
||||||
|
# submitted a file, Chef will not overwrite it.
|
||||||
|
|
||||||
|
source-file <%= @default_conf %>
|
||||||
|
|
||||||
|
<% if @user_content && !@user_content.empty? -%>
|
||||||
|
# === user overrides (from files/default/tmux_users/<username>.conf) ===
|
||||||
|
<%= @user_content %>
|
||||||
|
<% else -%>
|
||||||
|
# === Add your custom settings below this line ===
|
||||||
|
<% end -%>
|
||||||
@@ -5,6 +5,11 @@
|
|||||||
|
|
||||||
package %w(virtinst libvirt-daemon-system libvirt-clients)
|
package %w(virtinst libvirt-daemon-system libvirt-clients)
|
||||||
|
|
||||||
|
# Required on legacy hosts (Ubuntu 20.04) to build the NoCloud seed ISO
|
||||||
|
# via cloud-localds. Modern virt-install (>= 4.0.0, Ubuntu >= 22.04)
|
||||||
|
# handles cloud-init natively via --cloud-init and does not need it.
|
||||||
|
package "cloud-image-utils" if node["platform_version"].to_f < 22.04
|
||||||
|
|
||||||
directory "/var/lib/libvirt/images/base" do
|
directory "/var/lib/libvirt/images/base" do
|
||||||
recursive true
|
recursive true
|
||||||
owner "libvirt-qemu"
|
owner "libvirt-qemu"
|
||||||
@@ -24,7 +29,10 @@ end
|
|||||||
template "/usr/local/sbin/create_vm" do
|
template "/usr/local/sbin/create_vm" do
|
||||||
source "create_vm.erb"
|
source "create_vm.erb"
|
||||||
mode "0750"
|
mode "0750"
|
||||||
variables base_image_path: node["kosmos_kvm"]["host"]["qemu_base_image"]["path"]
|
variables(
|
||||||
|
base_image_path: node["kosmos_kvm"]["host"]["qemu_base_image"]["path"],
|
||||||
|
modern_virt_install: node["platform_version"].to_f >= 22.04
|
||||||
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
firewall_rule 'ssh-alt-port' do
|
firewall_rule 'ssh-alt-port' do
|
||||||
|
|||||||
@@ -64,6 +64,7 @@ EOS
|
|||||||
popd
|
popd
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
<% if @modern_virt_install -%>
|
||||||
virt-install \
|
virt-install \
|
||||||
--name "$VMNAME" \
|
--name "$VMNAME" \
|
||||||
--ram "$RAM" \
|
--ram "$RAM" \
|
||||||
@@ -83,3 +84,30 @@ virt-install \
|
|||||||
--autostart \
|
--autostart \
|
||||||
--import \
|
--import \
|
||||||
--cloud-init root-password-generate=off,disable=on,meta-data=$CIDATA_PATH/meta-data,user-data=$CIDATA_PATH/user-data
|
--cloud-init root-password-generate=off,disable=on,meta-data=$CIDATA_PATH/meta-data,user-data=$CIDATA_PATH/user-data
|
||||||
|
<% else -%>
|
||||||
|
# Legacy path for hosts running virt-install < 4.0.0 (e.g. Ubuntu 20.04,
|
||||||
|
# virt-install 2.2.x). These versions predate the --osinfo/--cloud-init
|
||||||
|
# options, so we build a NoCloud seed ISO from the same user-data and
|
||||||
|
# meta-data files and attach it as a cdrom. The guest receives the
|
||||||
|
# exact same cloud-init configuration as on modern hosts.
|
||||||
|
cloud-localds "$CIDATA_PATH/seed.iso" "$CIDATA_PATH/user-data" "$CIDATA_PATH/meta-data"
|
||||||
|
|
||||||
|
virt-install \
|
||||||
|
--name "$VMNAME" \
|
||||||
|
--ram "$RAM" \
|
||||||
|
--vcpus "$CPUS" \
|
||||||
|
--cpu host \
|
||||||
|
--arch x86_64 \
|
||||||
|
--hvm \
|
||||||
|
--virt-type kvm \
|
||||||
|
--disk "$IMAGE_PATH" \
|
||||||
|
--disk "$CIDATA_PATH/seed.iso,device=cdrom" \
|
||||||
|
--boot hd \
|
||||||
|
--network=bridge=virbr0,model=virtio \
|
||||||
|
--graphics none \
|
||||||
|
--serial pty \
|
||||||
|
--console pty \
|
||||||
|
--channel unix,mode=bind,path=/var/lib/libvirt/qemu/$VMNAME.guest_agent.0,target_type=virtio,name=org.qemu.guest_agent.0 \
|
||||||
|
--autostart \
|
||||||
|
--import
|
||||||
|
<% end -%>
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
node.default["sentry"]["repo"] = "https://github.com/getsentry/self-hosted"
|
node.default["sentry"]["repo"] = "https://github.com/getsentry/self-hosted"
|
||||||
node.default["sentry"]["revision"] = "23.3.1"
|
# Make sure to first upgrade to hard stop version if required:
|
||||||
|
# https://develop.sentry.dev/self-hosted/releases/
|
||||||
|
node.default["sentry"]["revision"] = "26.6.0"
|
||||||
|
|
||||||
node.default["sentry"]["port"] = 80
|
node.default["sentry"]["port"] = 80
|
||||||
node.default["sentry"]["retention_days"] = 90
|
node.default["sentry"]["retention_days"] = 90
|
||||||
node.default["sentry"]["allowed_ips"] = nil
|
node.default["sentry"]["allowed_ips"] = nil
|
||||||
# The Sentry setup requires docker-compose >= 1.28, which is newer than the
|
|
||||||
# latest stable version for Ubuntu 20.04
|
|
||||||
node.default["sentry"]["docker-compose"]["version"] = "2.17.0"
|
|
||||||
node.default["sentry"]["docker-compose"]["checksum"] = "65edee934d988471c40ef31305731dbb4381d3cb0aeea13342119b61772f85e2"
|
|
||||||
|
|||||||
@@ -3,12 +3,14 @@
|
|||||||
# Recipe:: default
|
# Recipe:: default
|
||||||
#
|
#
|
||||||
|
|
||||||
package "docker"
|
apt_repository "docker" do
|
||||||
|
uri "https://download.docker.com/linux/ubuntu"
|
||||||
|
key "https://download.docker.com/linux/ubuntu/gpg"
|
||||||
|
components ["stable"]
|
||||||
|
end
|
||||||
|
|
||||||
remote_file "/usr/local/bin/docker-compose" do
|
%w[docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin].each do |pkg|
|
||||||
source "https://github.com/docker/compose/releases/download/v#{node["sentry"]["docker-compose"]["version"]}/docker-compose-linux-x86_64"
|
package pkg
|
||||||
checksum node["sentry"]["docker-compose"]["checksum"]
|
|
||||||
mode '0755'
|
|
||||||
end
|
end
|
||||||
|
|
||||||
deploy_path = "/opt/sentry"
|
deploy_path = "/opt/sentry"
|
||||||
@@ -16,24 +18,22 @@ deploy_path = "/opt/sentry"
|
|||||||
git deploy_path do
|
git deploy_path do
|
||||||
repository node["sentry"]["repo"]
|
repository node["sentry"]["repo"]
|
||||||
revision node["sentry"]["revision"]
|
revision node["sentry"]["revision"]
|
||||||
|
# TODO test and uncomment
|
||||||
|
# notifies :run, "execute[run_install_script]", :immediately
|
||||||
end
|
end
|
||||||
|
|
||||||
# TODO
|
execute "run_install_script" do
|
||||||
# Automatically run install script if sentry/sentry.conf.py does not exist yet
|
cwd deploy_path
|
||||||
|
command "./install.sh --apply-automatic-config-updates --no-report-self-hosted-issues"
|
||||||
|
action :nothing
|
||||||
|
end
|
||||||
|
|
||||||
|
credentials = data_bag_item("credentials", "sentry")
|
||||||
|
|
||||||
env_config = {
|
env_config = {
|
||||||
sentry_event_retention_days: node["sentry"]["retention_days"],
|
sentry_event_retention_days: node["sentry"]["retention_days"],
|
||||||
sentry_bind: node["sentry"]["bind"] || node["sentry"]["port"],
|
sentry_bind: node["sentry"]["bind"] || node["sentry"]["port"],
|
||||||
# Default values from upstream
|
launchpad_rpc_shared_secret: credentials["launchpad_rpc_shared_secret"]
|
||||||
compose_project_name: "sentry-self-hosted",
|
|
||||||
sentry_image: "getsentry/sentry:nightly",
|
|
||||||
snuba_image: "getsentry/snuba:nightly",
|
|
||||||
relay_image: "getsentry/relay:nightly",
|
|
||||||
symbolicator_image: "getsentry/symbolicator:nightly",
|
|
||||||
wal2json_version: "latest",
|
|
||||||
healthcheck_interval: "30s",
|
|
||||||
healthcheck_timeout: "60s",
|
|
||||||
healthcheck_retries: "10"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
template "#{deploy_path}/.env.custom" do
|
template "#{deploy_path}/.env.custom" do
|
||||||
@@ -41,7 +41,8 @@ template "#{deploy_path}/.env.custom" do
|
|||||||
mode 0600
|
mode 0600
|
||||||
sensitive true
|
sensitive true
|
||||||
variables config: env_config
|
variables config: env_config
|
||||||
notifies :restart, "service[sentry]", :delayed
|
# TODO
|
||||||
|
# notifies :restart, "service[sentry]", :delayed
|
||||||
end
|
end
|
||||||
|
|
||||||
systemd_unit "sentry.service" do
|
systemd_unit "sentry.service" do
|
||||||
@@ -52,11 +53,13 @@ systemd_unit "sentry.service" do
|
|||||||
},
|
},
|
||||||
Service: {
|
Service: {
|
||||||
Type: "oneshot",
|
Type: "oneshot",
|
||||||
RemainAfterExit: "true",
|
RemainAfterExit: "yes",
|
||||||
WorkingDirectory: deploy_path,
|
WorkingDirectory: deploy_path,
|
||||||
ExecStart: "docker-compose --env-file #{deploy_path}/.env.custom up -d --remove-orphans",
|
ExecStart: "docker compose --env-file .env --env-file .env.custom up -d --wait",
|
||||||
ExecStop: "docker-compose stop",
|
ExecStop: "docker compose down --remove-orphans",
|
||||||
StandardOutput: "syslog"
|
StandardOutput: "journal",
|
||||||
|
TimeoutStartSec: 600,
|
||||||
|
TimeoutStopSec: 300
|
||||||
},
|
},
|
||||||
Install: {
|
Install: {
|
||||||
WantedBy: "multi-user.target"
|
WantedBy: "multi-user.target"
|
||||||
@@ -67,7 +70,7 @@ systemd_unit "sentry.service" do
|
|||||||
end
|
end
|
||||||
|
|
||||||
service "sentry" do
|
service "sentry" do
|
||||||
action [:enable, :start]
|
action [:enable]
|
||||||
end
|
end
|
||||||
|
|
||||||
include_recipe 'firewall'
|
include_recipe 'firewall'
|
||||||
|
|||||||
@@ -4,7 +4,8 @@ maintainer_email 'mail@kosmos.org'
|
|||||||
license 'MIT'
|
license 'MIT'
|
||||||
description 'Installs/Configures zerotier'
|
description 'Installs/Configures zerotier'
|
||||||
long_description 'Installs/Configures zerotier'
|
long_description 'Installs/Configures zerotier'
|
||||||
version '0.1.0'
|
version '0.2.0'
|
||||||
chef_version '>= 14.0'
|
chef_version '>= 14.0'
|
||||||
|
|
||||||
depends 'kosmos-base'
|
depends 'kosmos-base'
|
||||||
|
depends 'zerotier'
|
||||||
|
|||||||
@@ -0,0 +1,11 @@
|
|||||||
|
#
|
||||||
|
# Cookbook:: kosmos_zerotier
|
||||||
|
# Recipe:: ohai_plugin
|
||||||
|
#
|
||||||
|
|
||||||
|
include_recipe "zerotier::ohai_plugin"
|
||||||
|
|
||||||
|
ohai "reload_zerotier" do
|
||||||
|
action :reload
|
||||||
|
plugin "zerotier"
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user