- 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.
128 lines
2.9 KiB
HCL
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
|
|
|