]> git.immae.eu Git - perso/Immae/Projets/Puppet.git/blobdiff - modules/role/manifests/cryptoportfolio.pp
Handle postgresql sockets for cryptoportfolio app
[perso/Immae/Projets/Puppet.git] / modules / role / manifests / cryptoportfolio.pp
index 2755fee82934e133ba9715c6ce5fa9ab787bc388..5aaaee3579ac669a20b9ac593317186f38fea938 100644 (file)
@@ -1,14 +1,45 @@
-class role::cryptoportfolio {
+class role::cryptoportfolio (
+  String            $user,
+  String            $group,
+  String            $home,
+  Optional[String]  $env                 = "prod",
+  Optional[String]  $webhook_url         = undef,
+  String            $pg_user,
+  String            $pg_user_replication,
+  String            $pg_db,
+  Optional[String]  $pg_hostname          = "/run/postgresql",
+  Optional[String]  $pg_port              = "5432",
+  Optional[String]  $redis_host           = "/run/redis/redis.sock",
+  Optional[String]  $web_host             = undef,
+  Optional[String]  $web_port             = "",
+  Optional[Boolean] $web_ssl              = true,
+  Optional[String]  $front_version        = undef,
+  Optional[String]  $front_sha256         = undef,
+  Optional[String]  $trader_version       = undef,
+  Optional[String]  $trader_sha256        = undef,
+) {
   include "base_installation"
 
+  include "profile::tools"
   include "profile::postgresql"
+  include "profile::apache"
+  include "profile::xmr_stak"
+  include "profile::boinc"
 
-  $password_seed = lookup("base_installation::puppet_pass_seed") |$key| { {} }
+  contain "role::cryptoportfolio::postgresql"
+  contain "role::cryptoportfolio::apache"
 
-  postgresql::server::db { 'cryptoportfolio':
-    user =>  'cryptoportfolio',
-    password =>  postgresql_password('cryptoportfolio', generate_password(24, $password_seed, "postgres_cryptoportfolio")),
+  contain "role::cryptoportfolio::notify"
+
+  unless empty($trader_version) {
+    if versioncmp($trader_version, "v1.3") >= 0 {
+      include "profile::redis"
+    }
+    contain "role::cryptoportfolio::bot"
   }
 
-  ensure_packages("go")
+  # FIXME: restore backup
+  unless empty($front_version) {
+    contain "role::cryptoportfolio::front"
+  }
 }