ConfigLMM 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/CNAME +1 -0
  4. data/Examples/.lmm.state.yaml +159 -0
  5. data/Examples/ConfigLMM.mm.yaml +32 -0
  6. data/Examples/Implemented.mm.yaml +252 -4
  7. data/Examples/SmallBusiness.mm.yaml +492 -0
  8. data/Plugins/Apps/Answer/answer.lmm.rb +165 -0
  9. data/Plugins/Apps/Answer/answer@.service +40 -0
  10. data/Plugins/Apps/ArchiSteamFarm/ArchiSteamFarm.conf.erb +0 -3
  11. data/Plugins/Apps/ArchiSteamFarm/ArchiSteamFarm.lmm.rb +0 -1
  12. data/Plugins/Apps/Authentik/Authentik-ProxyOutpost.container +7 -1
  13. data/Plugins/Apps/Authentik/Authentik-Server.container +6 -1
  14. data/Plugins/Apps/Authentik/Authentik-Worker.container +6 -1
  15. data/Plugins/Apps/Authentik/Authentik.conf.erb +12 -7
  16. data/Plugins/Apps/Authentik/Authentik.lmm.rb +226 -61
  17. data/Plugins/Apps/BookStack/BookStack.conf.erb +0 -3
  18. data/Plugins/Apps/BookStack/BookStack.container +5 -0
  19. data/Plugins/Apps/BookStack/BookStack.lmm.rb +14 -3
  20. data/Plugins/Apps/Cassandra/Cassandra.lmm.rb +9 -19
  21. data/Plugins/Apps/ClickHouse/ClickHouse.container +28 -0
  22. data/Plugins/Apps/ClickHouse/ClickHouse.lmm.rb +113 -0
  23. data/Plugins/Apps/ClickHouse/Config/listen.yaml +2 -0
  24. data/Plugins/Apps/ClickHouse/Config/logger.yaml +8 -0
  25. data/Plugins/Apps/ClickHouse/Config/zookeepers.yaml +5 -0
  26. data/Plugins/Apps/ClickHouse/Connection.rb +96 -0
  27. data/Plugins/Apps/Discourse/Discourse-Sidekiq.container +5 -0
  28. data/Plugins/Apps/Discourse/Discourse.conf.erb +1 -4
  29. data/Plugins/Apps/Discourse/Discourse.container +4 -0
  30. data/Plugins/Apps/Discourse/Discourse.lmm.rb +116 -55
  31. data/Plugins/Apps/Dovecot/Dovecot.lmm.rb +74 -62
  32. data/Plugins/Apps/ERPNext/ERPNext-Frontend.container +6 -1
  33. data/Plugins/Apps/ERPNext/ERPNext-Queue.container +5 -0
  34. data/Plugins/Apps/ERPNext/ERPNext-Scheduler.container +5 -0
  35. data/Plugins/Apps/ERPNext/ERPNext-Websocket.container +6 -1
  36. data/Plugins/Apps/ERPNext/ERPNext.container +6 -1
  37. data/Plugins/Apps/ERPNext/ERPNext.lmm.rb +138 -127
  38. data/Plugins/Apps/GitLab/GitLab.container +6 -0
  39. data/Plugins/Apps/GitLab/GitLab.lmm.rb +43 -49
  40. data/Plugins/Apps/Homepage/Homepage.conf.erb +86 -0
  41. data/Plugins/Apps/Homepage/Homepage.container +19 -0
  42. data/Plugins/Apps/Homepage/Homepage.lmm.rb +54 -0
  43. data/Plugins/Apps/IPFS/IPFS.conf.erb +0 -3
  44. data/Plugins/Apps/IPFS/IPFS.lmm.rb +0 -1
  45. data/Plugins/Apps/InfluxDB/InfluxDB.conf.erb +0 -3
  46. data/Plugins/Apps/InfluxDB/InfluxDB.lmm.rb +0 -1
  47. data/Plugins/Apps/Jackett/Jackett.conf.erb +0 -3
  48. data/Plugins/Apps/Jackett/Jackett.lmm.rb +0 -1
  49. data/Plugins/Apps/Jellyfin/Jellyfin.conf.erb +0 -3
  50. data/Plugins/Apps/Jellyfin/Jellyfin.lmm.rb +0 -1
  51. data/Plugins/Apps/LetsEncrypt/LetsEncrypt.lmm.rb +49 -28
  52. data/Plugins/Apps/LibreTranslate/LibreTranslate.container +21 -0
  53. data/Plugins/Apps/LibreTranslate/LibreTranslate.lmm.rb +34 -0
  54. data/Plugins/Apps/Lobsters/Containerfile +81 -0
  55. data/Plugins/Apps/Lobsters/Lobsters-Tasks.container +26 -0
  56. data/Plugins/Apps/Lobsters/Lobsters.conf.erb +99 -0
  57. data/Plugins/Apps/Lobsters/Lobsters.container +27 -0
  58. data/Plugins/Apps/Lobsters/Lobsters.lmm.rb +196 -0
  59. data/Plugins/Apps/Lobsters/crontab +3 -0
  60. data/Plugins/Apps/Lobsters/database.yml +26 -0
  61. data/Plugins/Apps/Lobsters/entrypoint.sh +30 -0
  62. data/Plugins/Apps/Lobsters/generateCredentials.rb +19 -0
  63. data/Plugins/Apps/Lobsters/lobsters-cron.sh +25 -0
  64. data/Plugins/Apps/Lobsters/lobsters-daily.sh +23 -0
  65. data/Plugins/Apps/Lobsters/puma.rb +49 -0
  66. data/Plugins/Apps/MariaDB/Connection.rb +55 -0
  67. data/Plugins/Apps/MariaDB/MariaDB.lmm.rb +60 -53
  68. data/Plugins/Apps/Mastodon/Mastodon-Sidekiq.container +22 -0
  69. data/Plugins/Apps/Mastodon/Mastodon-Streaming.container +20 -0
  70. data/Plugins/Apps/Mastodon/Mastodon.conf.erb +34 -45
  71. data/Plugins/Apps/Mastodon/Mastodon.container +28 -0
  72. data/Plugins/Apps/Mastodon/Mastodon.lmm.rb +240 -5
  73. data/Plugins/Apps/Mastodon/configlmm.rake +30 -0
  74. data/Plugins/Apps/Mastodon/entrypoint.sh +16 -0
  75. data/Plugins/Apps/Matrix/Element.container +5 -0
  76. data/Plugins/Apps/Matrix/Matrix.conf.erb +2 -8
  77. data/Plugins/Apps/Matrix/Matrix.lmm.rb +100 -71
  78. data/Plugins/Apps/Matrix/Synapse.container +5 -0
  79. data/Plugins/Apps/Netdata/Netdata.conf.erb +0 -3
  80. data/Plugins/Apps/Netdata/Netdata.lmm.rb +0 -1
  81. data/Plugins/Apps/Nextcloud/Nextcloud.conf.erb +3 -4
  82. data/Plugins/Apps/Nextcloud/Nextcloud.lmm.rb +150 -68
  83. data/Plugins/Apps/Nextcloud/autoconfig.php +13 -0
  84. data/Plugins/Apps/Nextcloud/config.php +10 -1
  85. data/Plugins/Apps/Nextcloud/nextcloudcron.service +8 -0
  86. data/Plugins/Apps/Nextcloud/nextcloudcron.timer +10 -0
  87. data/Plugins/Apps/Nginx/Connection.rb +93 -0
  88. data/Plugins/Apps/Nginx/conf.d/configlmm.conf +50 -9
  89. data/Plugins/Apps/Nginx/conf.d/languages.conf +21 -0
  90. data/Plugins/Apps/Nginx/config-lmm/errors.conf +25 -20
  91. data/Plugins/Apps/Nginx/config-lmm/gateway-errors.conf +20 -0
  92. data/Plugins/Apps/Nginx/config-lmm/proxy.conf +1 -1
  93. data/Plugins/Apps/Nginx/main.conf.erb +7 -3
  94. data/Plugins/Apps/Nginx/nginx.conf +2 -2
  95. data/Plugins/Apps/Nginx/nginx.lmm.rb +99 -81
  96. data/Plugins/Apps/Nginx/proxy.conf.erb +11 -3
  97. data/Plugins/Apps/Odoo/Odoo.conf.erb +0 -3
  98. data/Plugins/Apps/Odoo/Odoo.container +5 -0
  99. data/Plugins/Apps/Odoo/Odoo.lmm.rb +4 -5
  100. data/Plugins/Apps/Ollama/Ollama.container +26 -0
  101. data/Plugins/Apps/Ollama/Ollama.lmm.rb +73 -0
  102. data/Plugins/Apps/OpenTelemetry/Config/config.yaml +704 -0
  103. data/Plugins/Apps/OpenTelemetry/OpenTelemetry.lmm.rb +154 -0
  104. data/Plugins/Apps/OpenVidu/Ingress.container +5 -0
  105. data/Plugins/Apps/OpenVidu/OpenVidu.conf.erb +0 -3
  106. data/Plugins/Apps/OpenVidu/OpenVidu.container +5 -0
  107. data/Plugins/Apps/OpenVidu/OpenVidu.lmm.rb +7 -3
  108. data/Plugins/Apps/OpenVidu/OpenViduCall.conf.erb +0 -3
  109. data/Plugins/Apps/OpenVidu/OpenViduCall.container +5 -0
  110. data/Plugins/Apps/PHP-FPM/Connection.rb +91 -0
  111. data/Plugins/Apps/PHP-FPM/PHP-FPM.lmm.rb +31 -4
  112. data/Plugins/Apps/Peppermint/Peppermint.conf.erb +2 -5
  113. data/Plugins/Apps/Peppermint/Peppermint.container +5 -0
  114. data/Plugins/Apps/Peppermint/Peppermint.lmm.rb +29 -33
  115. data/Plugins/Apps/Perplexica/Perplexica.container +25 -0
  116. data/Plugins/Apps/Perplexica/Perplexica.lmm.rb +92 -0
  117. data/Plugins/Apps/Perplexica/config.toml +26 -0
  118. data/Plugins/Apps/Podman/Connection.rb +24 -0
  119. data/Plugins/Apps/Podman/Podman.lmm.rb +80 -0
  120. data/Plugins/Apps/Podman/storage.conf +6 -0
  121. data/Plugins/Apps/Postfix/Postfix.lmm.rb +242 -164
  122. data/Plugins/Apps/PostgreSQL/Connection.rb +97 -0
  123. data/Plugins/Apps/PostgreSQL/PostgreSQL.lmm.rb +184 -148
  124. data/Plugins/Apps/Pterodactyl/Pterodactyl.conf.erb +0 -3
  125. data/Plugins/Apps/Pterodactyl/Pterodactyl.lmm.rb +0 -2
  126. data/Plugins/Apps/Pterodactyl/Wings.conf.erb +0 -3
  127. data/Plugins/Apps/RVM/RVM.lmm.rb +57 -0
  128. data/Plugins/Apps/Roundcube/Roundcube.conf.erb +0 -3
  129. data/Plugins/Apps/Roundcube/Roundcube.lmm.rb +15 -19
  130. data/Plugins/Apps/SSH/SSH.lmm.rb +9 -15
  131. data/Plugins/Apps/SearXNG/SearXNG.container +22 -0
  132. data/Plugins/Apps/SearXNG/SearXNG.lmm.rb +79 -0
  133. data/Plugins/Apps/SearXNG/limiter.toml +40 -0
  134. data/Plugins/Apps/SearXNG/settings.yml +2 -0
  135. data/Plugins/Apps/SigNoz/Config/alerts.yml +11 -0
  136. data/Plugins/Apps/SigNoz/Config/otel-collector-config.yaml +110 -0
  137. data/Plugins/Apps/SigNoz/Config/otel-collector-opamp-config.yaml +1 -0
  138. data/Plugins/Apps/SigNoz/Config/prometheus.yml +18 -0
  139. data/Plugins/Apps/SigNoz/SigNoz-Collector.container +23 -0
  140. data/Plugins/Apps/SigNoz/SigNoz-Migrator.container +17 -0
  141. data/Plugins/Apps/SigNoz/SigNoz.conf.erb +61 -0
  142. data/Plugins/Apps/SigNoz/SigNoz.container +26 -0
  143. data/Plugins/Apps/SigNoz/SigNoz.lmm.rb +319 -0
  144. data/Plugins/Apps/Solr/log4j2.xml +89 -0
  145. data/Plugins/Apps/Solr/solr.lmm.rb +82 -0
  146. data/Plugins/Apps/Sunshine/Sunshine.conf.erb +0 -3
  147. data/Plugins/Apps/Sunshine/Sunshine.lmm.rb +0 -1
  148. data/Plugins/Apps/Tunnel/tunnel.lmm.rb +33 -37
  149. data/Plugins/Apps/UVdesk/UVdesk.conf.erb +0 -3
  150. data/Plugins/Apps/Umami/Umami.container +19 -0
  151. data/Plugins/Apps/Umami/Umami.lmm.rb +108 -0
  152. data/Plugins/Apps/Valkey/Valkey.lmm.rb +54 -42
  153. data/Plugins/Apps/Vaultwarden/Vaultwarden.conf.erb +9 -6
  154. data/Plugins/Apps/Vaultwarden/Vaultwarden.container +7 -1
  155. data/Plugins/Apps/Vaultwarden/Vaultwarden.lmm.rb +64 -29
  156. data/Plugins/Apps/Wiki.js/Wiki.js.conf.erb +1 -4
  157. data/Plugins/Apps/Wiki.js/Wiki.js.container +5 -0
  158. data/Plugins/Apps/Wiki.js/Wiki.js.lmm.rb +31 -37
  159. data/Plugins/Apps/YaCy/YaCy.conf.erb +93 -0
  160. data/Plugins/Apps/YaCy/YaCy.container +21 -0
  161. data/Plugins/Apps/YaCy/YaCy.lmm.rb +160 -0
  162. data/Plugins/Apps/ZooKeeper/ZooKeeper.container +24 -0
  163. data/Plugins/Apps/ZooKeeper/ZooKeeper.lmm.rb +68 -0
  164. data/Plugins/Apps/bitmagnet/bitmagnet.conf.erb +0 -3
  165. data/Plugins/Apps/bitmagnet/bitmagnet.lmm.rb +0 -1
  166. data/Plugins/Apps/gollum/gollum.conf.erb +2 -4
  167. data/Plugins/Apps/gollum/gollum.container +6 -0
  168. data/Plugins/Apps/gollum/gollum.lmm.rb +51 -50
  169. data/Plugins/Apps/llama.cpp/llama.cpp.container +28 -0
  170. data/Plugins/Apps/llama.cpp/llama.cpp.lmm.rb +90 -0
  171. data/Plugins/Apps/vLLM/vLLM.container +32 -0
  172. data/Plugins/Apps/vLLM/vLLM.lmm.rb +89 -0
  173. data/Plugins/OS/General/Utils.lmm.rb +26 -0
  174. data/Plugins/OS/Linux/Connection.rb +472 -0
  175. data/Plugins/OS/Linux/Debian/preseed.cfg.erb +25 -6
  176. data/Plugins/OS/Linux/Flavours.yaml +13 -0
  177. data/Plugins/OS/Linux/Grub/grub.cfg +10 -0
  178. data/Plugins/OS/Linux/HTTP.rb +32 -0
  179. data/Plugins/OS/Linux/Linux.lmm.rb +533 -187
  180. data/Plugins/OS/Linux/Packages.yaml +20 -1
  181. data/Plugins/OS/Linux/Services.yaml +8 -0
  182. data/Plugins/OS/Linux/Shell.rb +70 -0
  183. data/Plugins/OS/Linux/Syslinux/default +8 -0
  184. data/Plugins/OS/Linux/WireGuard/WireGuard.lmm.rb +83 -59
  185. data/Plugins/OS/Linux/WireGuard/wg0.conf.erb +3 -0
  186. data/Plugins/OS/Linux/openSUSE/autoinst.xml.erb +29 -3
  187. data/Plugins/OS/Linux/systemd/systemd.lmm.rb +13 -11
  188. data/Plugins/OS/Routers/Aruba/ArubaInstant.lmm.rb +6 -5
  189. data/Plugins/Platforms/GitHub.lmm.rb +73 -28
  190. data/Plugins/Platforms/GoDaddy/GoDaddy.lmm.rb +9 -6
  191. data/Plugins/Platforms/Proxmox/Proxmox.lmm.rb +402 -0
  192. data/Plugins/Platforms/Proxmox/XTerm.rb +321 -0
  193. data/Plugins/Platforms/libvirt/libvirt.lmm.rb +38 -13
  194. data/Plugins/Platforms/porkbun.lmm.rb +12 -2
  195. data/Plugins/Platforms/porkbun_spec.rb +2 -2
  196. data/Plugins/Services/DNS/AmberBit.lmm.rb +1 -1
  197. data/Plugins/Services/DNS/ArubaItDNS.lmm.rb +1 -1
  198. data/Plugins/Services/DNS/NICLV.lmm.rb +1 -1
  199. data/Plugins/Services/DNS/PowerDNS.lmm.rb +70 -68
  200. data/Plugins/Services/DNS/tonic.lmm.rb +22 -12
  201. data/lib/ConfigLMM/Framework/plugins/dns.rb +4 -3
  202. data/lib/ConfigLMM/Framework/plugins/linuxApp.rb +145 -184
  203. data/lib/ConfigLMM/Framework/plugins/nginxApp.rb +34 -17
  204. data/lib/ConfigLMM/Framework/plugins/plugin.rb +53 -181
  205. data/lib/ConfigLMM/Framework/plugins/store.rb +4 -4
  206. data/lib/ConfigLMM/Framework/variables.rb +75 -0
  207. data/lib/ConfigLMM/Framework.rb +1 -0
  208. data/lib/ConfigLMM/cli.rb +12 -6
  209. data/lib/ConfigLMM/commands/configsCommand.rb +37 -6
  210. data/lib/ConfigLMM/commands/diff.rb +33 -9
  211. data/lib/ConfigLMM/context.rb +22 -3
  212. data/lib/ConfigLMM/io/configList.rb +82 -6
  213. data/lib/ConfigLMM/io/connection.rb +143 -0
  214. data/lib/ConfigLMM/io/dhcp.rb +330 -0
  215. data/lib/ConfigLMM/io/http.rb +78 -0
  216. data/lib/ConfigLMM/io/local.rb +207 -0
  217. data/lib/ConfigLMM/io/pxe.rb +92 -0
  218. data/lib/ConfigLMM/io/ssh.rb +156 -0
  219. data/lib/ConfigLMM/io/tftp.rb +105 -0
  220. data/lib/ConfigLMM/io.rb +2 -0
  221. data/lib/ConfigLMM/secrets/envStore.rb +39 -0
  222. data/lib/ConfigLMM/secrets/fileStore.rb +43 -0
  223. data/lib/ConfigLMM/state.rb +2 -1
  224. data/lib/ConfigLMM/version.rb +2 -1
  225. data/lib/ConfigLMM.rb +1 -0
  226. data/{Examples → scripts}/configlmmAuth.sh +7 -5
  227. metadata +205 -8
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ConfigLMM
4
+ module Secrets
5
+ class FileStore < EnvStore
6
+
7
+ def initialize(logger, prompt, secretsFile)
8
+ super(logger, prompt)
9
+ @File = secretsFile
10
+ loadSecrets
11
+ end
12
+
13
+ def store(id, name, value)
14
+ super
15
+ save
16
+ end
17
+
18
+ def print(message, value)
19
+ # Don't print
20
+ end
21
+
22
+ private
23
+
24
+ def loadSecrets()
25
+ save unless File.exist?(@File)
26
+ @Secrets = Hash[(File.read(@File).lines.select { |line| !line.strip.empty? }.map { |line| keyValue(line.strip) })]
27
+ @Secrets.transform_keys!(&:upcase)
28
+ end
29
+
30
+ def save()
31
+ secrets = @Secrets.map { |name, value| "#{name}=#{value}" }.join("\n") + "\n"
32
+ File.write(@File, secrets)
33
+ end
34
+
35
+ private
36
+
37
+ def keyValue(line)
38
+ pos = line.index('=')
39
+ [line[0..(pos - 1)], line[(pos + 1)..-1]]
40
+ end
41
+ end
42
+ end
43
+ end
@@ -65,7 +65,8 @@ module ConfigLMM
65
65
 
