class role::cryptoportfolio (
String $user,
String $group,
String $home,
Optional[String] $env = "prod",
Optional[String] $webhook_url = undef,
String $pg_user,
String $pg_db,
Optional[String] $pg_hostname = "/run/postgresql",
Optional[String] $pg_port = "5432",
Optional[String] $redis_host = "/run/redis/redis.sock",
Optional[String] $smtp_login = undef,
Optional[String] $smtp_password = undef,
Optional[String] $smtp_host = undef,
Optional[String] $mail_from = undef,
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"
include "profile::monitoring"
contain "role::cryptoportfolio::postgresql"
contain "role::cryptoportfolio::apache"
contain "role::cryptoportfolio::notify"
unless empty($trader_version) {
if versioncmp($trader_version, "v1.3") >= 0 {
include "profile::redis"
}
contain "role::cryptoportfolio::bot"
}
unless empty($front_version) {
contain "role::cryptoportfolio::front"
}
}