Renamed portfolio to portwebui

This commit is contained in:
Kevin Veen-Birkenbach 2025-07-12 18:41:13 +02:00
parent f15f498c1d
commit 0fd5cdb5d6
No known key found for this signature in database
GPG Key ID: 44D8F11FD62F878E
26 changed files with 46 additions and 46 deletions

View File

@ -26,4 +26,4 @@ galaxy_info:
dependencies: dependencies:
- web-svc-legal - web-svc-legal
- web-svc-asset - web-svc-asset
- web-app-portfolio - web-app-port-ui

View File

@ -0,0 +1,34 @@
# PortWebUI
## Description
A lightweight, Docker-powered UI framework that offers CyMaIS users a unified interface to access all their applications in one intuitive dashboard. 🚀
## Overview
Tailored for creative professionals and developers, this role streamlines the process of setting up a portfolio site. It automates tasks such as Docker container configuration, dynamic routing via Nginx, and repository integration, so you can concentrate on perfecting your content and design. Enjoy a responsive layout and easy-to-modify YAML files that let you rapidly update your online presence without deep technical intervention.
## Purpose
The purpose of tthis role is to simplify the deployment and management of a personal or professional portfolio. By focusing on usability and a clean presentation, the role helps you:
- Quickly launch a professional-looking website.
- Customize and update your portfolio content effortlessly.
- Integrate seamlessly with complementary roles for Docker Compose and web server management.
- Reduce manual configuration and maintenance tasks.
## Features
- **Unified Navigation**: Central menu bar with dynamic categories for all registered applications.
- **Customizable Tiles**: Showcase applications with title, description, and icons—fully configurable via YAML.
- **Responsive Design**: Optimized for desktop, tablet & mobile, built on Bootstrap.
- **Interactive Icons**: Automatic integration of Simple Icons for popular brands and tools.
- **Seamless IFrame Embedding**: Launch apps directly within the UI or open in new tabs.
- **YAML-Driven Configuration**: Define all content & structure easily in `config.yaml`.
- **Fast Access**: Automatic cache management ensures lightning-fast load times.
## Credits 📝
Developed and maintained by **Kevin Veen-Birkenbach**.
Learn more at [www.veen.world](https://www.veen.world)
Part of the [CyMaIS Project](https://github.com/kevinveenbirkenbach/cymais)
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)

View File

@ -23,4 +23,4 @@ galaxy_info:
issue_tracker_url: "https://github.com/kevinveenbirkenbach/portfolio/issues" issue_tracker_url: "https://github.com/kevinveenbirkenbach/portfolio/issues"
documentation: "https://github.com/kevinveenbirkenbach/portfolio#readme" documentation: "https://github.com/kevinveenbirkenbach/portfolio#readme"
logo: logo:
class: "fa-solid fa-briefcase" class: "fa fa-th-large"

View File

@ -1,4 +1,4 @@
application_id: "web-app-portfolio" application_id: "web-app-port-ui"
docker_repository_address: "https://github.com/kevinveenbirkenbach/portfolio" docker_repository_address: "https://github.com/kevinveenbirkenbach/port-web-ui"
config_inventory_path: "{{ inventory_dir }}/files/{{ inventory_hostname }}/docker/portfolio/config.yaml.j2" config_inventory_path: "{{ inventory_dir }}/files/{{ inventory_hostname }}/docker/web-app-port-ui/config.yaml.j2"
docker_repository: true docker_repository: true

View File

@ -1,34 +0,0 @@
# Portfolio
## Description
This Ansible role deploys and manages a Flask-based [portfolio application](https://github.com/kevinveenbirkenbach/portfolio) in a Docker container. It provides a user-friendly and customizable way to showcase your projects, services, or creative work online. The role leverages Docker, Docker Compose, and integrated web server configurations to ensure a smooth deployment experience.
## Overview
Tailored for creative professionals and developers, this role streamlines the process of setting up a portfolio site. It automates tasks such as Docker container configuration, dynamic routing via Nginx, and repository integration, so you can concentrate on perfecting your content and design. Enjoy a responsive layout and easy-to-modify YAML files that let you rapidly update your online presence without deep technical intervention.
## Purpose
The purpose of the Docker-Portfolio role is to simplify the deployment and management of a personal or professional portfolio. By focusing on usability and a clean presentation, the role helps you:
- Quickly launch a professional-looking website.
- Customize and update your portfolio content effortlessly.
- Integrate seamlessly with complementary roles for Docker Compose and web server management.
- Reduce manual configuration and maintenance tasks.
## Features
- **Flask-Based Portfolio App:** Deploy a modern portfolio application designed to highlight your work.
- **Containerized Deployment:** Uses Docker and Docker Compose for easy, isolated, and reproducible deployment.
- **Customizable Configuration:** Adjust the content and appearance through simple YAML configuration files.
- **Responsive Design:** Optimized for devices of any size, ensuring your portfolio always looks great.
- **Integrated Routing:** Works alongside Nginx-domain and repository setup roles to provide reliable domain routing and version control.
- **Automated Updates:** Automatically re-deploys changes when configuration files are updated, keeping your portfolio up-to-date.
## Credits 📝
Developed and maintained by **Kevin Veen-Birkenbach**.
Learn more at [www.veen.world](https://www.veen.world)
Part of the [CyMaIS Project](https://github.com/kevinveenbirkenbach/cymais)
License: [CyMaIS NonCommercial License (CNCL)](https://s.veen.world/cncl)

View File

@ -1,6 +1,6 @@
# Unit Tests # Unit Tests
This directory contains unit tests for various custom components in the project, such as the custom lookup plugin `docker_cards` used in the `web-app-portfolio` role. This directory contains unit tests for various custom components in the project, such as the custom lookup plugin `docker_cards` used in the `web-app-port-ui` role.
## Overview ## Overview
@ -31,7 +31,7 @@ You can run the tests using one of the following methods:
## How It Works ## How It Works
- **Setup:** - **Setup:**
The test script creates a temporary directory to simulate your roles folder. It then creates a sample role (`web-app-portfolio`) with a `README.md` file (containing a header for the title) and a `meta/main.yml` file (with the required metadata). The test script creates a temporary directory to simulate your roles folder. It then creates a sample role (`web-app-port-ui`) with a `README.md` file (containing a header for the title) and a `meta/main.yml` file (with the required metadata).
- **Execution:** - **Execution:**
Dummy variable values for `domains` and `applications` are provided (these are the variables the lookup plugin expects). The lookup plugin is then run, which processes the sample role and returns the card information. Dummy variable values for `domains` and `applications` are provided (these are the variables the lookup plugin expects). The lookup plugin is then run, which processes the sample role and returns the card information.

View File

@ -22,7 +22,7 @@ class TestApplicationsIfGroupAndDeps(unittest.TestCase):
'web-svc-legal': {}, 'web-svc-legal': {},
'web-svc-file': {}, 'web-svc-file': {},
'web-svc-asset': {}, 'web-svc-asset': {},
'web-app-portfolio': {}, 'web-app-port-ui': {},
'util-srv-corporate-identity': {}, 'util-srv-corporate-identity': {},
} }

View File

@ -4,8 +4,8 @@ import tempfile
import shutil import shutil
import unittest import unittest
# Adjust the PYTHONPATH to include the lookup_plugins folder from the web-app-portfolio role. # Adjust the PYTHONPATH to include the lookup_plugins folder from the web-app-port-ui role.
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '../../../roles/web-app-portfolio/lookup_plugins')) sys.path.insert(0, os.path.join(os.path.dirname(__file__), '../../../roles/web-app-port-ui/lookup_plugins'))
from docker_cards import LookupModule from docker_cards import LookupModule
@ -13,8 +13,8 @@ class TestDockerCardsLookup(unittest.TestCase):
def setUp(self): def setUp(self):
# Create a temporary directory to simulate the roles directory. # Create a temporary directory to simulate the roles directory.
self.test_roles_dir = tempfile.mkdtemp(prefix="test_roles_") self.test_roles_dir = tempfile.mkdtemp(prefix="test_roles_")
# Create a sample role "web-app-portfolio". # Create a sample role "web-app-port-ui".
self.role_name = "web-app-portfolio" self.role_name = "web-app-port-ui"
self.role_dir = os.path.join(self.test_roles_dir, self.role_name) self.role_dir = os.path.join(self.test_roles_dir, self.role_name)
os.makedirs(os.path.join(self.role_dir, "meta")) os.makedirs(os.path.join(self.role_dir, "meta"))