66
66
  def save
67
67
  File.open(@StateFile, 'w') do |file|
68
- file.write(YAML.dump(@State))
68
+ data = YAML.dump(@State)
69
+ file.write(data)
69
70
  end
70
71
  end
71
72
 
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ConfigLMM
4
- VERSION = '0.4.0'
4
+ VERSION = '0.5.0'
5
5
  end
6
+
data/lib/ConfigLMM.rb CHANGED
@@ -2,5 +2,6 @@
2
2
 
3
3
  require_relative 'ConfigLMM/version'
4
4
  require_relative 'ConfigLMM/utils/filters'
5
+ require_relative 'ConfigLMM/Framework'
5
6
  require_relative 'ConfigLMM/io'
6
7
  require_relative 'ConfigLMM/state'
@@ -1,13 +1,14 @@
1
1
  #!/usr/bin/sh
2
2
 
3
- if [ "$#" -ne 3 ]; then
3
+ if [ "$#" -lt 3 ]; then
4
4
  echo "Usage $0 <cmd> <key file> <config file>"
5
5
  exit 1
6
6
  fi
7
7
 
8
8
  cmd="$1"
9
9
  keysFile="$2"
10
- configFile="$3"
10
+ shift
11
+ shift
11
12
 
12
13
  if [ ! -f "$keysFile" ]; then
