Huge role refactoring/cleanup. Other commits will propably follow. Because some bugs will exist. Still important for longrun and also for auto docs/help/slideshow generation

This commit is contained in:
2025-07-08 23:43:13 +02:00
parent 6b87a049d4
commit 563d5fd528
1242 changed files with 2301 additions and 1355 deletions

View File

@@ -0,0 +1,32 @@
# Presentation
## Description
This **CyMaIS Presentation** is a powerful tool designed for showcasing the CyMaIS platform to various audiences, including **Administrators**, **Developers**, **End-Users**, **Businesses**, and **Investors**. The presentation leverages **Reveal.js** to create an interactive, engaging, and fully containerized experience that can be easily deployed with Docker.
This role automates the process of setting up and running the CyMaIS presentation in a Docker container, ensuring a reproducible and isolated environment for displaying the content.
## Overview
The **CyMaIS Presentation** role automates the setup of an environment using Docker, providing a seamless process for pulling your source repository, building the presentation, and serving the slides through a lightweight HTTP server. It uses **[Reveal.js](https://revealjs.com/)** for building and serving the presentation slides and can be deployed with **Kevin's Package Manager**.
### Features
- **Fully Automated Setup**: The role handles all tasks, including pulling the source repository, building the Docker image, and serving the presentation through a web server.
- **Dockerized Environment**: The entire process is contained within Docker, ensuring consistent builds and easy deployment.
- **Interactive Slides**: The presentation is built with **Reveal.js**, allowing for interactive slides with advanced features like fragments, transitions, and more.
- **Customizable**: Easily configurable to point to your own source code or documentation.
## Further Resources
For more information about the **CyMaIS Presentation**, check out the GitHub repository: [CyMaIS Presentation](https://github.com/kevinveenbirkenbach/cymais-presentation)
For more about **Reveal.js**, visit: [Reveal.js](https://revealjs.com/)
## License 📄
This project is licensed under the **CyMaIS NonCommercial License (CNCL)** - see the [LICENSE](LICENSE) file for details.
---
For additional details about CyMaIS, visit: [cymais.cloud](https://cymais.cloud)

View File

@@ -0,0 +1,28 @@
galaxy_info:
author: "Kevin Veen-Birkenbach"
description: "This Presentation Software is a powerful tool designed for showcasing the CyMaIS platform to various audiences, including Administrators, Developers, End-Users, Businesses, and Investors."
license: "CyMaIS NonCommercial License (CNCL)"
license_url: "https://s.veen.world/cncl"
company: |
Kevin Veen-Birkenbach
Consulting & Coaching Solutions
https://www.veen.world
min_ansible_version: "2.9"
platforms:
- name: Docker
versions:
- all
- name: Linux
versions:
- all
galaxy_tags:
- presentation
- revealjs
- docker
- automation
- deployment
repository: "https://github.com/kevinveenbirkenbach/cymais-presentation"
issue_tracker_url: "https://s.veen.world/cymaisissues"
documentation: "https://s.veen.world/cymais"
logo:
class: "fas fa-chalkboard-teacher"

View File

@@ -0,0 +1,31 @@
---
- name: "pkgmgr install"
include_role:
name: pkgmgr-install
vars:
package_name: cymais-presentation
# package_notify: docker compose up
- name: Get path of cymais-presentation using pkgmgr
command: pkgmgr path cymais-presentation
register: path_cymais_presentation_output
- name: Get path of cymais using pkgmgrpull docker repository
command: pkgmgr path cymais
register: path_cymais_output
- name: "include docker-compose role"
include_role:
name: docker-compose
- name: "include role webserver-proxy-domain for {{application_id}}"
include_role:
name: webserver-proxy-domain
vars:
domain: "{{ domains | get_domain(application_id) }}"
http_port: "{{ ports.localhost.http[application_id] }}"
# Hack because it wasn't possible to fix an handler bug in pkgmgr install
- name: „Trigger“ docker compose up
command: /bin/true
notify: docker compose up

View File

@@ -0,0 +1,15 @@
{% include 'roles/docker-compose/templates/base.yml.j2' %}
cymais-presentation:
build:
context: {{ path_cymais_presentation_output.stdout }}
dockerfile: {{ path_cymais_presentation_output.stdout }}/Dockerfile
ports:
- "127.0.0.1:{{ports.localhost.http[application_id]}}:5000"
volumes:
- {{ path_cymais_presentation_output.stdout }}:/app
- {{ path_cymais_output.stdout }}:/source
{% include 'roles/docker-container/templates/base.yml.j2' %}
{% include 'roles/docker-container/templates/networks.yml.j2' %}
{% include 'roles/docker-compose/templates/networks.yml.j2' %}

View File

@@ -0,0 +1 @@
FLASK_DEBUG={{ enable_debug }}

View File

@@ -0,0 +1,26 @@
features:
matomo: true
css: true
portfolio_iframe: true
csp:
whitelist:
script-src-elem:
- https://cdnjs.cloudflare.com
- https://code.jquery.com
- https://cdn.jsdelivr.net
style-src:
- https://cdnjs.cloudflare.com
- https://cdn.jsdelivr.net
font-src:
- https://cdnjs.cloudflare.com
flags:
style-src:
unsafe-inline: true
script-src:
unsafe-eval: true
script-src-elem:
unsafe-inline: true
domains:
canonical:
- "slides.{{ primary_domain }}"

View File

@@ -0,0 +1 @@
application_id: "presentation"