summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--manifests/tozt.pp1
-rw-r--r--modules/metabase/manifests/init.pp12
-rw-r--r--modules/tozt/files/metabase (renamed from modules/tozt/files/ynab-export)1
-rw-r--r--modules/tozt/manifests/metabase.pp55
4 files changed, 54 insertions, 15 deletions
diff --git a/manifests/tozt.pp b/manifests/tozt.pp
index c4ec96f..322c9c5 100644
--- a/manifests/tozt.pp
+++ b/manifests/tozt.pp
@@ -6,6 +6,7 @@ node 'tozt', 'tozt.localdomain' {
class { 'base':
extra_script => "
(cd /home/doy/coding/ynab-export && git pull)
+ (cd /home/doy/coding/investments-sheet-export && git pull)
";
}
diff --git a/modules/metabase/manifests/init.pp b/modules/metabase/manifests/init.pp
index a576194..a3573fa 100644
--- a/modules/metabase/manifests/init.pp
+++ b/modules/metabase/manifests/init.pp
@@ -54,18 +54,6 @@ class metabase {
];
}
- exec { "create metabase db":
- provider => shell,
- command => "createdb -U metabase metabase",
- user => 'postgres',
- unless => "psql -Atc 'select datname from pg_catalog.pg_database' | grep -F metabase",
- require => [
- Exec["create metabase db user"],
- Package["postgresql"],
- Service["postgresql"],
- ];
- }
-
service { "metabase":
ensure => running,
require => [
diff --git a/modules/tozt/files/ynab-export b/modules/tozt/files/metabase
index 3cf1254..b52a817 100644
--- a/modules/tozt/files/ynab-export
+++ b/modules/tozt/files/metabase
@@ -2,3 +2,4 @@
set -eu
su doy /home/doy/coding/ynab-export/bin/load > /dev/null
+su doy /home/doy/coding/investments-sheet-export/bin/load > /dev/null
diff --git a/modules/tozt/manifests/metabase.pp b/modules/tozt/manifests/metabase.pp
index 348fcb8..bde8715 100644
--- a/modules/tozt/manifests/metabase.pp
+++ b/modules/tozt/manifests/metabase.pp
@@ -20,16 +20,47 @@ class tozt::metabase {
source => 'puppet:///modules/tozt/nginx/metabase.conf';
}
+ exec { "create ynab db":
+ provider => shell,
+ command => "createdb -U metabase ynab",
+ user => 'postgres',
+ unless => "psql -Atc 'select datname from pg_catalog.pg_database' | grep -F ynab",
+ require => [
+ Exec["create metabase db user"],
+ Package["postgresql"],
+ Service["postgresql"],
+ ];
+ }
+
+ exec { "create investments db":
+ provider => shell,
+ command => "createdb -U metabase investments",
+ user => 'postgres',
+ unless => "psql -Atc 'select datname from pg_catalog.pg_database' | grep -F investments",
+ require => [
+ Exec["create metabase db user"],
+ Package["postgresql"],
+ Service["postgresql"],
+ ];
+ }
+
file {
"/home/doy/.config/ynab":
ensure => directory,
owner => 'doy',
group => 'doy',
require => Conf::User["doy"];
- "/etc/cron.hourly/ynab-export":
+ "/etc/cron.hourly/metabase":
mode => '0755',
- source => "puppet:///modules/tozt/ynab-export",
- require => Exec["clone ynab-export"];
+ source => "puppet:///modules/tozt/metabase",
+ require => [
+ Exec["clone ynab-export"],
+ Exec["clone investments-sheet-export"],
+ Secret["/home/doy/.config/ynab/api-key"],
+ Secret["/home/doy/.config/google/investment-sheets"],
+ Exec["create ynab db"],
+ Exec["create investments db"],
+ ];
}
secret { "/home/doy/.config/ynab/api-key":
@@ -39,6 +70,13 @@ class tozt::metabase {
require => File["/home/doy/.config/ynab"];
}
+ secret { "/home/doy/.config/google/investment-sheets":
+ source => "investments-sheets",
+ owner => 'doy',
+ group => 'doy',
+ require => File["/home/doy/.config/google"];
+ }
+
exec { "clone ynab-export":
command => "/usr/bin/git clone git://github.com/doy/ynab-export",
user => "doy",
@@ -49,4 +87,15 @@ class tozt::metabase {
File["/home/doy/coding"],
],
}
+
+ exec { "clone investments-sheet-export":
+ command => "/usr/bin/git clone git://github.com/doy/investments-sheet-export",
+ user => "doy",
+ cwd => "/home/doy/coding",
+ creates => "/home/doy/coding/investments-sheet-export",
+ require => [
+ Class["git"],
+ File["/home/doy/coding"],
+ ],
+ }
}