13
14
  echo "Provided key file '$keysFile' doesn't exist!"
@@ -18,9 +19,10 @@ if [[ ${keysFile:0:2} != "./" ]]; then
18
19
  keysFile="./$keysFile"
19
20
  fi
20
21
 
21
- export $(grep -v '^#' "$keysFile" | xargs -d '\n')
22
+ if [ "$(grep -v '^#' "$keysFile" | wc -l)" -gt 0 ]; then
23
+ export $(grep -v '^#' "$keysFile" | xargs -d '\n')
24
+ fi
22
25
 
23
26
  echo "Deploying..."
24
27
 
25
- ruby configlmm $cmd $configFile
26
-
28
+ configlmm $cmd "$@"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ConfigLMM
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dāvis Mosāns
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-04 00:00:00.000000000 Z
11
+ date: 2025-04-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: argon2
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bcrypt_pbkdf
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -38,6 +52,20 @@ dependencies:
38
52
  - - ">="
39
53
  - !ruby/object:Gem::Version
40
54
  version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: deep_merge
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
41
69
  - !ruby/object:Gem::Dependency
42
70
  name: ed25519
43
71
  requirement: !ruby/object:Gem::Requirement
@@ -80,6 +108,20 @@ dependencies:
80
108
  - - ">="
81
109
  - !ruby/object:Gem::Version
