From 6b659b35c1d6214688920200efe1d782a0a5d877 Mon Sep 17 00:00:00 2001 From: "Suren A. Chilingaryan" Date: Sun, 6 Oct 2019 04:52:01 +0200 Subject: Migrate more services (gogs, davmail), fix storage-related issues in web namespace --- setup/configs/openshift.yml | 2 ++ setup/configs/security.yml | 21 +++++++++--------- setup/projects/services/templates/gogs.yml.j2 | 31 +++++++++++++++++++++++++++ setup/projects/services/vars/apps.yml | 3 +++ setup/projects/services/vars/davmail.yml | 14 ++++++++++++ setup/projects/services/vars/gogs.yml | 18 ++++++++++++++++ setup/projects/services/vars/script.yml | 6 ++++++ setup/projects/services/vars/volumes.yml | 8 +++++++ setup/projects/web/vars/volumes.yml | 8 +++---- setup/users/htpasswd | 2 +- 10 files changed, 98 insertions(+), 15 deletions(-) create mode 100644 setup/projects/services/templates/gogs.yml.j2 create mode 100644 setup/projects/services/vars/apps.yml create mode 100644 setup/projects/services/vars/davmail.yml create mode 100644 setup/projects/services/vars/gogs.yml create mode 100644 setup/projects/services/vars/script.yml create mode 100644 setup/projects/services/vars/volumes.yml diff --git a/setup/configs/openshift.yml b/setup/configs/openshift.yml index 1a6197d..fc1743a 100644 --- a/setup/configs/openshift.yml +++ b/setup/configs/openshift.yml @@ -12,6 +12,7 @@ ands_openshift_projects: adai: ADAI bora: Build Once Run Always wave: Web-based Analysis of Volumes + services: Additional services web: Web Sites mon: OpenShift monitoring test: Namespace for testing and prototyping @@ -35,6 +36,7 @@ ands_openshift_roles: adai/admin: csa, kopmann bora/admin: csa, ntj, katrin, kopmann wave/admin: csa, ntj + services/admin: csa web/admin: kopmann, jonasteufel mon/admin: csa test/admin: csa, ntj, kopmann, katrin diff --git a/setup/configs/security.yml b/setup/configs/security.yml index d249611..a35b33e 100644 --- a/setup/configs/security.yml +++ b/setup/configs/security.yml @@ -17,16 +17,17 @@ ands_openshift_groups_mode: "MustRunAs" #ands_openshift_uid_ranges: ands_openshift_gid_ranges: - kaas: "4000/10" - katrin: "5000/10" - status: "5100/10" - adei: "6000/10" - adai: "6050/10" - bora: "6100/10" - web: "6200/10" - mon: "7000/10" - test: "7100/10" - wave: "8000/10" + kaas: "4000/10" + katrin: "5000/10" + status: "5100/10" + adei: "6000/10" + adai: "6050/10" + bora: "6100/10" + web: "6200/10" + mon: "7000/10" + test: "7100/10" + wave: "8000/10" + services: "9000/10" # The default user and group mentioned in some projects ands_openshift_uids: 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" } diff --git a/setup/users/htpasswd b/setup/users/htpasswd index f211ac8..8965caf 100644 --- a/setup/users/htpasswd +++ b/setup/users/htpasswd @@ -1,6 +1,6 @@ pdv:$apr1$ACvj6uUa$Nm1Vq8hZq3RzTtaYpAHv01 csa:$apr1$IqEwdnzy$UAdd8ZSFnXommBbj29w3c0 -katrin:$apr1$AQIm74Ae$CJWEzUK6jEYSsk28DQ9du0 +katrin:$apr1$94lAgTxt$LVOWdwye92nsZVqVT7VaG1 ntj:$apr1$G5/ThWdp$kFLsj/hO9jIYYP.Zab9kC/ kopmann:$apr1$jU8jCdPh$u7ZUBiT3gzxlf1xPJl6FI. jonasteufel:$apr1$2dsiiZ1p$Us/5i8DEt9fxeliGy7L6h/ -- cgit v1.2.1