summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2019-10-23 04:10:34 -0400
committerJesse Luehrs <doy@tozt.net>2019-10-23 04:10:34 -0400
commitff2339457a5c6eaae9349d03d9175637bd8de119 (patch)
tree55d1f8641a5750400dae203714bf6e96e0051ae3
parentc4b979045a7810db19a0440806b7857e195a4e65 (diff)
downloadpuppet-tozt-ff2339457a5c6eaae9349d03d9175637bd8de119.tar.gz
puppet-tozt-ff2339457a5c6eaae9349d03d9175637bd8de119.zip
add teleterm
-rw-r--r--manifests/tozt.pp1
-rw-r--r--modules/teleterm/files/teleterm.service10
-rw-r--r--modules/teleterm/manifests/init.pp27
-rw-r--r--modules/tozt/manifests/teleterm.pp15
-rw-r--r--modules/tozt/templates/teleterm.toml9
5 files changed, 62 insertions, 0 deletions
diff --git a/manifests/tozt.pp b/manifests/tozt.pp
index f644d85..3f0e17e 100644
--- a/manifests/tozt.pp
+++ b/manifests/tozt.pp
@@ -21,5 +21,6 @@ node 'tozt', 'tozt.localdomain' {
include tozt::paste
include tozt::services
include tozt::site
+ include tozt::teleterm
include tozt::ttrss
}
diff --git a/modules/teleterm/files/teleterm.service b/modules/teleterm/files/teleterm.service
new file mode 100644
index 0000000..8f8671e
--- /dev/null
+++ b/modules/teleterm/files/teleterm.service
@@ -0,0 +1,10 @@
+[Unit]
+Description = runs teleterm
+After=network.target
+
+[Service]
+ExecStart=/usr/bin/tt server
+Restart=on-failure
+
+[Install]
+WantedBy=default.target
diff --git a/modules/teleterm/manifests/init.pp b/modules/teleterm/manifests/init.pp
new file mode 100644
index 0000000..070ca18
--- /dev/null
+++ b/modules/teleterm/manifests/init.pp
@@ -0,0 +1,27 @@
+class teleterm {
+ include media::persistent
+ include systemd
+
+ $version = "0.1.0"
+
+ package { "teleterm":
+ ensure => installed,
+ source => "/media/persistent/releases/doy/teleterm/arch/teleterm-${version}-1-x86_64.pkg.tar.xz",
+ require => File['/media/persistent/releases'];
+ }
+
+ file {
+ "/etc/systemd/system/teleterm.service":
+ source => "puppet:///modules/teleterm/teleterm.service",
+ notify => Exec["/usr/bin/systemctl daemon-reload"];
+ }
+
+ service { "teleterm":
+ ensure => "running",
+ enable => true,
+ require => [
+ File["/etc/systemd/system/teleterm.service"],
+ Exec["/usr/bin/systemctl daemon-reload"],
+ ];
+ }
+}
diff --git a/modules/tozt/manifests/teleterm.pp b/modules/tozt/manifests/teleterm.pp
new file mode 100644
index 0000000..34bb277
--- /dev/null
+++ b/modules/tozt/manifests/teleterm.pp
@@ -0,0 +1,15 @@
+class tozt::teleterm {
+ include teleterm
+
+ $client_id = secret::value('teleterm_client_id')
+ $client_secret = secret::value('teleterm_client_secret')
+
+ file {
+ "/etc/teleterm":
+ ensure => directory;
+ "/etc/teleterm/config.toml":
+ contents => template("tozt/teleterm.toml"),
+ require => File["/etc/teleterm"],
+ before => Service["teleterm"];
+ }
+}
diff --git a/modules/tozt/templates/teleterm.toml b/modules/tozt/templates/teleterm.toml
new file mode 100644
index 0000000..39de082
--- /dev/null
+++ b/modules/tozt/templates/teleterm.toml
@@ -0,0 +1,9 @@
+[server]
+allowed_login_methods = ["recurse_center"]
+tls_identity_file = "/media/persistent/certbot/live/tozt.net/identity.pfx"
+uid = "nobody"
+gid = "nobody"
+
+[oauth.recurse_center]
+client_id = "<%= @client_id %>"
+client_secret = "<%= @client_secret %>"