82
110
  version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: faye-websocket
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
83
125
  - !ruby/object:Gem::Dependency
84
126
  name: filesize
85
127
  requirement: !ruby/object:Gem::Requirement
@@ -122,20 +164,48 @@ dependencies:
122
164
  - - ">="
123
165
  - !ruby/object:Gem::Version
124
166
  version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: fog-proxmox-configlmm
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
125
181
  - !ruby/object:Gem::Dependency
126
182
  name: http
127
183
  requirement: !ruby/object:Gem::Requirement
128
184
  requirements:
129
- - - "~>"
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
188
+ type: :runtime
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ - !ruby/object:Gem::Dependency
196
+ name: net-dhcp
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">="
130
200
  - !ruby/object:Gem::Version
131
- version: 5.1.1
201
+ version: '0'
132
202
  type: :runtime
133
203
  prerelease: false
134
204
  version_requirements: !ruby/object:Gem::Requirement
135
205
  requirements:
136
- - - "~>"
206
+ - - ">="
137
207
  - !ruby/object:Gem::Version
138
- version: 5.1.1
208
+ version: '0'
139
209
  - !ruby/object:Gem::Dependency
140
210
  name: net-scp
141
211
  requirement: !ruby/object:Gem::Requirement
@@ -220,6 +290,20 @@ dependencies:
220
290
  - - ">="
