Implemented assets server

This commit is contained in:
Kevin Veen-Birkenbach 2025-03-20 03:47:12 +01:00
parent 836a3e0238
commit 87ca1ccc11
No known key found for this signature in database
GPG Key ID: 44D8F11FD62F878E
23 changed files with 54 additions and 34 deletions

View File

@ -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.
<img src="https://cybermaster.space/wp-content/uploads/sites/7/2023/12/logo_cymais.png" width="300" style="float: right; margin-left: 10px;">
<img src="assets/img/logo.png" width="300" style="float: right; margin-left: 10px;">
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.

View File

Before

Width:  |  Height:  |  Size: 162 KiB

After

Width:  |  Height:  |  Size: 162 KiB

View File

Before

Width:  |  Height:  |  Size: 286 KiB

After

Width:  |  Height:  |  Size: 286 KiB

View File

@ -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

View File

@ -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 }}"

View File

@ -1,3 +1,4 @@
dependencies:
- nginx-serve-html-legal
- nginx-serve-legal
- nginx-serve-assets
- docker-portfolio

View File

@ -0,0 +1,2 @@
dependencies:
- nginx-serve-files

View File

@ -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 }}"

View File

@ -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

View File

@ -1,5 +0,0 @@
---
- name: copy imprint.html
template:
src: "imprint.html.j2"
dest: "{{nginx.directories.data.html}}imprint.html"

View File

@ -1 +0,0 @@
application_id: "imprint" # Application identifier

View File

@ -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/).

View File

@ -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}}"

View File

@ -0,0 +1 @@
application_id: "legal" # Application identifier

2
sphinx/.gitignore vendored
View File

@ -1 +1 @@
_static/img/*
assets/img/*

View File

@ -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:

View File

@ -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,

View File

@ -1,5 +1,5 @@
<div class="sidebar-logo" style="text-align: center; margin-bottom: 1em;">
<img src="{{ pathto("_static/img/logo_cymais.png", 1) }}" alt="Logo" style="max-width: 100%;">
<img src="{{ pathto("assets/img/logo_cymais.png", 1) }}" alt="Logo" style="max-width: 100%;">
</div>

View File

@ -61,5 +61,5 @@
{% endif %}
</div>
{% endif %}
<script src="{{ pathto('_static/js/current-nav.js', 1) }}"></script>
<script src="{{ pathto('assets/js/current-nav.js', 1) }}"></script>