- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control. - Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities. - Created .gitmodules to include OpenZeppelin contracts as a submodule. - Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment. - Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks. - Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring. - Created scripts for resource import and usage validation across non-US regions. - Added tests for CCIP error handling and integration to ensure robust functionality. - Included various new files and directories for the orchestration portal and deployment scripts.
71 lines
1.8 KiB
HCL
71 lines
1.8 KiB
HCL
# Multi-Cloud Environment Configuration Loader
|
|
# Reads from config/environments.yaml and creates Terraform data structures
|
|
|
|
locals {
|
|
# Load environments configuration
|
|
environments_file = yamldecode(file("${path.module}/../../config/environments.yaml"))
|
|
|
|
# Extract environments list
|
|
environments = local.environments_file.environments
|
|
|
|
# Filter enabled environments only
|
|
enabled_environments = {
|
|
for env in local.environments : env.name => env
|
|
if env.enabled == true
|
|
}
|
|
|
|
# Separate by role
|
|
admin_environments = {
|
|
for name, env in local.enabled_environments : name => env
|
|
if env.role == "admin"
|
|
}
|
|
|
|
workload_environments = {
|
|
for name, env in local.enabled_environments : name => env
|
|
if env.role == "workload"
|
|
}
|
|
|
|
# Group by provider
|
|
environments_by_provider = {
|
|
for provider in distinct([for env in local.enabled_environments : env.provider]) : provider => {
|
|
for name, env in local.enabled_environments : name => env
|
|
if env.provider == provider
|
|
}
|
|
}
|
|
|
|
# Global configuration
|
|
global_config = local.environments_file.global
|
|
}
|
|
|
|
# Outputs for debugging and other modules
|
|
output "environments" {
|
|
value = local.enabled_environments
|
|
description = "All enabled environments"
|
|
sensitive = false
|
|
}
|
|
|
|
output "admin_environments" {
|
|
value = local.admin_environments
|
|
description = "Admin/control plane environments"
|
|
sensitive = false
|
|
}
|
|
|
|
output "workload_environments" {
|
|
value = local.workload_environments
|
|
description = "Workload environments"
|
|
sensitive = false
|
|
}
|
|
|
|
output "environments_by_provider" {
|
|
value = local.environments_by_provider
|
|
description = "Environments grouped by cloud provider"
|
|
sensitive = false
|
|
}
|
|
|
|
output "global_config" {
|
|
value = local.global_config
|
|
description = "Global configuration settings"
|
|
sensitive = false
|
|
}
|
|
|