221
291
  - !ruby/object:Gem::Version
222
292
  version: '0'
293
+ - !ruby/object:Gem::Dependency
294
+ name: strings-ansi
295
+ requirement: !ruby/object:Gem::Requirement
296
+ requirements:
297
+ - - ">="
298
+ - !ruby/object:Gem::Version
299
+ version: '0'
300
+ type: :runtime
301
+ prerelease: false
302
+ version_requirements: !ruby/object:Gem::Requirement
303
+ requirements:
304
+ - - ">="
305
+ - !ruby/object:Gem::Version
306
+ version: '0'
223
307
  - !ruby/object:Gem::Dependency
224
308
  name: xdg
225
309
  requirement: !ruby/object:Gem::Requirement
@@ -262,6 +346,20 @@ dependencies:
262
346
  - - ">="
263
347
  - !ruby/object:Gem::Version
264
348
  version: '1.0'
349
+ - !ruby/object:Gem::Dependency
350
+ name: fx-tftp
351
+ requirement: !ruby/object:Gem::Requirement
352
+ requirements:
353
+ - - ">="
354
+ - !ruby/object:Gem::Version
355
+ version: '0'
356
+ type: :runtime
357
+ prerelease: false
358
+ version_requirements: !ruby/object:Gem::Requirement
359
+ requirements:
360
+ - - ">="
361
+ - !ruby/object:Gem::Version
362
+ version: '0'
265
363
  - !ruby/object:Gem::Dependency
266
364
  name: tty-command
267
365
  requirement: !ruby/object:Gem::Requirement
@@ -400,16 +498,21 @@ files:
400
498
  - ".rspec"
401
499
  - ".yardopts"
402
500
  - CHANGELOG.md
501
+ - CNAME
502
+ - Examples/.lmm.state.yaml
403
503
  - Examples/Android.mm.yaml
404
504
  - Examples/Apps/Blog.mm.yaml
405
505
  - Examples/Apps/Jellyfin.mm.yaml
506
+ - Examples/ConfigLMM.mm.yaml
406
507
  - Examples/Implemented.mm.yaml
407
508
  - Examples/Keys.ini
408
509
  - Examples/Linux.mm.yaml
