From 24ebab6f71d4eede82f1c5b88bdedceb60a9bcb8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Fra=C3=9F?= Date: Sat, 8 Jun 2024 14:41:11 +0200 Subject: [PATCH] [add] role:espe_frontend --- roles/espe_frontend/defaults/main.json | 10 +++++ roles/espe_frontend/tasks/main.json | 47 ++++++++++++++++++++++ roles/espe_frontend/templates/conf.json.j2 | 11 +++++ roles/espe_frontend/vardef.json | 34 ++++++++++++++++ 4 files changed, 102 insertions(+) create mode 100644 roles/espe_frontend/defaults/main.json create mode 100644 roles/espe_frontend/tasks/main.json create mode 100644 roles/espe_frontend/templates/conf.json.j2 create mode 100644 roles/espe_frontend/vardef.json diff --git a/roles/espe_frontend/defaults/main.json b/roles/espe_frontend/defaults/main.json new file mode 100644 index 0000000..1157b39 --- /dev/null +++ b/roles/espe_frontend/defaults/main.json @@ -0,0 +1,10 @@ +{ + "var_espe_frontend_git_reference": "master", + "var_espe_frontend_directory": "/opt/zackeneule", + "var_espe_frontend_user": "root", + "var_espe_frontend_title": "Zackeneule", + "var_espe_frontend_backend_scheme": "https", + "var_espe_frontend_backend_host": "espe.example.org", + "var_espe_frontend_backend_port": 4916, + "var_espe_frontend_backend_path_base": "" +} diff --git a/roles/espe_frontend/tasks/main.json b/roles/espe_frontend/tasks/main.json new file mode 100644 index 0000000..f97429d --- /dev/null +++ b/roles/espe_frontend/tasks/main.json @@ -0,0 +1,47 @@ +[ + { + "name": "packages", + "become": true, + "ansible.builtin.apt": { + "update_cache": true, + "pkg": [ + "git", + "make" + ] + } + }, + { + "name": "program | fetch", + "ansible.builtin.git": { + "repo": "https://gitlab.die-linke.cloud/espe/frontend", + "version": "{{var_espe_frontend_git_reference}}", + "dest": "/tmp/espe-frontend-repo" + } + }, + { + "name": "program | build", + "ansible.builtin.command": { + "chdir": "/tmp/espe-frontend-repo", + "cmd": "tools/build" + } + }, + { + "name": "program | deploy", + "become": true, + "ansible.builtin.copy": { + "src": "/tmp/espe-frontend-repo/build", + "remote_src": true, + "dest": "{{var_espe_frontend_directory}}", + "owner": "{{var_espe_frontend_user}}" + } + }, + { + "name": "conf", + "become": true, + "ansible.builtin.template": { + "src": "conf.json.j2", + "dest": "{{var_espe_frontend_directory}}/conf.json", + "owner": "{{var_espe_frontend_user}}" + } + } +] diff --git a/roles/espe_frontend/templates/conf.json.j2 b/roles/espe_frontend/templates/conf.json.j2 new file mode 100644 index 0000000..ea6e2ab --- /dev/null +++ b/roles/espe_frontend/templates/conf.json.j2 @@ -0,0 +1,11 @@ +{ + "backend": { + "scheme": "{{var_espe_frontend_backend_scheme}}", + "host": "{{var_espe_frontend_backend_host}}", + "port": {{var_espe_frontend_backend_port | string}}, + "path_base": "{{var_espe_frontend_backend_path_base}}" + }, + "settings" : { + "title": "{{var_espe_frontend_title}}" + } +} diff --git a/roles/espe_frontend/vardef.json b/roles/espe_frontend/vardef.json new file mode 100644 index 0000000..0da41b6 --- /dev/null +++ b/roles/espe_frontend/vardef.json @@ -0,0 +1,34 @@ +{ + "git_reference": { + "type": "string", + "mandatory": false + }, + "directory": { + "type": "string", + "mandatory": false + }, + "user": { + "type": "string", + "mandatory": false + }, + "title": { + "type": "string", + "mandatory": false + }, + "backend_scheme": { + "type": "string", + "mandatory": false + }, + "backend_host": { + "type": "string", + "mandatory": false + }, + "backend_port": { + "type": "string", + "mandatory": false + }, + "backend_path_base": { + "type": "string", + "mandatory": false + } +}