diff --git a/README.md b/README.md
index 6f399110..6123f4a5 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,7 @@ Welcome to CyMaIS (Cyber Master Infrastructure Solution), a transformative tool
At its core, CyMaIS leverages the power of Docker, Linux, and Ansible to offer a streamlined, automated solution for deploying and managing IT systems.
-
+
Whether you're a small startup, a growing enterprise, or an individual seeking efficient IT management, CyMaIS provides a comprehensive suite of tools that cater to a wide range of needs. From simple system setups to complex server configurations and end-user PC management, CyMaIS simplifies the entire process.
diff --git a/images/favicon.ico b/assets/img/favicon.ico
similarity index 100%
rename from images/favicon.ico
rename to assets/img/favicon.ico
diff --git a/images/logo.png b/assets/img/logo.png
similarity index 100%
rename from images/logo.png
rename to assets/img/logo.png
diff --git a/group_vars/all/07_applications.yml b/group_vars/all/07_applications.yml
index eaff70a6..e4e8956e 100644
--- a/group_vars/all/07_applications.yml
+++ b/group_vars/all/07_applications.yml
@@ -20,19 +20,24 @@ defaults_applications:
## Akaunting
akaunting:
- version: "latest"
- company_name: "{{primary_domain}}"
- company_email: "{{users.administrator.email}}"
- setup_admin_email: "{{users.administrator.email}}"
+ version: "latest"
+ company_name: "{{primary_domain}}"
+ company_email: "{{users.administrator.email}}"
+ setup_admin_email: "{{users.administrator.email}}"
database:
central_storage: True
matomo_tracking_enabled: "{{matomo_tracking_enabled_default}}" # Enables\Disables Matomo Tracking
css_enabled: "{{css_enabled_default}}" # Enables\Disables Global CSS Style
landingpage_iframe_enabled: "{{landingpage_iframe_enabled_default}}" # Enables\Disables the possibility to embed this on landing page via iframe
+ ## Assets Server
+ assets_server:
+ source_directory: "{{ playbook_dir }}/assets" # Directory from which the assets will be copied
+ url: "https://{{domains.file_server}}/assets}}" # Public address of the assets directory
+
## Attendize
attendize:
- version: "latest"
+ version: "latest"
database:
central_storage: True
matomo_tracking_enabled: "{{matomo_tracking_enabled_default}}" # Enables\Disables Matomo Tracking
@@ -162,12 +167,6 @@ defaults_applications:
css_enabled: "{{css_enabled_default}}" # Enables\Disables Global CSS Style
landingpage_iframe_enabled: "true" # Landingpage should be embeded in portfolio
- ## Imprint
- imprint:
- matomo_tracking_enabled: "{{matomo_tracking_enabled_default}}" # Enables\Disables Matomo Tracking
- css_enabled: "{{css_enabled_default}}" # Enables\Disables Global CSS Style
- landingpage_iframe_enabled: "true" # Landingpage should be embeded in portfolio
-
## Keycloak
keycloak:
version: "latest"
@@ -316,12 +315,12 @@ defaults_applications:
## Moodle
moodle:
- site_titel: "Global Learning Academy on {{primary_domain}}"
+ site_titel: "Global Learning Academy on {{primary_domain}}"
users:
administrator:
- username: "{{users.administrator.username}}"
- email: "{{users.administrator.email}}"
- version: "latest"
+ username: "{{users.administrator.username}}"
+ email: "{{users.administrator.email}}"
+ version: "latest"
database:
central_storage: True # Activate Central Database Storage
matomo_tracking_enabled: "{{matomo_tracking_enabled_default}}" # Enables\Disables Matomo Tracking
diff --git a/group_vars/all/14_service_provider.yml b/group_vars/all/14_service_provider.yml
index 5abbd61e..87b8c178 100644
--- a/group_vars/all/14_service_provider.yml
+++ b/group_vars/all/14_service_provider.yml
@@ -9,12 +9,12 @@ defaults_service_provider:
city: "Cybertown"
postal_code: "00001"
country: "Nexusland"
- logo: https://cloud.veen.world/s/logo_cymais_512x512/download
+ logo: "{{applications.assets_server.url}}/logo.png"
platform:
titel: "CyMaIS Plattform Demo"
subtitel: "Demo of the Cyber Master Infrastructur Solution Plattform"
- logo: https://cloud.veen.world/s/logo_cymais_512x512/download
- favicon: https://cloud.veen.world/s/veen_world_favicon/download
+ logo: "{{applications.assets_server.url}}/logo.png"
+ favicon: "{{applications.assets_server.url}}/favicon.ico"
contact:
bluesky: "{{ '@' ~ users.administrator.username ~ '.' ~ domains.bluesky_api if 'bluesky' in group_names else '' }}"
email: "contact@{{ primary_domain }}"
diff --git a/roles/corporate-identity/meta/main.yml b/roles/corporate-identity/meta/main.yml
index db69584e..c2443b05 100644
--- a/roles/corporate-identity/meta/main.yml
+++ b/roles/corporate-identity/meta/main.yml
@@ -1,3 +1,4 @@
dependencies:
-- nginx-serve-html-legal
+- nginx-serve-legal
+- nginx-serve-assets
- docker-portfolio
diff --git a/roles/nginx-serve-html-legal/README.md b/roles/nginx-serve-assets/README.md
similarity index 100%
rename from roles/nginx-serve-html-legal/README.md
rename to roles/nginx-serve-assets/README.md
diff --git a/roles/nginx-serve-assets/meta/main.yml b/roles/nginx-serve-assets/meta/main.yml
new file mode 100644
index 00000000..4c54a229
--- /dev/null
+++ b/roles/nginx-serve-assets/meta/main.yml
@@ -0,0 +1,2 @@
+dependencies:
+- nginx-serve-files
diff --git a/roles/nginx-serve-assets/tasks/main.yml b/roles/nginx-serve-assets/tasks/main.yml
new file mode 100644
index 00000000..79ecbb29
--- /dev/null
+++ b/roles/nginx-serve-assets/tasks/main.yml
@@ -0,0 +1,7 @@
+---
+- name: "Recursively copy files from local '{{ source_directory }}' to '{{ target_directory }}'"
+ ansible.builtin.copy:
+ src: "{{ source_directory }}"
+ dest: "{{ target_directory }}"
+ owner: "{{ nginx.user }}"
+ group: "{{ nginx.user }}"
diff --git a/roles/nginx-serve-assets/vars/main.yml b/roles/nginx-serve-assets/vars/main.yml
new file mode 100644
index 00000000..f826c784
--- /dev/null
+++ b/roles/nginx-serve-assets/vars/main.yml
@@ -0,0 +1,3 @@
+application_id: "assets_server" # Application identifier
+source_directory: "{{ applications[application_id].source_directory }}/" # Source directory from which the files are coming from
+target_directory: "{{ nginx.directories.data.files }}assets" # Directory to which the files will be copied
diff --git a/roles/nginx-serve-html-legal/tasks/main.yml b/roles/nginx-serve-html-legal/tasks/main.yml
deleted file mode 100644
index 9fc0da90..00000000
--- a/roles/nginx-serve-html-legal/tasks/main.yml
+++ /dev/null
@@ -1,5 +0,0 @@
----
-- name: copy imprint.html
- template:
- src: "imprint.html.j2"
- dest: "{{nginx.directories.data.html}}imprint.html"
\ No newline at end of file
diff --git a/roles/nginx-serve-html-legal/vars/main.yml b/roles/nginx-serve-html-legal/vars/main.yml
deleted file mode 100644
index d68c2ec5..00000000
--- a/roles/nginx-serve-html-legal/vars/main.yml
+++ /dev/null
@@ -1 +0,0 @@
-application_id: "imprint" # Application identifier
\ No newline at end of file
diff --git a/roles/nginx-serve-legal/README.md b/roles/nginx-serve-legal/README.md
new file mode 100644
index 00000000..1a752fa0
--- /dev/null
+++ b/roles/nginx-serve-legal/README.md
@@ -0,0 +1,6 @@
+# Nginx Homepage Role
+
+This Ansible role configures an Nginx server to serve a static homepage. It handles domain configuration, SSL certificate retrieval with Let's Encrypt.
+
+## Author Information
+This role was created in 2023 by [Kevin Veen Birkenbach](https://www.veen.world/).
\ No newline at end of file
diff --git a/roles/nginx-serve-html-legal/meta/main.yml b/roles/nginx-serve-legal/meta/main.yml
similarity index 100%
rename from roles/nginx-serve-html-legal/meta/main.yml
rename to roles/nginx-serve-legal/meta/main.yml
diff --git a/roles/nginx-serve-legal/tasks/main.yml b/roles/nginx-serve-legal/tasks/main.yml
new file mode 100644
index 00000000..85b776e8
--- /dev/null
+++ b/roles/nginx-serve-legal/tasks/main.yml
@@ -0,0 +1,7 @@
+---
+- name: copy imprint.html
+ template:
+ src: "imprint.html.j2"
+ dest: "{{nginx.directories.data.html}}imprint.html"
+ owner: "{{nginx.user}}"
+ group: "{{nginx.user}}"
\ No newline at end of file
diff --git a/roles/nginx-serve-html-legal/templates/imprint.html.j2 b/roles/nginx-serve-legal/templates/imprint.html.j2
similarity index 100%
rename from roles/nginx-serve-html-legal/templates/imprint.html.j2
rename to roles/nginx-serve-legal/templates/imprint.html.j2
diff --git a/roles/nginx-serve-legal/vars/main.yml b/roles/nginx-serve-legal/vars/main.yml
new file mode 100644
index 00000000..b132884a
--- /dev/null
+++ b/roles/nginx-serve-legal/vars/main.yml
@@ -0,0 +1 @@
+application_id: "legal" # Application identifier
\ No newline at end of file
diff --git a/sphinx/.gitignore b/sphinx/.gitignore
index 413092d1..e8524b9d 100644
--- a/sphinx/.gitignore
+++ b/sphinx/.gitignore
@@ -1 +1 @@
-_static/img/*
\ No newline at end of file
+assets/img/*
\ No newline at end of file
diff --git a/sphinx/Makefile b/sphinx/Makefile
index af87d93d..c9601e22 100644
--- a/sphinx/Makefile
+++ b/sphinx/Makefile
@@ -11,8 +11,8 @@ SPHINX_BUILD_DIR ?= ../docs
# Copy images before running any Sphinx command (except for help)
copy-images:
- @echo "Copying images from ../images/ to ./_static/img/..."
- cp -r ../images/* ./_static/img/
+ @echo "Copying images from ../images/ to ./assets/img/..."
+ cp -r ../assets/img/* ./assets/img/
# "help" target does not copy images
help:
diff --git a/sphinx/_static/js/current-nav.js b/sphinx/assets/js/current-nav.js
similarity index 100%
rename from sphinx/_static/js/current-nav.js
rename to sphinx/assets/js/current-nav.js
diff --git a/sphinx/conf.py b/sphinx/conf.py
index 69381b6c..63c60dea 100644
--- a/sphinx/conf.py
+++ b/sphinx/conf.py
@@ -22,7 +22,7 @@ exclude_patterns = ['docs', 'venv', 'venv/**']
# -- Options for HTML output -------------------------------------------------
html_theme = 'sphinxawesome_theme'
-html_static_path = ['_static']
+html_static_path = ['assets']
html_sidebars = {
'**': [
@@ -31,8 +31,8 @@ html_sidebars = {
]
}
-cymais_logo = "_static/img/logo.png"
-html_favicon = "_static/img/favicon.ico"
+cymais_logo = "assets/img/logo.png"
+html_favicon = "assets/img/favicon.ico"
html_theme_options = {
"show_prev_next": False,
diff --git a/sphinx/templates/logo.html b/sphinx/templates/logo.html
index 78e5907f..45857305 100644
--- a/sphinx/templates/logo.html
+++ b/sphinx/templates/logo.html
@@ -1,5 +1,5 @@