Files
smom-dbis-138/terraform/multi-cloud/providers.tf
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- 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.
2025-12-12 14:57:48 -08:00

128 lines
2.9 KiB
HCL

# Multi-Cloud Provider Configuration
# Configures all cloud providers based on enabled environments
terraform {
required_version = ">= 1.0"
required_providers {
# Azure
azurerm = {
source = "hashicorp/azurerm"
version = "~> 3.0"
}
# AWS
aws = {
source = "hashicorp/aws"
version = "~> 5.0"
}
# Google Cloud
google = {
source = "hashicorp/google"
version = "~> 5.0"
}
# IBM Cloud
ibm = {
source = "IBM-Cloud/ibm"
version = "~> 1.0"
}
# Oracle Cloud
oci = {
source = "oracle/oci"
version = "~> 5.0"
}
# Kubernetes (for all providers)
kubernetes = {
source = "hashicorp/kubernetes"
version = "~> 2.0"
}
# Helm
helm = {
source = "hashicorp/helm"
version = "~> 2.0"
}
# vSphere (for on-prem HCI)
vsphere = {
source = "hashicorp/vsphere"
version = "~> 2.0"
}
# Azure Arc (for hybrid management)
azapi = {
source = "Azure/azapi"
version = "~> 1.0"
}
}
}
# Azure Provider Configuration
provider "azurerm" {
features {
resource_group {
prevent_deletion_if_contains_resources = true
}
key_vault {
purge_soft_delete_on_destroy = false
recover_soft_deleted_key_vaults = true
}
}
# Credentials from environment variables or Azure CLI
# subscription_id = var.azure_subscription_id
# tenant_id = var.azure_tenant_id
}
# AWS Provider Configuration
provider "aws" {
# Credentials from environment variables, AWS CLI, or IAM roles
# access_key = var.aws_access_key_id
# secret_key = var.aws_secret_access_key
# region = var.aws_default_region
}
# Google Cloud Provider Configuration
provider "google" {
# Credentials from environment variable GOOGLE_APPLICATION_CREDENTIALS
# project = var.gcp_project_id
# region = var.gcp_default_region
}
# IBM Cloud Provider Configuration
provider "ibm" {
# Credentials from environment variables
# ibmcloud_api_key = var.ibm_api_key
# region = var.ibm_default_region
}
# Oracle Cloud Provider Configuration
provider "oci" {
# Credentials from OCI config file or environment variables
# tenancy_ocid = var.oci_tenancy_ocid
# user_ocid = var.oci_user_ocid
# fingerprint = var.oci_fingerprint
# private_key_path = var.oci_private_key_path
# region = var.oci_default_region
}
# vSphere Provider Configuration (for on-prem HCI)
provider "vsphere" {
# Configuration per environment
# user = var.vsphere_user
# password = var.vsphere_password
# vsphere_server = var.vsphere_server
# allow_unverified_ssl = true
}
# Kubernetes Provider (configured per environment)
# This will be configured dynamically based on the environment
# Helm Provider (configured per environment)
# This will be configured dynamically based on the environment