aboutsummaryrefslogtreecommitdiff
path: root/personal_infra/puppet
diff options
context:
space:
mode:
Diffstat (limited to 'personal_infra/puppet')
-rw-r--r--personal_infra/puppet/modules/miniflux/manifests/init.pp27
-rw-r--r--personal_infra/puppet/site/h1.pdp7.net.pp4
-rw-r--r--personal_infra/puppet/site/miniflux.h1.int.pdp7.net.pp8
-rw-r--r--personal_infra/puppet/site/pg.h1.int.pdp7.net.pp3
4 files changed, 42 insertions, 0 deletions
diff --git a/personal_infra/puppet/modules/miniflux/manifests/init.pp b/personal_infra/puppet/modules/miniflux/manifests/init.pp
new file mode 100644
index 00000000..179cfc14
--- /dev/null
+++ b/personal_infra/puppet/modules/miniflux/manifests/init.pp
@@ -0,0 +1,27 @@
+class miniflux($database_url, $polling_frequency, $batch_size, $polling_parser_error_limit) {
+ file {'/etc/yum.repos.d/miniflux.repo':
+ content => "[miniflux]
+name=Miniflux Repository
+baseurl=https://repo.miniflux.app/yum/
+enabled=1
+gpgcheck=0
+",
+ }
+ ->
+ package {'miniflux':}
+ ->
+ file {'/etc/miniflux.conf':
+ content => "LISTEN_ADDR=0.0.0.0:8080
+RUN_MIGRATIONS=1
+DATABASE_URL=$database_url
+POLLING_FREQUENCY=$polling_frequency
+BATCH_SIZE=$batch_size
+POLLING_PARSING_ERROR_LIMIT=$polling_parser_error_limit
+",
+ }
+ ~>
+ service {'miniflux':
+ ensure => running,
+ enable => true,
+ }
+}
diff --git a/personal_infra/puppet/site/h1.pdp7.net.pp b/personal_infra/puppet/site/h1.pdp7.net.pp
index cc5df121..c3f23141 100644
--- a/personal_infra/puppet/site/h1.pdp7.net.pp
+++ b/personal_infra/puppet/site/h1.pdp7.net.pp
@@ -43,4 +43,8 @@ node 'h1.pdp7.net' {
proxmox::proxy_host {'weight.pdp7.net':
target => 'https://k8s-prod.h1.int.pdp7.net/',
}
+
+ proxmox::proxy_host {'miniflux.pdp7.net':
+ target => 'http://miniflux.h1.int.pdp7.net:8080/',
+ }
}
diff --git a/personal_infra/puppet/site/miniflux.h1.int.pdp7.net.pp b/personal_infra/puppet/site/miniflux.h1.int.pdp7.net.pp
new file mode 100644
index 00000000..c6c0862e
--- /dev/null
+++ b/personal_infra/puppet/site/miniflux.h1.int.pdp7.net.pp
@@ -0,0 +1,8 @@
+node 'miniflux.h1.int.pdp7.net' {
+ class {'miniflux':
+ database_url => "host=pg.h1.int.pdp7.net user=miniflux dbname=miniflux sslmode=disable",
+ polling_frequency => 60,
+ batch_size => 100,
+ polling_parser_error_limit => 0,
+ }
+}
diff --git a/personal_infra/puppet/site/pg.h1.int.pdp7.net.pp b/personal_infra/puppet/site/pg.h1.int.pdp7.net.pp
index fde8ba04..c9dceb32 100644
--- a/personal_infra/puppet/site/pg.h1.int.pdp7.net.pp
+++ b/personal_infra/puppet/site/pg.h1.int.pdp7.net.pp
@@ -6,7 +6,10 @@ node 'pg.h1.int.pdp7.net' {
local all all peer
host weight k8s_prod k8s-prod.h1.int.pdp7.net trust
host weight grafana grafana.h2.int.pdp7.net trust
+ host miniflux miniflux miniflux.h1.int.pdp7.net trust
| EOT
,
}
+
+ package {'postgresql15-contrib':} # hstore for miniflux
}