+ content => template("role/cryptoportfolio/bot_config.ini.erb"),
+ require => [
+ User["$user:"],
+ Archive["${home}/trader_${bot_version}.tar.gz"],
+ ],
+ }
+
+ cron { "py-cryptoportfolio-before":
+ ensure => present,
+ command => "cd $cf_bot_app ; python main.py --config $cf_bot_app_conf --before",
+ user => $user,
+ weekday => 7, # Sunday
+ hour => 22,
+ minute => 30,
+ environment => ["HOME=${home}","PATH=/usr/bin/"],
+ require => [
+ File[$cf_bot_app_conf],
+ Archive["${home}/trader_${bot_version}.tar.gz"]
+ ],
+ }
+
+ cron { "py-cryptoportfolio-after":
+ ensure => present,
+ command => "cd $cf_bot_app ; python main.py --config $cf_bot_app_conf --after",
+ user => $user,
+ weekday => 1, # Monday
+ hour => 1,
+ minute => 0,
+ environment => ["HOME=${home}","PATH=/usr/bin/"],
+ require => [
+ File[$cf_bot_app_conf],
+ Archive["${home}/trader_${bot_version}.tar.gz"]
+ ],
+ }
+
+ unless empty($webhook_url) {
+ exec { "bot-slack-notify":
+ refreshonly => true,
+ environment => [
+ "P_PROJECT=Trader",
+ "P_WEBHOOK=${webhook_url}",
+ "P_VERSION=${bot_version}",
+ "P_HOST=${web_host}",
+ "P_HTTPS=${web_ssl}",
+ ],
+ command => "/usr/local/bin/slack-notify",
+ require => File["/usr/local/bin/slack-notify"],
+ subscribe => Exec["py-cryptoportfolio-dependencies"],
+ }