510
+ - Examples/SmallBusiness.mm.yaml
409
511
  - Examples/Windows.mm.yaml
410
- - Examples/configlmmAuth.sh
411
512
  - Images/configINconfig.png
412
513
  - Images/singleConfig.png
514
+ - Plugins/Apps/Answer/answer.lmm.rb
515
+ - Plugins/Apps/Answer/answer@.service
413
516
  - Plugins/Apps/ArchiSteamFarm/ArchiSteamFarm.conf.erb
414
517
  - Plugins/Apps/ArchiSteamFarm/ArchiSteamFarm.lmm.rb
415
518
  - Plugins/Apps/Authentik/Authentik-ProxyOutpost.container
@@ -421,6 +524,12 @@ files:
421
524
  - Plugins/Apps/BookStack/BookStack.container
422
525
  - Plugins/Apps/BookStack/BookStack.lmm.rb
423
526
  - Plugins/Apps/Cassandra/Cassandra.lmm.rb
527
+ - Plugins/Apps/ClickHouse/ClickHouse.container
528
+ - Plugins/Apps/ClickHouse/ClickHouse.lmm.rb
529
+ - Plugins/Apps/ClickHouse/Config/listen.yaml
530
+ - Plugins/Apps/ClickHouse/Config/logger.yaml
531
+ - Plugins/Apps/ClickHouse/Config/zookeepers.yaml
532
+ - Plugins/Apps/ClickHouse/Connection.rb
424
533
  - Plugins/Apps/Discourse/Discourse-Sidekiq.container
425
534
  - Plugins/Apps/Discourse/Discourse.conf.erb
426
535
  - Plugins/Apps/Discourse/Discourse.container
@@ -438,6 +547,9 @@ files:
438
547
  - Plugins/Apps/ERPNext/sites/common_site_config.json
439
548
  - Plugins/Apps/GitLab/GitLab.container
440
549
  - Plugins/Apps/GitLab/GitLab.lmm.rb
550
+ - Plugins/Apps/Homepage/Homepage.conf.erb
551
+ - Plugins/Apps/Homepage/Homepage.container
552
+ - Plugins/Apps/Homepage/Homepage.lmm.rb
441
553
  - Plugins/Apps/IPFS/IPFS.conf.erb
442
554
  - Plugins/Apps/IPFS/IPFS.lmm.rb
443
555
  - Plugins/Apps/InfluxDB/InfluxDB.conf.erb
@@ -453,9 +565,29 @@ files:
453
565
  - Plugins/Apps/LetsEncrypt/renew-certificates.service
454
566
  - Plugins/Apps/LetsEncrypt/renew-certificates.timer
455
567
  - Plugins/Apps/LetsEncrypt/rfc2136.ini
568
+ - Plugins/Apps/LibreTranslate/LibreTranslate.container
569
+ - Plugins/Apps/LibreTranslate/LibreTranslate.lmm.rb
570
+ - Plugins/Apps/Lobsters/Containerfile
571
+ - Plugins/Apps/Lobsters/Lobsters-Tasks.container
572
+ - Plugins/Apps/Lobsters/Lobsters.conf.erb
573
+ - Plugins/Apps/Lobsters/Lobsters.container
574
+ - Plugins/Apps/Lobsters/Lobsters.lmm.rb
575
+ - Plugins/Apps/Lobsters/crontab
576
+ - Plugins/Apps/Lobsters/database.yml
577
+ - Plugins/Apps/Lobsters/entrypoint.sh
578
+ - Plugins/Apps/Lobsters/generateCredentials.rb
579
+ - Plugins/Apps/Lobsters/lobsters-cron.sh
580
+ - Plugins/Apps/Lobsters/lobsters-daily.sh
581
+ - Plugins/Apps/Lobsters/puma.rb
582
+ - Plugins/Apps/MariaDB/Connection.rb
456
583
  - Plugins/Apps/MariaDB/MariaDB.lmm.rb
584
+ - Plugins/Apps/Mastodon/Mastodon-Sidekiq.container
585
+ - Plugins/Apps/Mastodon/Mastodon-Streaming.container
457
586
  - Plugins/Apps/Mastodon/Mastodon.conf.erb
587
+ - Plugins/Apps/Mastodon/Mastodon.container
458
588
  - Plugins/Apps/Mastodon/Mastodon.lmm.rb
589
+ - Plugins/Apps/Mastodon/configlmm.rake
590
+ - Plugins/Apps/Mastodon/entrypoint.sh
459
591
  - Plugins/Apps/Matrix/Element.container
460
592
  - Plugins/Apps/Matrix/Matrix.conf.erb
461
593
  - Plugins/Apps/Matrix/Matrix.lmm.rb
@@ -467,9 +599,15 @@ files:
467
599
  - Plugins/Apps/Netdata/Netdata.lmm.rb
468
600
  - Plugins/Apps/Nextcloud/Nextcloud.conf.erb
469
601
  - Plugins/Apps/Nextcloud/Nextcloud.lmm.rb
602
+ - Plugins/Apps/Nextcloud/autoconfig.php
470
603
  - Plugins/Apps/Nextcloud/config.php
604
+ - Plugins/Apps/Nextcloud/nextcloudcron.service
605
+ - Plugins/Apps/Nextcloud/nextcloudcron.timer
606
+ - Plugins/Apps/Nginx/Connection.rb
471
607
  - Plugins/Apps/Nginx/conf.d/configlmm.conf
