diff --git a/LICENSE b/LICENSES/AGPL-3.0-or-later.txt similarity index 100% rename from LICENSE rename to LICENSES/AGPL-3.0-or-later.txt diff --git a/README.md b/README.md index 9a6e680..487ceff 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,21 @@ -# ki-ansible + + +# Kompetenzinventar ⚒ Ansible Rolle + +## Variablen: + +| Name | Beschreibung | Beispiel | +| --- | --- | --- | +| `ki_frontend_image` | KI Frontend Image | `registry.wtf-eg.net/ki-frontend:23` | +| `ki_frontend_uri` | URI zum Frontend | `https://ki-wtf-eg.de/` | +| `ki_frontend_port` | Docker-Port für das Frontend | `13337` | +| `ki_backend_image` | KI Backend Image | `registry.wtf-eg.net/ki-backend:42` | +| `ki_backend_uri` | URI zum Backend | `https://ki-wtf-eg.de/api` | +| `ki_backend_port` | Docker-Port für das Backend | `13338` | +| `ki_db_image` | Datenbank-Image | `mariadb:10.6.3` | +| `ki_db_root_password` | KI DB Root Passwort | | +| `ki_db_password` | KI DB Anwendungspasswort | | diff --git a/tasks/main.yml b/tasks/main.yml new file mode 100644 index 0000000..6ad5645 --- /dev/null +++ b/tasks/main.yml @@ -0,0 +1,76 @@ +# SPDX-FileCopyrightText: 2021 WTF Kooperative eG +# +# SPDX-License-Identifier: AGPL-3.0-or-later + +--- +- name: be sure the ki network exists + community.general.docker_network: + name: ki + +- name: "be sure the {{ item }} volume exists" + docker_volume: + name: "{{ item }}" + with_items: + - ki_data + - ki_db + +- name: be sure the ki config directory exists + become: true + file: + path: /etc/ki + state: directory + owner: root + group: root + mode: "0755" + +- name: be sure the ki-frontend config file is in place + become: true + template: + src: frontend.js + dest: /etc/ki/frontend.js + owner: root + group: root + mode: "0655" + +- name: be sure the ki_database container is running + community.general.docker_container: + name: ki_db + image: "{{ ki_db_image }}" + restart_policy: unless-stopped + env: + MYSQL_ROOT_PASSWORD: "{{ ki_db_root_password }}" + MYSQL_DATABASE: ki + MYSQL_USER: ki + MYSQL_PASSWORD: "{{ ki_db_password }}" + volumes: + - ki_db:/var/lib/mysql/ + networks: + - name: ki + +- name: be sure the ki_backend container is running + community.general.docker_container: + name: ki_backend + image: "{{ ki_backend_image }}" + restart_policy: unless-stopped + env: + SQLALCHEMY_DATABASE_URI: "mariadb+pymysql://ki:{{ ki_db_password }}@ki_db:3306/ki" + FLASK_ENV: "development" + KI_LOGLEVEL: "10" + KI_AUTH: "file" + CORS_ORIGINS: "{{ ki_frontend_uri }}" + ports: + - "{{ ki_backend_port }}:5000" + volumes: + - ki_data:/app/data/ + networks: + - name: ki + +- name: be sure the ki_frontend container is running + community.general.docker_container: + name: ki_frontend + image: "{{ ki_frontend_image }}" + restart_policy: unless-stopped + ports: + - "{{ ki_frontend_port }}:80" + volumes: + - /etc/ki/frontend.js:/usr/share/nginx/html/config.js diff --git a/templates/frontend.js b/templates/frontend.js new file mode 100644 index 0000000..44a9133 --- /dev/null +++ b/templates/frontend.js @@ -0,0 +1,7 @@ +// SPDX-FileCopyrightText: 2021 WTF Kooperative eG +// +// SPDX-License-Identifier: AGPL-3.0-or-later + +window.ki = { + apiUrl: '{{ ki_backend_uri }}' +}