Commit 339f8de0 authored by Sergio Gimenez's avatar Sergio Gimenez
Browse files

Merge branch 'refactor-organize-variables' into 'master'

Refactor organize variables

See merge request areas/software-networks/operator-platform/op-automation!8
parents f2e3406a eab9f747
Loading
Loading
Loading
Loading
+0 −21
Original line number Diff line number Diff line
---
# ==========================================
# Federation Manager Configuration
# ==========================================
# Federation Manager is a core OOP module that enables federation and coordination
# between multiple Operator Platform instances. It manages cross-platform service
# discovery, resource sharing, and inter-OOP communication.
#
# Dependencies: Keycloak (authentication) and MongoDB (state storage)
# Includes both local and remote instances for testing federation scenarios.

# Local Federation Manager NodePorts
federation_manager_nodeport: 30989
keycloak_nodeport: 30082
mongodb_nodeport: 30017

# Remote Federation Manager NodePorts
# Used to simulate a partner operator platform for testing federation
remote_federation_manager_nodeport: 30990
remote_keycloak_nodeport: 30083
remote_mongodb_nodeport: 30018
+0 −9
Original line number Diff line number Diff line
---
# ==========================================
# lite2edge Configuration
# ==========================================
# lite2edge is an edge cloud platform (similar to i2edge) that provides
# lightweight edge computing capabilities and service orchestration.

# Service NodePort
lite2edge_nodeport: 30081
+23 −5
Original line number Diff line number Diff line
@@ -8,16 +8,16 @@ This directory contains Ansible group variables organized by component for bette
group_vars/
└── all/                           # Variables for the 'all' group (applies to all hosts)
    ├── all.yml                   # Global/shared variables
    ├── kind_cluster.yml          # Kind cluster configuration
    ├── k8s_cluster.yml           # K8s cluster configuration (distro-agnostic)
    ├── monitoring.yml            # Prometheus/Grafana monitoring stack
    ├── node_feature_discovery.yml # NFD configuration
    ├── federation_manager.yml    # Federation Manager NodePorts
    ├── i2edge.yml                # i2edge edge cloud platform
    ├── lite2edge.yml             # lite2edge edge cloud platform
    ├── lite2edge.yml             # lite2edge + edge_orchestrator config
    ├── srm.yml                   # SRM (Service Resource Manager) - OOP module
    ├── oeg.yml                   # OEG (Open Exposure Gateway) - OOP module
    ├── artefact_manager.yml      # Artefact Manager - OOP module
    ├── zot.yml                   # Zot container registry
    ├── zot.yml                   # Zot + artifact_registry config
    └── homer.yml                 # Homer dashboard
```

@@ -25,6 +25,24 @@ group_vars/

Ansible automatically loads **all** `.yml` files from `group_vars/<group_name>/` for hosts in that group. Since all our hosts are in the `all` group, these variables are available everywhere.

## Pluggable Components

The platform supports pluggable implementations for several components:

### Kubernetes Distribution (`k8s_distribution`)
- **kind** (default): Deploy Kind cluster
- **existing**: Use existing cluster (skip provisioning)

### Artifact Registry (`artifact_registry`)
- **zot** (default): Deploy Zot OCI registry
- **harbor**: Deploy Harbor registry (not yet implemented)
- **none**: Skip artifact registry deployment

### EdgeCloud Platform (`edgecloud_platform`)
- **lite2edge** (default): Deploy lite2edge platform
- **i2edge**: Deploy i2edge platform
- **none**: Skip edgecloud platform deployment

## File Organization

### `all.yml` - Global Variables Only
@@ -41,10 +59,10 @@ Contains **only** truly global variables:

| File | Purpose | Type |
|------|---------|------|
| `kind_cluster.yml` | Kind cluster settings, K8s version, port mappings | Kubernetes Infrastructure |
| `k8s_cluster.yml` | K8s distribution, cluster settings, port mappings | Kubernetes Infrastructure |
| `monitoring.yml` | Prometheus, Grafana, Helm configuration | Monitoring Infrastructure |
| `node_feature_discovery.yml` | NFD version, namespaces, custom node labels | Node Management |
| `zot.yml` | Container registry | Artefact Registry Infrastructure |
| `zot.yml` | Artifact registry type, Zot configuration | Artifact Registry Infrastructure |

### OOP Core Modules

+3 −3
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
# This file contains ONLY global/shared variables used across all components.
# Component-specific variables are organized in separate files:
#
#   - kind_cluster.yml          : Kind cluster configuration and port mappings
#   - k8s_cluster.yml            : K8s cluster configuration (distro-agnostic)
#   - monitoring.yml            : Prometheus/Grafana monitoring stack
#   - node_feature_discovery.yml: NFD configuration and custom labels
#   - i2edge.yml                : i2edge application settings
@@ -25,8 +25,8 @@ i2edge_base_path: /home/sergio/i2cat/OperatorPlatform/i2edge
# ==========================================
# Docker Registry Configuration
# ==========================================
docker_registry: "gitlab.i2cat.net:5050"
docker_registry_path: "areas/software-networks/operator-platform"
# Registry host for Docker authentication (host:port only)
docker_registry_host: "gitlab.i2cat.net:5050"
docker_registry_username: "oauth2"

# ==========================================
Loading