summaryrefslogtreecommitdiffstats
path: root/setup/projects
diff options
context:
space:
mode:
Diffstat (limited to 'setup/projects')
-rw-r--r--setup/projects/services/templates/gogs.yml.j231
-rw-r--r--setup/projects/services/vars/apps.yml3
-rw-r--r--setup/projects/services/vars/davmail.yml14
-rw-r--r--setup/projects/services/vars/gogs.yml18
-rw-r--r--setup/projects/services/vars/script.yml6
-rw-r--r--setup/projects/services/vars/volumes.yml8
-rw-r--r--setup/projects/web/vars/volumes.yml8
7 files changed, 84 insertions, 4 deletions
diff --git a/setup/projects/services/templates/gogs.yml.j2 b/setup/projects/services/templates/gogs.yml.j2
new file mode 100644
index 0000000..57a5e65
--- /dev/null
+++ b/setup/projects/services/templates/gogs.yml.j2
@@ -0,0 +1,31 @@
+kind: ConfigMap
+apiVersion: v1
+metadata:
+ name: gogs
+data:
+ app.ini: |
+ APP_NAME = IPE Git
+ RUN_MODE = prod
+ RUN_USER = gogs
+
+ [server]
+ DOMAIN = gogs.kaas.kit.edu
+ ROOT_URL = http://gogs.kaas.kit.edu
+ HTTP_PORT = 3000
+
+ [database]
+ DB_TYPE = sqlite3
+ NAME = gogs
+ PATH = /data/gogs/gogs.db
+
+ [repository]
+ ROOT = /data/repositories
+
+ [security]
+ INSTALL_LOCK = true
+
+ [service]
+ ENABLE_CAPTCHA = false
+
+ [webhook]
+ SKIP_TLS_VERIFY = true
diff --git a/setup/projects/services/vars/apps.yml b/setup/projects/services/vars/apps.yml
new file mode 100644
index 0000000..3532941
--- /dev/null
+++ b/setup/projects/services/vars/apps.yml
@@ -0,0 +1,3 @@
+apps:
+ davmail: { provision: true, instantiate: true }
+ gogs: { provision: true, instantiate: true }
diff --git a/setup/projects/services/vars/davmail.yml b/setup/projects/services/vars/davmail.yml
new file mode 100644
index 0000000..956f6e5
--- /dev/null
+++ b/setup/projects/services/vars/davmail.yml
@@ -0,0 +1,14 @@
+davmail:
+ builders:
+ davmail: { src: "{{ ands_repos.docker }}/davmail.git" }
+
+ pods:
+ davmail:
+ service: { ports: [ 1389, 1025, 1143, 1110, 1080 ] }
+ sched: { replicas: 1 }
+ images:
+ - stream: "davmail:latest"
+ probes:
+ - { port: 1389 }
+ env:
+ - { name: "DAVMAIL_URL", value: "https://owa.kit.edu/owa/" }
diff --git a/setup/projects/services/vars/gogs.yml b/setup/projects/services/vars/gogs.yml
new file mode 100644
index 0000000..b135746
--- /dev/null
+++ b/setup/projects/services/vars/gogs.yml
@@ -0,0 +1,18 @@
+gogs:
+ builders:
+ gogs: { src: "{{ ands_repos.docker }}/gogs.git" }
+
+ pods:
+ gogs:
+ service: { host: "gogs.{{ openshift_master_default_subdomain }}", ports: [ 80/3000 ] }
+ groups: [ "services_gogs" ]
+ sched: { replicas: 1 }
+ images:
+ - stream: "gogs:latest"
+ configs:
+ - { name: "gogs", mount: "/data/gogs/conf" }
+ mappings:
+ - { name: "data", path: "gogs", mount: "/data" }
+# - { name: "tmp", path: "gogs", mount: "/data/gogs/log" }
+ probes:
+ - { port: 3000 }
diff --git a/setup/projects/services/vars/script.yml b/setup/projects/services/vars/script.yml
new file mode 100644
index 0000000..f5d9378
--- /dev/null
+++ b/setup/projects/services/vars/script.yml
@@ -0,0 +1,6 @@
+oc:
+ - storage: ".*"
+ - templates: "gogs*"
+ - apps: ".*"
+ - oc: "expose svc/davmail --type LoadBalancer --protocol TCP --generator service/v1 --name davmail-ingress"
+ resource: "svc/davmail-ingress"
diff --git a/setup/projects/services/vars/volumes.yml b/setup/projects/services/vars/volumes.yml
new file mode 100644
index 0000000..192f572
--- /dev/null
+++ b/setup/projects/services/vars/volumes.yml
@@ -0,0 +1,8 @@
+gids:
+ services: { id: 9000 }
+ services_gogs: { id: 9001, users: [ 'csa', 'kopmann' ] }
+
+files:
+ - { osv: "data", path: "gogs", state: "directory", group: "services_gogs", mode: "02770" }
+ - { osv: "data/gogs", path: "gogs", state: "directory", group: "services_gogs", mode: "02770" }
+
diff --git a/setup/projects/web/vars/volumes.yml b/setup/projects/web/vars/volumes.yml
index 579e041..fda292c 100644
--- a/setup/projects/web/vars/volumes.yml
+++ b/setup/projects/web/vars/volumes.yml
@@ -4,12 +4,12 @@ gids:
web_trac: { id: 6205, users: [ 'csa', 'kopmann' ] }
web_auth: { id: 6209 }
-
volumes:
- web_etc: { volume: "openshift", path: "", write: false }
- web_data: { volume: "datastore", path: "/web", write: true }
+ web_etc: { volume: "openshift", path: "", write: false }
+ web_data: { volume: "datastore", path: "", write: true }
+ web_db: { volume: "databases", path: "", write: true }
files:
- - { osv: "web_etc", path: "auth", state: "directory", group: "web_auth", mode: "02770" }
+ - { osv: "web_etc", path: "auth", state: "directory", group: "web_auth", mode: "02770" }
- { osv: "web_data", path: "trac", state: "directory", group: "web_trac", mode: "02770" }
- { osv: "web_data", path: "kopmann", state: "directory", group: "web_kopmann", mode: "02770" }