-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 = "localhost",
+ Optional[String] $pg_port = "5432",
+ 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] $bot_version = undef,
+ Optional[String] $bot_sha256 = undef,
+) {
include "base_installation"
+ include "profile::tools"
include "profile::postgresql"
+ include "profile::apache"
+ include "profile::xmr_stak"
- $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($bot_version) {
+ contain "role::cryptoportfolio::bot"
}
- ensure_packages("go")
+ # FIXME: restore backup
+ unless empty($front_version) {
+ contain "role::cryptoportfolio::front"
+ }
}