608
+ - Plugins/Apps/Nginx/conf.d/languages.conf
472
609
  - Plugins/Apps/Nginx/config-lmm/errors.conf
610
+ - Plugins/Apps/Nginx/config-lmm/gateway-errors.conf
473
611
  - Plugins/Apps/Nginx/config-lmm/private.conf
474
612
  - Plugins/Apps/Nginx/config-lmm/proxy.conf
475
613
  - Plugins/Apps/Nginx/config-lmm/public.conf
@@ -483,6 +621,10 @@ files:
483
621
  - Plugins/Apps/Odoo/Odoo.container
484
622
  - Plugins/Apps/Odoo/Odoo.lmm.rb
485
623
  - Plugins/Apps/Odoo/odoo.conf
624
+ - Plugins/Apps/Ollama/Ollama.container
625
+ - Plugins/Apps/Ollama/Ollama.lmm.rb
626
+ - Plugins/Apps/OpenTelemetry/Config/config.yaml
627
+ - Plugins/Apps/OpenTelemetry/OpenTelemetry.lmm.rb
486
628
  - Plugins/Apps/OpenVidu/Ingress.container
487
629
  - Plugins/Apps/OpenVidu/OpenVidu.conf.erb
488
630
  - Plugins/Apps/OpenVidu/OpenVidu.container
@@ -491,19 +633,43 @@ files:
491
633
  - Plugins/Apps/OpenVidu/OpenViduCall.container
492
634
  - Plugins/Apps/OpenVidu/ingress.yaml
493
635
  - Plugins/Apps/OpenVidu/livekit.yaml
636
+ - Plugins/Apps/PHP-FPM/Connection.rb
494
637
  - Plugins/Apps/PHP-FPM/PHP-FPM.lmm.rb
495
638
  - Plugins/Apps/Peppermint/Peppermint.conf.erb
496
639
  - Plugins/Apps/Peppermint/Peppermint.container
497
640
  - Plugins/Apps/Peppermint/Peppermint.lmm.rb
641
+ - Plugins/Apps/Perplexica/Perplexica.container
642
+ - Plugins/Apps/Perplexica/Perplexica.lmm.rb
643
+ - Plugins/Apps/Perplexica/config.toml
644
+ - Plugins/Apps/Podman/Connection.rb
645
+ - Plugins/Apps/Podman/Podman.lmm.rb
646
+ - Plugins/Apps/Podman/storage.conf
498
647
  - Plugins/Apps/Postfix/Postfix.lmm.rb
499
648
  - Plugins/Apps/Postfix/smtpd.conf
649
+ - Plugins/Apps/PostgreSQL/Connection.rb
500
650
  - Plugins/Apps/PostgreSQL/PostgreSQL.lmm.rb
501
651
  - Plugins/Apps/Pterodactyl/Pterodactyl.conf.erb
502
652
  - Plugins/Apps/Pterodactyl/Pterodactyl.lmm.rb
503
653
  - Plugins/Apps/Pterodactyl/Wings.conf.erb
654
+ - Plugins/Apps/RVM/RVM.lmm.rb
504
655
  - Plugins/Apps/Roundcube/Roundcube.conf.erb
505
656
  - Plugins/Apps/Roundcube/Roundcube.lmm.rb
506
657
  - Plugins/Apps/SSH/SSH.lmm.rb
658
+ - Plugins/Apps/SearXNG/SearXNG.container
659
+ - Plugins/Apps/SearXNG/SearXNG.lmm.rb
660
+ - Plugins/Apps/SearXNG/limiter.toml
661
+ - Plugins/Apps/SearXNG/settings.yml
662
+ - Plugins/Apps/SigNoz/Config/alerts.yml
663
+ - Plugins/Apps/SigNoz/Config/otel-collector-config.yaml
664
+ - Plugins/Apps/SigNoz/Config/otel-collector-opamp-config.yaml
665
+ - Plugins/Apps/SigNoz/Config/prometheus.yml
666
+ - Plugins/Apps/SigNoz/SigNoz-Collector.container
667
+ - Plugins/Apps/SigNoz/SigNoz-Migrator.container
668
+ - Plugins/Apps/SigNoz/SigNoz.conf.erb
669
+ - Plugins/Apps/SigNoz/SigNoz.container
670
+ - Plugins/Apps/SigNoz/SigNoz.lmm.rb
671
+ - Plugins/Apps/Solr/log4j2.xml
672
+ - Plugins/Apps/Solr/solr.lmm.rb
507
673
  - Plugins/Apps/Sunshine/Sunshine.conf.erb
508
674
  - Plugins/Apps/Sunshine/Sunshine.lmm.rb
509
675
  - Plugins/Apps/Tunnel/tunnel.lmm.rb
@@ -513,6 +679,8 @@ files:
513
679
  - Plugins/Apps/Tunnel/tunnelUDP.socket
514
680
  - Plugins/Apps/UVdesk/UVdesk.conf.erb
515
681
  - Plugins/Apps/UVdesk/UVdesk.lmm.rb
682
+ - Plugins/Apps/Umami/Umami.container
683
+ - Plugins/Apps/Umami/Umami.lmm.rb
516
684
  - Plugins/Apps/Valkey/Valkey.lmm.rb
517
685
  - Plugins/Apps/Vaultwarden/Vaultwarden.conf.erb
518
686
  - Plugins/Apps/Vaultwarden/Vaultwarden.container
@@ -520,18 +688,34 @@ files:
520
688
  - Plugins/Apps/Wiki.js/Wiki.js.conf.erb
521
689
  - Plugins/Apps/Wiki.js/Wiki.js.container
522
690
  - Plugins/Apps/Wiki.js/Wiki.js.lmm.rb
691
+ - Plugins/Apps/YaCy/YaCy.conf.erb
692
+ - Plugins/Apps/YaCy/YaCy.container
693
+ - Plugins/Apps/YaCy/YaCy.lmm.rb
694
+ - Plugins/Apps/ZooKeeper/ZooKeeper.container
695
+ - Plugins/Apps/ZooKeeper/ZooKeeper.lmm.rb
523
696
  - Plugins/Apps/bitmagnet/bitmagnet.conf.erb
524
697
  - Plugins/Apps/bitmagnet/bitmagnet.lmm.rb
525
698
  - Plugins/Apps/gollum/config.ru
526
699
  - Plugins/Apps/gollum/gollum.conf.erb
527
700
  - Plugins/Apps/gollum/gollum.container
528
701
  - Plugins/Apps/gollum/gollum.lmm.rb
702
+ - Plugins/Apps/llama.cpp/llama.cpp.container
703
+ - Plugins/Apps/llama.cpp/llama.cpp.lmm.rb
704
+ - Plugins/Apps/vLLM/vLLM.container
705
+ - Plugins/Apps/vLLM/vLLM.lmm.rb
706
+ - Plugins/OS/General/Utils.lmm.rb
707
+ - Plugins/OS/Linux/Connection.rb
529
708
  - Plugins/OS/Linux/Debian/preseed.cfg.erb
530
709
  - Plugins/OS/Linux/Distributions.yaml
531
710
  - Plugins/OS/Linux/Flavours.yaml
711
+ - Plugins/OS/Linux/Grub/grub.cfg
712
+ - Plugins/OS/Linux/HTTP.rb
532
713
  - Plugins/OS/Linux/Linux.lmm.rb
533
714
  - Plugins/OS/Linux/Packages.yaml
534
715
  - Plugins/OS/Linux/Proxmox/answer.toml.erb
716
+ - Plugins/OS/Linux/Services.yaml
717
+ - Plugins/OS/Linux/Shell.rb
718
+ - Plugins/OS/Linux/Syslinux/default
535
719
  - Plugins/OS/Linux/WireGuard/WireGuard.lmm.rb
536
720
  - Plugins/OS/Linux/WireGuard/wg0.conf.erb
537
721
  - Plugins/OS/Linux/openSUSE/autoinst.xml.erb
@@ -542,6 +726,8 @@ files:
542
726
  - Plugins/Platforms/GitHub.lmm.rb
543
727
  - Plugins/Platforms/GoDaddy/GoDaddy.lmm.rb
544
728
  - Plugins/Platforms/GoDaddy/zone.txt.erb
729
+ - Plugins/Platforms/Proxmox/Proxmox.lmm.rb
730
+ - Plugins/Platforms/Proxmox/XTerm.rb
545
731
  - Plugins/Platforms/libvirt/libvirt.lmm.rb
546
732
  - Plugins/Platforms/porkbun.lmm.rb
547
733
  - Plugins/Platforms/porkbun_spec.rb
@@ -568,6 +754,7 @@ files:
568
754
  - lib/ConfigLMM/Framework/plugins/ssh.rb
569
755
  - lib/ConfigLMM/Framework/plugins/store.rb
570
756
  - lib/ConfigLMM/Framework/registrator.rb
757
+ - lib/ConfigLMM/Framework/variables.rb
571
758
  - lib/ConfigLMM/LMM.rb
572
759
  - lib/ConfigLMM/LMM/plugins.rb
573
760
  - lib/ConfigLMM/cli.rb
@@ -584,11 +771,21 @@ files:
584
771
  - lib/ConfigLMM/context.rb
585
772
  - lib/ConfigLMM/io.rb
586
773
  - lib/ConfigLMM/io/configList.rb
774
+ - lib/ConfigLMM/io/connection.rb
775
+ - lib/ConfigLMM/io/dhcp.rb
776
+ - lib/ConfigLMM/io/http.rb
777
+ - lib/ConfigLMM/io/local.rb
587
778
  - lib/ConfigLMM/io/path.rb
779
+ - lib/ConfigLMM/io/pxe.rb
588
780
  - lib/ConfigLMM/io/source.rb
781
+ - lib/ConfigLMM/io/ssh.rb
782
+ - lib/ConfigLMM/io/tftp.rb
783
+ - lib/ConfigLMM/secrets/envStore.rb
784
+ - lib/ConfigLMM/secrets/fileStore.rb
589
785
  - lib/ConfigLMM/state.rb
590
786
  - lib/ConfigLMM/utils/filters.rb
591
787
  - lib/ConfigLMM/version.rb
788
+ - scripts/configlmmAuth.sh
592
789
  - sig/ConfigLMM.rbs
593
790
  homepage: https://github.com/davispuh/ConfigLMM
594
791
  licenses: []
@@ -611,7 +808,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
611
808
  - !ruby/object:Gem::Version
612
809
  version: '0'
613
810
  requirements: []
614
- rubygems_version: 3.5.15
811
+ rubygems_version: 3.5.11
615
812
  signing_key:
616
813
  specification_version: 4
617
814
  summary: Manage configuration for your applications/systems/services/servers