├── .github └── workflows │ ├── banned_file_changes_pr.yml │ ├── cla.yml │ ├── license_audit.yml │ ├── release-zip-file.yml │ ├── repolinter.yml │ └── sonarcloud.yml ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE.txt ├── README.md ├── SECURITY.md ├── cloud-foundation ├── README.md ├── modules │ ├── cloud-foundation-library │ │ ├── ai-anomaly-detection │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── api-gateway │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── big-data-service │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── data-flow │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── data-flow_private_endpoint │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── data-science │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── data-science_private_endpoint │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── database │ │ │ ├── adb │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── adw │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── adw_data_safe │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── adw_ecpus │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── adw_ocpus │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── atp │ │ │ │ ├── atp.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── dbcs │ │ │ │ ├── dbcs.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ └── oci_external_databases │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ ├── datacatalog │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── datacatalog_lakehouse │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── datacatalog_no_connection │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── datacatalog_private_endpoint │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── dns │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── exacs │ │ │ ├── cloud_vm_cluster │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── database_data_guard_association │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ ├── database_db_home │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ └── exadata_infrastructure │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ ├── fastconnect │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── fss │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── functions │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── golden-gate │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── identity │ │ │ ├── README.md │ │ │ ├── documentation │ │ │ │ ├── identity_module_pattern.drawio │ │ │ │ └── identity_module_pattern.png │ │ │ ├── examples │ │ │ │ ├── basic │ │ │ │ │ ├── main.tf │ │ │ │ │ ├── provider.tf │ │ │ │ │ ├── schema.yaml │ │ │ │ │ └── test_assertions.tf │ │ │ │ ├── complex │ │ │ │ │ ├── main.tf │ │ │ │ │ ├── provider.tf │ │ │ │ │ └── schema.yaml │ │ │ │ ├── devops │ │ │ │ │ ├── main.tf │ │ │ │ │ ├── provider.tf │ │ │ │ │ ├── schema.yaml │ │ │ │ │ └── test_assertions.tf │ │ │ │ └── empty │ │ │ │ │ ├── main.tf │ │ │ │ │ ├── provider.tf │ │ │ │ │ └── schema.yaml │ │ │ └── module │ │ │ │ ├── announcement.tf │ │ │ │ ├── application.tf │ │ │ │ ├── auditor.tf │ │ │ │ ├── compartment_structure.tf │ │ │ │ ├── cost.tf │ │ │ │ ├── custom.tf │ │ │ │ ├── database.tf │ │ │ │ ├── general.tf │ │ │ │ ├── iam.tf │ │ │ │ ├── machine_certificate.tf │ │ │ │ ├── machine_devops.tf │ │ │ │ ├── network.tf │ │ │ │ └── security.tf │ │ ├── instance │ │ │ ├── instance.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── instance_flexible │ │ │ ├── instance.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── instance_with_out_flexible │ │ │ ├── instance.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── instance_with_out_flexible_test │ │ │ ├── instance.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── keygen │ │ │ ├── keygen.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── lb │ │ │ ├── lb.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── lb_no_ssl │ │ │ ├── lb.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── local-peering-gateway │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── mysql_heatwave │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── network-subnet │ │ │ ├── examples │ │ │ │ └── basic │ │ │ │ │ ├── main.tf │ │ │ │ │ ├── provider.tf │ │ │ │ │ └── schema.yaml │ │ │ └── module │ │ │ │ ├── security-list.tf │ │ │ │ ├── subnets.tf │ │ │ │ └── vcn-data.tf │ │ ├── network-vcn-data │ │ │ └── module │ │ │ │ └── vcn-data.tf │ │ ├── network-vcn │ │ │ ├── examples │ │ │ │ └── basic │ │ │ │ │ ├── main.tf │ │ │ │ │ ├── provider.tf │ │ │ │ │ └── schema.yaml │ │ │ └── module │ │ │ │ └── vcn.tf │ │ ├── oac │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oac_private_endpoint │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── object-storage-upload-files │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── object-storage │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oci_artifacts_container_repository │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oci_data_safe │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oci_events │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oci_log_analytics │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oci_logging │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oci_logging_service_connector │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oci_monitoring_alarms │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── oci_notifications │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── odi │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── odi_private_endpoint │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── remote-peering │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── secret-data │ │ │ ├── README.md │ │ │ ├── documentation │ │ │ │ ├── secret_data_module_pattern.drawio │ │ │ │ └── secret_data_module_pattern.png │ │ │ ├── examples │ │ │ │ └── just-secret │ │ │ │ │ ├── main.tf │ │ │ │ │ ├── provider.tf │ │ │ │ │ └── schema.yaml │ │ │ └── module │ │ │ │ └── secret-data.tf │ │ ├── secret │ │ │ ├── README.md │ │ │ ├── documentation │ │ │ │ ├── secret_module_pattern.drawio │ │ │ │ └── secret_module_pattern.png │ │ │ ├── examples │ │ │ │ └── just-secret │ │ │ │ │ ├── main.tf │ │ │ │ │ ├── provider.tf │ │ │ │ │ └── schema.yaml │ │ │ └── module │ │ │ │ └── secret.tf │ │ ├── streaming │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── tagging │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── volume │ │ │ ├── block.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── waf │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ └── web-application-firewall │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ └── oci-cis-landingzone-quickstart │ │ ├── iam │ │ └── iam-dynamic-group │ │ │ ├── init.tf │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── network │ │ ├── drg │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── security │ │ │ ├── dhcp_options.tf │ │ │ ├── main_nsg.tf │ │ │ ├── main_security_list.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ ├── vcn-basic │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ └── vcn-routing │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ │ └── security │ │ ├── bastion │ │ ├── main.tf │ │ ├── outputs.tf │ │ └── variables.tf │ │ └── policies │ │ ├── init.tf │ │ ├── main.tf │ │ └── variables.tf ├── solutions-for-oracle-res-mgr │ ├── Data-platform-data-lakehouse-RM.zip │ ├── Data-platform-data-warehouse-with-e-business-integration-RM.zip │ ├── Data-platform-departmental-data-warehouse-for-line-of-business-RM.zip │ ├── Deploy-Autonomous-Database-and-the-MovieStream-data-sets-for-Oracle-LiveLabs-RM.zip │ ├── Deploy-ChatDB-Autonomous-Database-Select-AI-demonstration-RM.zip │ ├── Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM.zip │ ├── Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM │ │ ├── .gitignore │ │ ├── CONTRIBUTING.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── invoking the scripts.md │ │ ├── locals.tf │ │ ├── main.tf │ │ ├── modules │ │ │ └── cloud-foundation-library │ │ │ │ └── database │ │ │ │ └── adb │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ ├── outputs.tf │ │ ├── provider.tf │ │ ├── provisioners.tf │ │ ├── schema.yaml │ │ ├── scripts │ │ │ ├── init.sql │ │ │ ├── install-apex-app.sql.tmpl │ │ │ ├── install-apex-workspace.sql │ │ │ └── tables.sql.tmpl │ │ └── variables.tf │ ├── Enterprise-data-warehousing-a-predictive-maintenance-example-RM.zip │ ├── GoldenGate-Stream-Analytics-for-production-workloads-Full-Solution-RM.zip │ ├── GoldenGate-Stream-Analytics-for-production-workloads-Small-Footprint-Solution-RM.zip │ ├── Informatica-Secure-Agent-create-a-secure-ready-to-go-complete-data-platform-on-OCI-RM.zip │ ├── Informatica-Secure-AgentCreate-a-ready-to-go-development-data-platform-on-OCI-RM.zip │ ├── Machine-learning-platform-on-Autonomous-Data-Warehouse-RM.zip │ ├── Modern-data-warehousing-a-polyglot-integration-example-RM.zip │ ├── Oracle-MovieStream-RM.zip │ ├── OracleDataModel-Manufacturing-RM.zip │ ├── PublicSector-Crowd_Counting-RM.zip │ ├── RAG-in-a-Box-Easy-RM.zip │ ├── RAG-in-a-Box-Hybrid-RM.zip │ ├── RAG-in-a-Box-Vector-RM.zip │ ├── README.md │ ├── Sam-Workbench-RM.zip │ └── Telco-Asset_Value_Maximization-RM.zip └── solutions │ ├── ATP Deployment │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── provisioner │ │ │ ├── f101.sql │ │ │ ├── file_envs.sh │ │ │ ├── provisioner.tf │ │ │ ├── script_provisioning.sql │ │ │ └── variables.tf │ ├── outputs.tf │ ├── provider.tf │ └── variables.tf │ ├── Data-platform-data-lakehouse │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── functions │ │ └── decoder │ │ │ ├── dockerfile │ │ │ ├── func.py │ │ │ ├── func.yaml │ │ │ ├── requirements.txt │ │ │ └── test.json │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── tags.tf │ └── variables.tf │ ├── Data-platform-data-warehouse-with-e-business-integration │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── subscription.tf │ ├── tags.tf │ ├── userdata │ │ ├── bastion-bootstrap │ │ ├── odi-bootstrap │ │ └── odi-bootstrap.tpl │ └── variables.tf │ ├── Data-platform-departmental-data-warehouse-for-line-of-business │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── tags.tf │ └── variables.tf │ ├── Deploy-Autonomous-Database-and-the-MovieStream-data-sets-for-Oracle-LiveLabs │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioners.tf │ ├── schema.yaml │ ├── scripts │ │ ├── init.sql │ │ └── tables.sql.tmpl │ └── variables.tf │ ├── Deploy-ChatDB-Autonomous-Database-Select-AI-demonstration │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── cloud-foundation-library │ │ │ └── database │ │ │ └── adb │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioners.tf │ ├── schema.yaml │ ├── scripts │ │ ├── init.sql │ │ ├── install-apex-app.sql.tmpl │ │ ├── install-apex-workspace.sql │ │ └── tables.sql.tmpl │ └── variables.tf │ ├── Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── cloud-foundation-library │ │ │ └── database │ │ │ └── adb │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioners.tf │ ├── schema.yaml │ ├── scripts │ │ ├── init.sql │ │ ├── install-apex-app.sql.tmpl │ │ ├── install-apex-workspace.sql │ │ └── tables.sql.tmpl │ └── variables.tf │ ├── Deploy-Exadata-Database-Service-with-cross-region-Data-Guard │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ └── variables.tf │ ├── Deploy-Exadata-Database-Service-with-in-region-Data-Guard │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ └── variables.tf │ ├── Enterprise-data-warehousing-a-predictive-maintenance-example │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── functions │ │ └── decoder │ │ │ ├── dockerfile │ │ │ ├── func.py │ │ │ ├── func.yaml │ │ │ ├── requirements.txt │ │ │ └── test.json │ ├── images │ │ ├── edit_svc.png │ │ └── svc-policy-creation.png │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── tags.tf │ └── variables.tf │ ├── GoldenGate-Stream-Analytics-for-production-workloads-Full-Solution │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioner.tf │ ├── schema.yaml │ ├── subscription.tf │ ├── tags.tf │ └── variables.tf │ ├── GoldenGate-Stream-Analytics-for-production-workloads-Small-Footprint-Solution │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioner.tf │ ├── schema.yaml │ ├── subscription.tf │ ├── tags.tf │ └── variables.tf │ ├── Hello-WebServer │ ├── .gitignore │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── provisioner │ │ │ ├── provisioner.tf │ │ │ └── variables.tf │ ├── provider.tf │ └── variables.tf │ ├── Informatica-Secure-Agent-create-a-secure-ready-to-go-complete-data-platform-on-OCI │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── images │ │ └── infa-bastion-adb.png │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioners.tf │ ├── schema.yaml │ ├── scripts │ │ ├── bastion-bootstrap │ │ └── install.sh │ ├── subscription.tf │ └── variables.tf │ ├── Informatica-Secure-AgentCreate-a-ready-to-go-development-data-platform-on-OCI │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── images │ │ └── infa-no-bastion-adb.png │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioners.tf │ ├── schema.yaml │ ├── scripts │ │ └── install.sh │ ├── subscription.tf │ └── variables.tf │ ├── Machine-learning-platform-on-Autonomous-Data-Warehouse │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── tags.tf │ └── variables.tf │ ├── Modern-data-warehousing-a-polyglot-integration-example │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── tags.tf │ └── variables.tf │ ├── OCI-Observability-Hybrid-Configurations-monitoring-on-prem-DBs-from-the-cloud │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ └── variables.tf │ ├── OCI-Observability-Solution-Level1 │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ └── variables.tf │ ├── OCI-Observability-Solution-Level2 │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ └── variables.tf │ ├── Oracle-MovieStream │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── provisioner │ │ │ ├── file_envs.sh │ │ │ ├── finalize.sh.tpl │ │ │ ├── init.sql │ │ │ ├── oml_sample.py.tpl │ │ │ ├── provisioner.tf │ │ │ ├── tables.sql │ │ │ ├── tables.sql.tmpl │ │ │ └── variables.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── scripts │ │ └── bastion-bootstrap │ └── variables.tf │ ├── OracleDataModel-Manufacturing │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── images │ │ ├── step1.png │ │ ├── step2.png │ │ ├── step3.png │ │ ├── step4.png │ │ ├── step5.png │ │ ├── step6.png │ │ ├── step7.png │ │ ├── step8.png │ │ └── step9.png │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── provisioner │ │ │ ├── CREATE_DISCRT_OBJECTS.sql │ │ │ ├── config.tpl │ │ │ ├── file_envs.sh │ │ │ ├── finalize.sh.tpl │ │ │ ├── provisioner.tf │ │ │ ├── registermy_snapshot.json │ │ │ ├── restore_mysnapshot.json │ │ │ └── variables.tf │ ├── oci_api_key.pem │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ └── variables.tf │ ├── PublicSector-Crowd_Counting │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── images │ │ ├── PublicSector-Crowd_Counting.png │ │ ├── PublicSector-Crowd_Counting_arch.png │ │ ├── step1.png │ │ ├── step2.png │ │ ├── step3.png │ │ ├── step4.png │ │ ├── step5.png │ │ ├── step6.png │ │ └── step7.png │ ├── local.tf │ ├── main.tf │ ├── modules │ │ └── provisioner │ │ │ ├── config.tpl │ │ │ ├── db.yaml.tpl │ │ │ ├── finalize.sh.tpl │ │ │ ├── provisioner.tf │ │ │ ├── registermy_snapshot.json │ │ │ ├── restore_mysnapshot.json │ │ │ └── variables.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── scripts │ │ └── ui-bootstrap │ └── variables.tf │ ├── RAG-in-a-Box-Easy │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── images │ │ ├── diagram.png │ │ └── easyraginabox.png │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── cloud-foundation-library │ │ │ ├── database │ │ │ └── adb │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ └── object-storage │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioners.tf │ ├── sampledata.pdf │ ├── schema.yaml │ ├── scripts │ │ ├── easyRAG-IN-A-BOX_ADMIN_v2.0.sql │ │ ├── easyRAG-IN-A-BOX_APEX_ADMIN_v2.0.sql │ │ ├── easyRAG-IN-A-BOX_APEX_USER_v2.0.sql │ │ ├── easyRAG-IN-A-BOX_USER_CREDS_v1.2.sql │ │ ├── easyRAG-IN-A-BOX_USER_v2.3.sql │ │ ├── easyRAG-IN-A-BOX_f103_v2.2.sql │ │ └── easyRAG-IN-A-BOX_step_by_step_install_v2.0.rtf │ └── variables.tf │ ├── RAG-in-a-Box-Hybrid │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── images │ │ ├── diagram.png │ │ └── hraginabox.png │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── cloud-foundation-library │ │ │ ├── database │ │ │ └── adb │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ └── object-storage │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioners.tf │ ├── sampledata.txt │ ├── schema.yaml │ ├── scripts │ │ ├── hybridRAG-IN-A-BOX_ADMIN_v2.0.sql │ │ ├── hybridRAG-IN-A-BOX_APEX_ADMIN_v2.0.sql │ │ ├── hybridRAG-IN-A-BOX_APEX_USER_v2.0.sql │ │ ├── hybridRAG-IN-A-BOX_USER_CREDS_v1.1.sql │ │ ├── hybridRAG-IN-A-BOX_USER_v2.3.sql │ │ └── hybridRAG-IN-A-BOX_f101_v1.3.sql │ └── variables.tf │ ├── RAG-in-a-Box-Vector │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── images │ │ ├── diagram.png │ │ └── vraginabox.png │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── cloud-foundation-library │ │ │ ├── database │ │ │ └── adb │ │ │ │ ├── main.tf │ │ │ │ ├── outputs.tf │ │ │ │ └── variables.tf │ │ │ └── object-storage │ │ │ ├── main.tf │ │ │ ├── outputs.tf │ │ │ └── variables.tf │ ├── outputs.tf │ ├── provider.tf │ ├── provisioners.tf │ ├── sampledata.pdf │ ├── schema.yaml │ ├── scripts │ │ ├── vectorRAG-IN-A-BOX_ADMIN_v2.0.sql │ │ ├── vectorRAG-IN-A-BOX_APEX_ADMIN_v2.0.sql │ │ ├── vectorRAG-IN-A-BOX_APEX_USER_v2.0.sql │ │ ├── vectorRAG-IN-A-BOX_USER_CREDS_v1.2.sql │ │ ├── vectorRAG-IN-A-BOX_USER_v1.5.sql │ │ ├── vectorRAG-IN-A-BOX_f100_v3.5.sql │ │ └── vectorRAG-IN-A-BOX_step_by_step_install_v2.0.rtf │ └── variables.tf │ ├── README.md │ ├── S3_tfstate_backend_cloud_foundation_automation │ ├── .gitignore │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── provisioner │ │ │ ├── provisioner.tf │ │ │ └── variables.tf │ ├── provider.tf │ └── variables.tf │ ├── Sam-Workbench │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── images │ │ └── sam-workbench.png │ ├── local.tf │ ├── main.tf │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ ├── scripts │ │ ├── bastion-bootstrap │ │ └── ui-bootstrap │ └── variables.tf │ ├── Telco-Asset_Value_Maximization │ ├── .gitignore │ ├── CONTRIBUTING.md │ ├── Data-Lakehouse-Communications-Tower-Analytics-using-OML.json │ ├── LICENSE │ ├── README.md │ ├── images │ │ ├── Telco-Asset_Value_Maximization.png │ │ ├── Telco-Asset_Value_Maximization_arch.png │ │ ├── step1.png │ │ ├── step2.png │ │ ├── step3.png │ │ ├── step4.png │ │ ├── step5.png │ │ ├── step6.png │ │ ├── step7.png │ │ └── step8.png │ ├── locals.tf │ ├── main.tf │ ├── modules │ │ └── provisioner │ │ │ ├── ADW_CREATE_CREDENTIAL.sql.tpl │ │ │ ├── COMMS_LAKEHOUSE_TELECOM_TOWER.sql │ │ │ ├── COMMS_LAKEHOUSE_TELECOM_TOWER_dumps.sh.tpl │ │ │ ├── CREATE_USERS.sql.tpl │ │ │ ├── DMISHRA_SELECT_AI.sql │ │ │ ├── LISA_JONES.sql │ │ │ ├── LISA_JONES_dumps.sh.tpl │ │ │ ├── OML_USER_GRANTS.sql │ │ │ ├── SYNONYM_DMISHRA.sql │ │ │ ├── bastion_environment.sh.tpl │ │ │ ├── config.tpl │ │ │ ├── file_envs.sh │ │ │ ├── finalize.sh.tpl │ │ │ ├── provisioner.tf │ │ │ ├── registermy_snapshot.json │ │ │ ├── restore_mysnapshot.json │ │ │ └── variables.tf │ ├── oci_api_key.pem │ ├── outputs.tf │ ├── provider.tf │ ├── schema.yaml │ └── variables.tf │ └── WebLogic Clustered Deployment │ ├── .gitignore │ ├── locals.tf │ ├── main.tf │ ├── modules │ ├── wls_compute │ │ ├── cloudInitTemplate.tf │ │ ├── locals.tf │ │ ├── outputs.tf │ │ ├── templates │ │ │ └── keys.tpl │ │ ├── userdata │ │ │ └── bootstrap │ │ ├── variables.tf │ │ ├── wls_compute.tf │ │ └── wls_volume.tf │ └── wls_lb │ │ ├── outputs.tf │ │ ├── variables.tf │ │ └── wls_lb.tf │ ├── outputs.tf │ ├── provider.tf │ ├── readme │ ├── Playbook.md │ ├── README.md │ ├── arch.png │ └── structure.png │ ├── terraform.tfvars │ └── variables.tf ├── license_policy.yml ├── release_files.json ├── repolinter.json └── sonar-project.properties /.github/workflows/release-zip-file.yml: -------------------------------------------------------------------------------- 1 | name: Release ZIP file packaging 2 | 3 | on: 4 | release: 5 | types: [published] 6 | 7 | jobs: 8 | create_zip: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - name: 'Checkout repo' 12 | uses: actions/checkout@v2 13 | - name: 'Make (and upload) ZIP file(s)' 14 | uses: oracle-devrel/action-release-zip-maker@v0.5 15 | id: zip_maker 16 | with: 17 | github_token: ${{ secrets.GITHUB_TOKEN }} 18 | -------------------------------------------------------------------------------- /.github/workflows/sonarcloud.yml: -------------------------------------------------------------------------------- 1 | name: SonarCloud Scan 2 | on: 3 | pull_request_target: 4 | jobs: 5 | sonarcloud: 6 | name: SonarCloud 7 | runs-on: ubuntu-latest 8 | steps: 9 | - name: Checkout repo 10 | uses: actions/checkout@v2 11 | with: 12 | ref: ${{ github.event.pull_request.head.ref }} 13 | repository: ${{ github.event.pull_request.head.repo.full_name }} 14 | fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis 15 | - name: SonarCloud Scan 16 | uses: SonarSource/sonarcloud-github-action@master 17 | env: 18 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any 19 | SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # General 2 | .DS_Store 3 | .AppleDouble 4 | .LSOverride 5 | 6 | # Icon must end with two \r 7 | Icon 8 | 9 | 10 | # Thumbnails 11 | ._* 12 | 13 | # Files that might appear in the root of a volume 14 | .DocumentRevisions-V100 15 | .fseventsd 16 | .Spotlight-V100 17 | .TemporaryItems 18 | .Trashes 19 | .VolumeIcon.icns 20 | .com.apple.timemachine.donotpresent 21 | 22 | # Directories potentially created on remote AFP share 23 | .AppleDB 24 | .AppleDesktop 25 | Network Trash Folder 26 | Temporary Items 27 | .apdisk 28 | 29 | # ignore common security keys 30 | .key 31 | .crt 32 | .csr 33 | .pem -------------------------------------------------------------------------------- /cloud-foundation/README.md: -------------------------------------------------------------------------------- 1 | # Oracle Cloud Foundation Terraform Structure 2 | 3 | 4 | ## Overview 5 | We have implemented the following stucture: 6 | 7 | - Modules folder are the libraries - module toolkit for building and deploying solutions on Oracle Cloud Infrastructure. The modules are designed to be shared across multiple solution environments and deployments, with only the parameters differing between each environment. In this way, the module framework can be used as the Terraform core for a substantial cloud deployment in OCI. 8 | 9 | - Solutions folder is the code as servers as examples for our solutions. The framework is “composable” in that all the modules in the toolkit can be used individually or in any combination for a specific solution. 10 | 11 | - Solutions-for-oracle-res-mgr - are the zipped solutions that are compatible with Resource Manager in Oracle Cloud Infrastructure. 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/ai-anomaly-detection/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "ai_anomaly_detection_project" { 5 | value = { 6 | for ai in oci_ai_anomaly_detection_project.this : 7 | ai.display_name => { "compartment_id" : ai.compartment_id, "id" : ai.id } 8 | } 9 | } 10 | 11 | output "ai_anomaly_detection_data_asset" { 12 | value = { 13 | for ai in oci_ai_anomaly_detection_data_asset.this : 14 | ai.display_name => { "id" : ai.id, "compartment_id" : ai.compartment_id } 15 | } 16 | } 17 | 18 | output "ai_anomaly_detection_model" { 19 | value = { 20 | for ai in oci_ai_anomaly_detection_model.this : 21 | ai.display_name => { "id" : ai.id, "compartment_id" : ai.compartment_id } 22 | } 23 | } 24 | 25 | 26 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/api-gateway/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "gateways" { 5 | value = { 6 | for gw in oci_apigateway_gateway.this : 7 | gw.display_name => { "compartment_id" : gw.compartment_id, "ocid" : gw.id, "subnet" : gw.subnet_id } 8 | } 9 | } 10 | 11 | output "deployments" { 12 | value = { 13 | for dpl in oci_apigateway_deployment.this : 14 | dpl.display_name => { "ocid" : dpl.id, "Invoke endpoint" : dpl.endpoint } 15 | } 16 | } 17 | 18 | #output that concatenates the endpoint with the path 19 | output "routes" { 20 | value = flatten([ 21 | for d in oci_apigateway_deployment.this : 22 | flatten(formatlist("%s%s", d.endpoint, flatten(d.specification[*].routes[*].path))) 23 | ]) 24 | } 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/big-data-service/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | output "big_data_service" { 6 | value = { 7 | for instance in oci_bds_bds_instance.this: 8 | instance.display_name => { "display_name" : instance.display_name, "id" : instance.id, "compartment_id": instance.compartment_id, "cluster_version" : instance.cluster_version, "is_high_availability" : instance.is_high_availability, "master_node" : instance.master_node, "util_node" : instance.util_node, "worker_node" : instance.worker_node } 9 | } 10 | } 11 | 12 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/data-flow/main.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | resource "oci_dataflow_application" "this" { 5 | for_each = var.dataflow_params 6 | compartment_id = each.value.compartment_id 7 | display_name = each.value.application_display_name 8 | driver_shape = each.value.application_driver_shape 9 | executor_shape = each.value.application_executor_shape 10 | file_uri = each.value.application_file_uri 11 | language = each.value.application_language 12 | num_executors = each.value.application_num_executors 13 | spark_version = each.value.application_spark_version 14 | class_name = each.value.application_class_name 15 | defined_tags = each.value.defined_tags 16 | } 17 | 18 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/data-flow/outputs.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | # output "dataflow" { 5 | # value = [ for b in oci_dataflow_application.this : b.display_name] 6 | # } 7 | 8 | 9 | output "dataflow" { 10 | description = "Data Flow informations." 11 | value = length(oci_dataflow_application.this) > 0 ? oci_dataflow_application.this[*] : null 12 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/data-flow/variables.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | variable "dataflow_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | application_display_name = string 8 | application_driver_shape = string 9 | application_executor_shape = string 10 | application_file_uri = string 11 | application_language = string 12 | application_num_executors = number 13 | application_spark_version = string 14 | application_class_name = string 15 | defined_tags = map(string) 16 | } 17 | )) 18 | } 19 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/data-flow_private_endpoint/outputs.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2023, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | 5 | output "dataflow_application" { 6 | description = "Data Flow informations." 7 | value = length(oci_dataflow_application.this) > 0 ? oci_dataflow_application.this[*] : null 8 | } 9 | 10 | output "dataflow_private_endpoint" { 11 | description = "Data Flow informations." 12 | value = length(oci_dataflow_private_endpoint.this) > 0 ? oci_dataflow_private_endpoint.this[*] : null 13 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/data-science/outputs.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | output "datascience" { 5 | value = [ for b in oci_datascience_project.this : b.display_name] 6 | } 7 | 8 | output "notebook" { 9 | value = [ for b in oci_datascience_notebook_session.this : b.display_name] 10 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/data-science/variables.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | variable "datascience_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | project_description = string 8 | project_display_name = string 9 | defined_tags = map(string) 10 | } 11 | )) 12 | } 13 | 14 | variable "notebook_params" { 15 | type = map(object({ 16 | project_name = string 17 | compartment_id = string 18 | notebook_session_notebook_session_configuration_details_shape = string 19 | subnet_id = string 20 | notebook_session_notebook_session_configuration_details_block_storage_size_in_gbs = number 21 | notebook_session_display_name = string 22 | defined_tags = map(string) 23 | } 24 | )) 25 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/data-science_private_endpoint/outputs.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2023, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | output "datascience" { 5 | value = length(oci_datascience_project.this) > 0 ? oci_datascience_project.this[*] : null 6 | } 7 | 8 | output "notebook" { 9 | value = length(oci_datascience_notebook_session.this) > 0 ? oci_datascience_notebook_session.this[*] : null 10 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/data-science_private_endpoint/variables.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2023, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | variable "datascience_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | project_description = string 8 | project_display_name = string 9 | defined_tags = map(string) 10 | } 11 | )) 12 | } 13 | 14 | variable "notebook_params" { 15 | type = map(object({ 16 | project_name = string 17 | compartment_id = string 18 | notebook_session_notebook_session_configuration_details_shape = string 19 | subnet_id = string 20 | notebook_session_notebook_session_configuration_details_block_storage_size_in_gbs = number 21 | notebook_session_display_name = string 22 | defined_tags = map(string) 23 | } 24 | )) 25 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/adw/outputs.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2022, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "ADW_Service_Console_URL" { 5 | value = [for x in oci_database_autonomous_database.adw : x.service_console_url] 6 | } 7 | 8 | output "adw" { 9 | value = { 10 | for adw in oci_database_autonomous_database.adw: 11 | adw.display_name => adw.id 12 | } 13 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/adw/variables.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2022, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "adw_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | adw_cpu_core_count = number 8 | adw_size_in_tbs = number 9 | adw_db_name = string 10 | adw_db_workload = string 11 | adw_db_version = string 12 | adw_enable_auto_scaling = bool 13 | adw_is_free_tier = bool 14 | adw_license_model = string 15 | database_admin_password = string 16 | database_wallet_password = string 17 | # subnet_id = string 18 | # nsg_ids = list(string) 19 | defined_tags = map(string) 20 | })) 21 | } 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/adw_data_safe/outputs.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2023, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "ADW_Service_Console_URL" { 5 | value = [for x in oci_database_autonomous_database.adw : x.service_console_url] 6 | } 7 | 8 | output "adw" { 9 | value = { 10 | for adw in oci_database_autonomous_database.adw: 11 | adw.display_name => adw.id 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/adw_data_safe/variables.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2023, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "adw_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | adw_cpu_core_count = number 8 | adw_size_in_tbs = number 9 | adw_db_name = string 10 | adw_db_workload = string 11 | adw_db_version = string 12 | adw_enable_auto_scaling = bool 13 | adw_is_free_tier = bool 14 | adw_license_model = string 15 | data_safe_status = string 16 | database_admin_password = string 17 | database_wallet_password = string 18 | subnet_id = string 19 | nsg_ids = list(string) 20 | defined_tags = map(string) 21 | })) 22 | } 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/adw_ecpus/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "adw_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | compute_model = string 8 | compute_count = number 9 | size_in_tbs = number 10 | db_name = string 11 | db_workload = string 12 | db_version = string 13 | license_model = string 14 | database_admin_password = string 15 | database_wallet_password = string 16 | enable_auto_scaling = bool 17 | is_free_tier = bool 18 | create_local_wallet = bool 19 | is_mtls_connection_required = bool 20 | subnet_id = string 21 | nsg_ids = list(string) 22 | defined_tags = map(string) 23 | })) 24 | } 25 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/adw_ocpus/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "adw_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | cpu_core_count = number 8 | size_in_tbs = number 9 | db_name = string 10 | db_workload = string 11 | db_version = string 12 | license_model = string 13 | database_admin_password = string 14 | database_wallet_password = string 15 | enable_auto_scaling = bool 16 | is_free_tier = bool 17 | create_local_wallet = bool 18 | is_mtls_connection_required = bool 19 | subnet_id = string 20 | nsg_ids = list(string) 21 | defined_tags = map(string) 22 | })) 23 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/atp/atp.tf: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2022 Oracle and/or its affiliates. 2 | # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_database_autonomous_database" "this" { 5 | compartment_id = var.compartment_ocid 6 | cpu_core_count = var.autonomous_database_cpu_core_count 7 | db_name = var.autonomous_database_db_name 8 | display_name = var.autonomous_database_db_name 9 | admin_password = base64decode(var.autonomous_database_admin_password) 10 | data_storage_size_in_tbs = var.autonomous_database_data_storage_size_in_tbs 11 | nsg_ids = var.nsg_ids 12 | subnet_id = var.subnet_id 13 | is_mtls_connection_required = var.is_mtls_connection_required 14 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/atp/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2022 Oracle and/or its affiliates. 2 | # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "atp_db_id" { 5 | value = join ("",oci_database_autonomous_database.this.*.id) 6 | } 7 | 8 | output "is_atp_db" { 9 | value = "true" 10 | } 11 | 12 | output "url" { 13 | value = trimsuffix(oci_database_autonomous_database.this.connection_urls.*.sql_dev_web_url[0], "/sql-developer") 14 | } 15 | 16 | output "db_connection" { 17 | value = oci_database_autonomous_database.this.connection_strings 18 | } 19 | 20 | output "private_endpoint_ip" { 21 | value = oci_database_autonomous_database.this.private_endpoint_ip 22 | } 23 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/dbcs/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2022 Oracle and/or its affiliates. 2 | # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "dbcs_info" { 5 | value = { for db in oci_database_db_system.this: db.display_name => db.id } 6 | } 7 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/dbcs/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2022 Oracle and/or its affiliates. 2 | # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "dbcs_params" { 5 | description = "DBCS object parameters." 6 | type = map(object({ 7 | compartment_id = string 8 | subnet_id = string 9 | availability_domain = string 10 | db_version = string 11 | display_name = string 12 | disk_redundancy = string 13 | shape = string 14 | ssh_public_key = string 15 | hostname = string 16 | db_edition = string 17 | db_admin_password = string 18 | db_name = string 19 | db_workload = string 20 | pdb_name = string 21 | license_model = string 22 | enable_auto_backup = bool 23 | data_storage_size_in_gb = number 24 | cpu_core_count = number 25 | node_count = number 26 | })) 27 | default = {} 28 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/database/oci_external_databases/outputs.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2022, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "external_containers_database" { 5 | description = "External Containers Database informations." 6 | value = length(oci_database_external_container_database.this) > 0 ? oci_database_external_container_database.this[*] : null 7 | } 8 | 9 | output "external_pluggable_database" { 10 | description = "External Pluggable Database informations." 11 | value = length(oci_database_external_pluggable_database.this) > 0 ? oci_database_external_pluggable_database.this[*] : null 12 | } 13 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/datacatalog/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "datacatalog" { 5 | value = { 6 | for datacatalog in oci_datacatalog_catalog.this: 7 | datacatalog.display_name => datacatalog.display_name 8 | } 9 | } 10 | 11 | # output "datacatalog_data_asset" { 12 | # value = { 13 | # for datacatalog_data_asset in oci_datacatalog_data_asset.this: 14 | # datacatalog_data_asset.display_name => datacatalog_data_asset.display_name 15 | # } 16 | # } 17 | 18 | # output "datacatalog_connection" { 19 | # value = { 20 | # for datacatalog_connection in oci_datacatalog_connection.this: 21 | # datacatalog_connection.display_name => datacatalog_connection.display_name 22 | # } 23 | # } 24 | 25 | # output "datacatalog_id" { 26 | # value = { 27 | # for dc in oci_datacatalog_catalog.this: 28 | # dc.display_name => dc.id 29 | # } 30 | # } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/datacatalog_lakehouse/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "datacatalog" { 5 | value = { 6 | for datacatalog in oci_datacatalog_catalog.this: 7 | datacatalog.display_name => datacatalog.display_name 8 | } 9 | } 10 | 11 | output "datacatalog_data_asset_adw" { 12 | value = { 13 | for datacatalog_data_asset in oci_datacatalog_data_asset.this: 14 | datacatalog_data_asset.display_name => datacatalog_data_asset.display_name 15 | } 16 | } 17 | 18 | output "datacatalog_data_asset_object_storage" { 19 | value = { 20 | for datacatalog_data_asset in oci_datacatalog_data_asset.that: 21 | datacatalog_data_asset.display_name => datacatalog_data_asset.display_name 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/datacatalog_lakehouse/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "tenancy_ocid" { 5 | type = string 6 | } 7 | 8 | variable "region" { 9 | type = string 10 | } 11 | 12 | variable "datacatalog_params" { 13 | type = map(object({ 14 | compartment_id = string 15 | catalog_display_name = string 16 | adw_data_asset_display_name = string 17 | object_storage_data_asset_display_name = string 18 | defined_tags = map(string) 19 | private_endpoint_dns_zones = list(string) 20 | subnet_id = string 21 | # dbusername = string 22 | # dbpassword = string 23 | })) 24 | } 25 | 26 | variable "db_name" { 27 | type = string 28 | } 29 | 30 | # variable "wallet" {} 31 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/datacatalog_no_connection/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2024, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "datacatalog" { 5 | value = { 6 | for datacatalog in oci_datacatalog_catalog.this: 7 | datacatalog.display_name => datacatalog.display_name 8 | } 9 | } 10 | 11 | output "datacatalog_data_asset" { 12 | value = { 13 | for datacatalog_data_asset in oci_datacatalog_data_asset.this: 14 | datacatalog_data_asset.display_name => datacatalog_data_asset.display_name 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/datacatalog_no_connection/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2024, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "datacatalog_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | catalog_display_name = string 8 | defined_tags = map(string) 9 | })) 10 | } 11 | 12 | variable "db_name" { 13 | type = string 14 | } 15 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/datacatalog_private_endpoint/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "datacatalog" { 5 | value = { 6 | for datacatalog in oci_datacatalog_catalog.this: 7 | datacatalog.display_name => datacatalog.display_name 8 | } 9 | } 10 | 11 | output "datacatalog_data_asset" { 12 | value = { 13 | for datacatalog_data_asset in oci_datacatalog_data_asset.this: 14 | datacatalog_data_asset.display_name => datacatalog_data_asset.display_name 15 | } 16 | } 17 | 18 | output "datacatalog_connection" { 19 | value = { 20 | for datacatalog_connection in oci_datacatalog_connection.this: 21 | datacatalog_connection.display_name => datacatalog_connection.display_name 22 | } 23 | } 24 | 25 | # output "datacatalog_id" { 26 | # value = { 27 | # for dc in oci_datacatalog_catalog.this: 28 | # dc.display_name => dc.id 29 | # } 30 | # } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/datacatalog_private_endpoint/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "datacatalog_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | catalog_display_name = string 8 | defined_tags = map(string) 9 | dbusername = string 10 | dbpassword = string 11 | })) 12 | } 13 | 14 | variable "db_name" { 15 | type = string 16 | } 17 | 18 | variable "wallet" {} 19 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/dns/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "zones" { 5 | value = [for zone in oci_dns_zone.these: 6 | {"id": zone.id, "name": zone.name} 7 | ] 8 | } 9 | 10 | output "records" { 11 | value = [for record in oci_dns_rrset.these: 12 | {"domain": record.domain, "data": [for item in record.items: item.rdata]} 13 | ] 14 | } 15 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/cloud_vm_cluster/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "cloud_vm_cluster_informations" { 5 | description = "Cloud VM Cluster informations." 6 | value = length(oci_database_cloud_vm_cluster.this) > 0 ? oci_database_cloud_vm_cluster.this[*] : null 7 | } 8 | 9 | output "cloud_vm_cluster_id" { 10 | value = [for b in oci_database_cloud_vm_cluster.this : b.id] 11 | } 12 | 13 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/database_data_guard_association/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | data "oci_database_databases" "this" { 5 | compartment_id = var.compartment_id 6 | db_home_id = var.db_home_id 7 | } 8 | 9 | resource "oci_database_data_guard_association" "this" { 10 | for_each = var.database_data_guard_association 11 | creation_type = each.value.creation_type 12 | database_admin_password = each.value.database_admin_password 13 | database_id = data.oci_database_databases.this.databases[0].id 14 | delete_standby_db_home_on_delete = each.value.delete_standby_db_home_on_delete 15 | peer_vm_cluster_id = each.value.peer_vm_cluster_id 16 | protection_mode = each.value.protection_mode 17 | transport_type = each.value.transport_type 18 | } 19 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/database_data_guard_association/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "exadata_infrastructure_informations" { 5 | description = "Exadata Infrastructure informations." 6 | value = length(oci_database_data_guard_association.this) > 0 ? oci_database_data_guard_association.this[*] : null 7 | } 8 | 9 | output "database_data_guard_association" { 10 | value = {for s in oci_database_data_guard_association.this : s.display_name => s} 11 | } 12 | 13 | 14 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/database_data_guard_association/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "compartment_id" { 5 | type = string 6 | } 7 | 8 | variable "db_home_id" { 9 | type = string 10 | } 11 | 12 | variable "database_data_guard_association" { 13 | type = map(object({ 14 | creation_type = string 15 | database_admin_password = string 16 | delete_standby_db_home_on_delete = bool 17 | peer_vm_cluster_id = string 18 | protection_mode = string 19 | transport_type = string 20 | })) 21 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/database_db_home/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_database_db_home" "this" { 5 | for_each = var.database_db_home 6 | database { 7 | admin_password = each.value.admin_password 8 | defined_tags = each.value.defined_tags 9 | freeform_tags = each.value.freeform_tags 10 | db_name = each.value.db_name 11 | } 12 | db_version = each.value.db_version 13 | display_name = each.value.display_name 14 | source = each.value.source 15 | vm_cluster_id = each.value.vm_cluster_id 16 | lifecycle { 17 | ignore_changes = all 18 | } 19 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/database_db_home/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "database_db_home" { 5 | description = "Database DB HOME informations." 6 | value = length(oci_database_db_home.this) > 0 ? oci_database_db_home.this[*] : null 7 | } 8 | 9 | output "db_home_id" { 10 | value = [ for b in oci_database_db_home.this : b.id] 11 | } 12 | 13 | output "db_system_id" { 14 | value = join(", ", [for b in oci_database_db_home.this : b.id]) 15 | } 16 | 17 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/database_db_home/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "database_db_home" { 5 | type = map(object({ 6 | admin_password = string 7 | defined_tags = map(string) 8 | freeform_tags = map(string) 9 | db_version = string 10 | display_name = string 11 | db_name = string 12 | source = string 13 | vm_cluster_id = string 14 | })) 15 | } 16 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/exadata_infrastructure/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "exadata_infrastructure_informations" { 5 | description = "Exadata Infrastructure informations." 6 | value = length(oci_database_cloud_exadata_infrastructure.this) > 0 ? oci_database_cloud_exadata_infrastructure.this[*] : null 7 | } 8 | 9 | output "cloud_exadata_infrastructure_id" { 10 | value = [ for b in oci_database_cloud_exadata_infrastructure.this : b.id] 11 | } 12 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/exacs/exadata_infrastructure/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "tenancy_ocid" { 5 | type = string 6 | } 7 | 8 | variable "exadata_infrastructure" { 9 | type = map(object({ 10 | availability_domain = number 11 | compartment_id = string 12 | display_name = string 13 | shape = string 14 | email = string 15 | defined_tags = map(string) 16 | freeform_tags = map(string) 17 | hours_of_day = list(number) 18 | preference = string 19 | weeks_of_month = list(number) 20 | })) 21 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/fastconnect/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | output "private_vc_with_provider_no_cross_connect_or_cross_connect_group_id" { 6 | value = { 7 | for fc in oci_core_virtual_circuit.private_vc_with_provider_no_cross_connect_or_cross_connect_group_id : 8 | fc.display_name => { "compartment_id" : fc.compartment_id, "id" : fc.id, "type" : fc.type, "bandwidth_shape_name" : fc.bandwidth_shape_name } 9 | } 10 | } 11 | 12 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/fss/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "filesystems" { 5 | value = { for fs in oci_file_storage_file_system.this : 6 | fs.display_name => fs.id 7 | } 8 | } 9 | 10 | data "oci_core_private_ip" "existing" { 11 | for_each = oci_file_storage_mount_target.this 12 | private_ip_id = oci_file_storage_mount_target.this[each.key].private_ip_ids[0] 13 | } 14 | 15 | output "mount_targets" { 16 | value = { for index, mt in oci_file_storage_mount_target.this : 17 | mt.display_name => data.oci_core_private_ip.existing[index].ip_address 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/functions/outputs.tf: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved. 2 | // Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "apps" { 5 | value = { 6 | for app in oci_functions_application.this: 7 | app.display_name => {"compartment_id": app.compartment_id, "ocid": app.id, "subnets":app.subnet_ids} 8 | } 9 | } 10 | 11 | output "functions" { 12 | value = { 13 | for fn in oci_functions_function.this: 14 | fn.display_name => {"compartment_id": fn.compartment_id, "ocid": fn.id, "image":fn.image, "Invoke endpoint" : fn.invoke_endpoint} 15 | } 16 | } 17 | 18 | 19 | output "function" { 20 | value = { 21 | for fn in oci_functions_function.this: 22 | fn.display_name => fn.id 23 | } 24 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/functions/variables.tf: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2022, Oracle and/or its affiliates. All rights reserved. 2 | // Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "app_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | display_name = string 8 | subnet_ids = list(string) 9 | application_shape = string 10 | defined_tags = map(string) 11 | })) 12 | } 13 | 14 | variable "fn_params" { 15 | type = map(object({ 16 | function_app = string 17 | display_name = string 18 | image = string 19 | defined_tags = map(string) 20 | })) 21 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/golden-gate/main.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | resource "oci_golden_gate_deployment" "this" { 5 | for_each = var.deployment_params 6 | compartment_id = each.value.compartment_id 7 | cpu_core_count = each.value.cpu_core_count 8 | deployment_type = each.value.deployment_type 9 | subnet_id = each.value.subnet_id 10 | license_model = each.value.license_model 11 | display_name = each.value.display_name 12 | is_auto_scaling_enabled = each.value.is_auto_scaling_enabled 13 | defined_tags = each.value.defined_tags 14 | dynamic "ogg_data" { 15 | iterator = ogg_data 16 | for_each = each.value.ogg_data 17 | content { 18 | admin_password = ogg_data.value.admin_password 19 | admin_username = ogg_data.value.admin_username 20 | deployment_name = ogg_data.value.deployment_name 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/golden-gate/outputs.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | locals { 5 | deployments_id = { 6 | for instance in oci_golden_gate_deployment.this : 7 | instance.display_name => instance.deployment_backup_id 8 | } 9 | deployment_url = { 10 | for instance in oci_golden_gate_deployment.this : 11 | instance.display_name => instance.deployment_url 12 | } 13 | deployment_ip = { 14 | for instance in oci_golden_gate_deployment.this : 15 | instance.display_name => instance.private_ip_address 16 | } 17 | } 18 | 19 | output "deployment_id" { 20 | value = local.deployments_id 21 | } 22 | 23 | output "deployment_url" { 24 | value = local.deployment_url 25 | } 26 | output "deployment_ip" { 27 | value = local.deployment_ip 28 | } 29 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/golden-gate/variables.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | variable "deployment_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | cpu_core_count = number 8 | deployment_type = string 9 | subnet_id = string 10 | license_model = string 11 | display_name = string 12 | is_auto_scaling_enabled = bool 13 | defined_tags = map(string) 14 | ogg_data = set(object( 15 | { 16 | admin_password = string 17 | admin_username = string 18 | deployment_name = string 19 | } 20 | )) 21 | })) 22 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/identity/documentation/identity_module_pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/modules/cloud-foundation-library/identity/documentation/identity_module_pattern.png -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/identity/examples/basic/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | #Auth Vars 6 | variable "tenancy_ocid" {} 7 | variable "region" {} 8 | variable "current_user_ocid" {} 9 | variable "fingerprint" { 10 | default = "" 11 | } 12 | variable "private_key_path" { 13 | default = "" 14 | } 15 | 16 | 17 | 18 | provider "oci" { 19 | tenancy_ocid = "${var.tenancy_ocid}" 20 | user_ocid = "${var.current_user_ocid}" 21 | fingerprint = "${var.fingerprint}" 22 | private_key_path = "${var.private_key_path}" 23 | region = "${var.region}" 24 | 25 | } 26 | 27 | terraform { 28 | 29 | required_version = ">= 1.0.0, < 2.0.0" 30 | 31 | required_providers { 32 | oci = { 33 | source = "hashicorp/oci" 34 | version = ">= 4.79.0, < 5.0.0" 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/identity/examples/basic/test_assertions.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | 6 | /* 7 | 8 | # The special test_assertions resource type, which belongs 9 | # to the test provider we required above, is a temporary 10 | # syntax for writing out explicit test assertions. 11 | resource "test_assertions" "bucket" { 12 | # "component" serves as a unique identifier for this 13 | # particular set of assertions in the test results. 14 | component = "bucket" 15 | equal "bucket_name" { 16 | description = "default bucket_name is natali-test-eu-627" 17 | got = module.main.bucket_name # value from the output 18 | want = "natali-test-eu-627" 19 | } 20 | } 21 | 22 | 23 | */ -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/identity/examples/complex/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | #Auth Vars 6 | variable "tenancy_ocid" {} 7 | variable "region" {} 8 | variable "current_user_ocid" {} 9 | variable "fingerprint" { 10 | default = "" 11 | } 12 | variable "private_key_path" { 13 | default = "" 14 | } 15 | 16 | 17 | 18 | provider "oci" { 19 | tenancy_ocid = "${var.tenancy_ocid}" 20 | user_ocid = "${var.current_user_ocid}" 21 | fingerprint = "${var.fingerprint}" 22 | private_key_path = "${var.private_key_path}" 23 | region = "${var.region}" 24 | 25 | } 26 | 27 | terraform { 28 | 29 | required_version = ">= 1.0.0, < 2.0.0" 30 | 31 | required_providers { 32 | oci = { 33 | source = "hashicorp/oci" 34 | version = ">= 4.79.0, < 5.0.0" 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/identity/examples/devops/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | #Auth Vars 6 | variable "tenancy_ocid" {} 7 | variable "region" {} 8 | variable "current_user_ocid" {} 9 | variable "fingerprint" { 10 | default = "" 11 | } 12 | variable "private_key_path" { 13 | default = "" 14 | } 15 | 16 | 17 | 18 | provider "oci" { 19 | tenancy_ocid = "${var.tenancy_ocid}" 20 | user_ocid = "${var.current_user_ocid}" 21 | fingerprint = "${var.fingerprint}" 22 | private_key_path = "${var.private_key_path}" 23 | region = "${var.region}" 24 | 25 | } 26 | 27 | terraform { 28 | 29 | required_version = ">= 1.0.0, < 2.0.0" 30 | 31 | required_providers { 32 | oci = { 33 | source = "hashicorp/oci" 34 | version = ">= 4.79.0, < 5.0.0" 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/identity/examples/devops/test_assertions.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | 6 | /* 7 | 8 | # The special test_assertions resource type, which belongs 9 | # to the test provider we required above, is a temporary 10 | # syntax for writing out explicit test assertions. 11 | resource "test_assertions" "bucket" { 12 | # "component" serves as a unique identifier for this 13 | # particular set of assertions in the test results. 14 | component = "bucket" 15 | equal "bucket_name" { 16 | description = "default bucket_name is natali-test-eu-627" 17 | got = module.main.bucket_name # value from the output 18 | want = "natali-test-eu-627" 19 | } 20 | } 21 | 22 | 23 | */ -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/identity/examples/empty/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | 6 | # inputs 7 | 8 | 9 | # outputs 10 | 11 | 12 | # logic 13 | 14 | 15 | # resource or mixed module blocks 16 | 17 | 18 | module "identity" { 19 | # pick a source type - github url with path and git tag is recommended for production code. local path is used for sub-module development and customization 20 | # source = "github.com/oracle-devrel/terraform-oci-oracle-cloud-foundation//cloud-foundation/modules/cloud-foundation-library/identity/module?ref=" 21 | source = "../../module" 22 | 23 | tenancy_ocid = var.tenancy_ocid 24 | 25 | 26 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/identity/examples/empty/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | #Auth Vars 6 | variable "tenancy_ocid" {} 7 | variable "region" {} 8 | variable "current_user_ocid" {} 9 | variable "fingerprint" { 10 | default = "" 11 | } 12 | variable "private_key_path" { 13 | default = "" 14 | } 15 | 16 | 17 | 18 | provider "oci" { 19 | tenancy_ocid = "${var.tenancy_ocid}" 20 | user_ocid = "${var.current_user_ocid}" 21 | fingerprint = "${var.fingerprint}" 22 | private_key_path = "${var.private_key_path}" 23 | region = "${var.region}" 24 | } 25 | 26 | 27 | terraform { 28 | 29 | required_version = ">= 1.0.0, < 2.0.0" 30 | 31 | required_providers { 32 | oci = { 33 | source = "hashicorp/oci" 34 | version = ">= 4.79.0, < 5.0.0" 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/instance/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2022 Oracle and/or its affiliates. 2 | # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "InstancePrivateIPs" { 5 | value = [ for b in oci_core_instance.these : b.private_ip] 6 | } 7 | 8 | output "InstancePublicIPs" { 9 | value = [ for b in oci_core_instance.these : b.public_ip] 10 | } 11 | 12 | output "InstanceOcids" { 13 | value = [ for b in oci_core_instance.these : b.id] 14 | } 15 | 16 | output "display_names" { 17 | value = [ for b in oci_core_instance.these : b.display_name] 18 | } 19 | 20 | output "InstanceShapes" { 21 | value = [ for b in oci_core_instance.these : b.shape] 22 | } 23 | 24 | output "AvailabilityDomains" { 25 | value = [ for b in oci_core_instance.these : b.availability_domain] 26 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/instance/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2022 Oracle and/or its affiliates. 2 | # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "instance_params" { 5 | 6 | type = map(object({ 7 | 8 | availability_domain = string 9 | compartment_id = string 10 | display_name = string 11 | shape = string 12 | 13 | defined_tags = map(string) 14 | freeform_tags = map(string) 15 | 16 | subnet_id = string 17 | vnic_display_name = string 18 | assign_public_ip = string 19 | hostname_label = string 20 | nsg_ids = list(string) 21 | 22 | ocpus = number 23 | 24 | source_type = string 25 | source_id = string 26 | 27 | metadata = map(string) 28 | 29 | are_legacy_imds_endpoints_disabled = string 30 | 31 | fault_domain = string 32 | 33 | provisioning_timeout_mins = string 34 | 35 | })) 36 | 37 | default = {} 38 | 39 | } 40 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/instance_flexible/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "tenancy_ocid" { 5 | type = string 6 | } 7 | 8 | variable "instance_params" { 9 | 10 | type = map(object({ 11 | 12 | availability_domain = number 13 | compartment_id = string 14 | display_name = string 15 | shape = string 16 | 17 | defined_tags = map(string) 18 | freeform_tags = map(string) 19 | 20 | subnet_id = string 21 | vnic_display_name = string 22 | assign_public_ip = string 23 | hostname_label = string 24 | 25 | ocpus = number 26 | memory_in_gbs = number 27 | 28 | source_type = string 29 | source_id = string 30 | 31 | metadata = map(string) 32 | 33 | fault_domain = string 34 | 35 | provisioning_timeout_mins = string 36 | 37 | })) 38 | 39 | } 40 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/instance_with_out_flexible/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "tenancy_ocid" { 5 | type = string 6 | } 7 | 8 | variable "instance_params" { 9 | 10 | type = map(object({ 11 | 12 | availability_domain = number 13 | compartment_id = string 14 | display_name = string 15 | shape = string 16 | 17 | defined_tags = map(string) 18 | freeform_tags = map(string) 19 | 20 | subnet_id = string 21 | vnic_display_name = string 22 | assign_public_ip = string 23 | hostname_label = string 24 | 25 | source_type = string 26 | source_id = string 27 | 28 | metadata = map(string) 29 | 30 | fault_domain = string 31 | 32 | provisioning_timeout_mins = string 33 | 34 | })) 35 | 36 | } 37 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/instance_with_out_flexible_test/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "tenancy_ocid" { 5 | type = string 6 | } 7 | 8 | variable "instance_params" { 9 | 10 | type = map(object({ 11 | 12 | availability_domain = number 13 | compartment_id = string 14 | display_name = string 15 | shape = string 16 | 17 | defined_tags = map(string) 18 | freeform_tags = map(string) 19 | 20 | subnet_id = string 21 | vnic_display_name = string 22 | assign_public_ip = string 23 | hostname_label = string 24 | 25 | source_type = string 26 | source_id = string 27 | boot_volume_size_in_gbs = number 28 | 29 | metadata = map(string) 30 | 31 | fault_domain = string 32 | 33 | provisioning_timeout_mins = string 34 | 35 | })) 36 | 37 | } 38 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/keygen/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2022 Oracle and/or its affiliates. 2 | # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "display_name" { 5 | description = "Display Name for organization." 6 | default = "common" 7 | } 8 | 9 | variable "subnet_domain_name" { 10 | default = "subnet_domain" 11 | } 12 | 13 | variable "organization" { 14 | default = "Demo" 15 | } 16 | 17 | variable "organizational_unit" { 18 | default = "FOR TESTING ONLY" 19 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/lb/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "BackendsetNames" { 5 | value = [ for b in oci_load_balancer_backend_set.these : b.name] 6 | } 7 | 8 | output "SSLHeadersNames" { 9 | value = [ for b in oci_load_balancer_rule_set.these : b.name] 10 | } 11 | 12 | output "CertificateNames" { 13 | value = [ for b in oci_load_balancer_certificate.these : b.certificate_name] 14 | } 15 | 16 | output "load_balancer_id" { 17 | value = element(coalescelist([for b in oci_load_balancer_load_balancer.these : b.id], tolist([""])), 0) 18 | } 19 | 20 | output "load_balancer_IP" { 21 | value = [for b in oci_load_balancer_load_balancer.these : b.ip_addresses] 22 | } 23 | 24 | output "CertificatesIds" { 25 | value = [ for b in oci_load_balancer_certificate.these : b.id] 26 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/lb_no_ssl/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "BackendsetNames" { 5 | value = [ for b in oci_load_balancer_backend_set.these : b.name] 6 | } 7 | 8 | output "SSLHeadersNames" { 9 | value = [ for b in oci_load_balancer_rule_set.these : b.name] 10 | } 11 | 12 | output "CertificateNames" { 13 | value = [ for b in oci_load_balancer_certificate.these : b.certificate_name] 14 | } 15 | 16 | output "load_balancer_id" { 17 | value = element(coalescelist([for b in oci_load_balancer_load_balancer.these : b.id], tolist([""])), 0) 18 | } 19 | 20 | output "load_balancer_IP" { 21 | value = [for b in oci_load_balancer_load_balancer.these : b.ip_addresses] 22 | } 23 | 24 | output "CertificatesIds" { 25 | value = [ for b in oci_load_balancer_certificate.these : b.id] 26 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/local-peering-gateway/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_core_local_peering_gateway" "requestor_lpgs" { 5 | for_each = var.lpg_params 6 | display_name = each.value.display_name 7 | compartment_id = each.value.compartment_id 8 | vcn_id = each.value.vcn_id1 9 | peer_id = oci_core_local_peering_gateway.acceptor_lpgs[each.value.display_name].id 10 | } 11 | 12 | resource "oci_core_local_peering_gateway" "acceptor_lpgs" { 13 | for_each = var.lpg_params 14 | display_name = each.value.display_name 15 | compartment_id = each.value.compartment_id 16 | vcn_id = each.value.vcn_id2 17 | } 18 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/local-peering-gateway/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | output "lpg_requestor" { 6 | value = join("\n", [ for b in oci_core_local_peering_gateway.acceptor_lpgs : b.id]) 7 | } 8 | 9 | output "lpg_acceptor" { 10 | value = join("\n", [ for b in oci_core_local_peering_gateway.requestor_lpgs : b.id]) 11 | } 12 | 13 | 14 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/local-peering-gateway/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | variable "lpg_params" { 6 | type = map(object({ 7 | vcn_id2 = string 8 | vcn_id1 = string 9 | display_name = string 10 | compartment_id = string 11 | })) 12 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/mysql_heatwave/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "mysql_instances" { 5 | value = { 6 | for instance in oci_mysql_mysql_db_system.this: 7 | instance.display_name => { "display_name" : instance.display_name, "id" : instance.id, "ip": instance.ip_address, "compartment_id": instance.compartment_id } 8 | } 9 | } 10 | 11 | output "mysql_credentials" { 12 | value = { 13 | for credentials in var.mysql_params: 14 | credentials.display_name => { "username" : credentials.admin_username, "password" : credentials.admin_password } 15 | } 16 | } 17 | 18 | output "mysql_heat_wave_cluster" { 19 | value = { 20 | for instance in oci_mysql_heat_wave_cluster.this: 21 | instance.cluster_size => { "cluster_size" : instance.cluster_size, "id" : instance.id } 22 | } 23 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/network-subnet/examples/basic/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | #Auth Vars 6 | variable "tenancy_ocid" {} 7 | variable "region" {} 8 | variable "current_user_ocid" {} 9 | variable "fingerprint" { 10 | default = "" 11 | } 12 | variable "private_key_path" { 13 | default = "" 14 | } 15 | 16 | 17 | 18 | provider "oci" { 19 | tenancy_ocid = "${var.tenancy_ocid}" 20 | user_ocid = "${var.current_user_ocid}" 21 | fingerprint = "${var.fingerprint}" 22 | private_key_path = "${var.private_key_path}" 23 | region = "${var.region}" 24 | 25 | } 26 | 27 | terraform { 28 | 29 | required_version = ">= 1.0.0, < 2.0.0" 30 | 31 | required_providers { 32 | oci = { 33 | source = "hashicorp/oci" 34 | version = ">= 4.79.0, < 5.0.0" 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/network-vcn/examples/basic/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | 6 | # inputs 7 | 8 | 9 | # outputs 10 | 11 | 12 | # logic 13 | 14 | 15 | # resource or mixed module blocks 16 | 17 | 18 | module "vcn" { 19 | # pick a source type - github url with path and git tag is recommended for production code. local path is used for sub-module development and customization 20 | # source = "github.com/oracle-devrel/terraform-oci-oracle-cloud-foundation//cloud-foundation/modules/cloud-foundation-library/network-vcn/module?ref=" 21 | source = "../../module" 22 | 23 | compartment_id = var.tenancy_ocid 24 | vcn_display_name = "MyVCN" 25 | create_nat_gateway = true 26 | create_internet_gateway = true 27 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/network-vcn/examples/basic/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | #Auth Vars 6 | variable "tenancy_ocid" {} 7 | variable "region" {} 8 | variable "current_user_ocid" {} 9 | variable "fingerprint" { 10 | default = "" 11 | } 12 | variable "private_key_path" { 13 | default = "" 14 | } 15 | 16 | 17 | 18 | provider "oci" { 19 | tenancy_ocid = "${var.tenancy_ocid}" 20 | user_ocid = "${var.current_user_ocid}" 21 | fingerprint = "${var.fingerprint}" 22 | private_key_path = "${var.private_key_path}" 23 | region = "${var.region}" 24 | 25 | } 26 | 27 | terraform { 28 | 29 | required_version = ">= 1.0.0, < 2.0.0" 30 | 31 | required_providers { 32 | oci = { 33 | source = "hashicorp/oci" 34 | version = ">= 4.79.0, < 5.0.0" 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oac/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "Analytics_URL" { 5 | value = join(", ", [for x in oci_analytics_analytics_instance.oac : x.service_url]) 6 | } 7 | 8 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oac_private_endpoint/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "Analytics_URL" { 5 | value = [ for x in oci_analytics_analytics_instance.this : x.service_url] 6 | } 7 | 8 | output "oci_analytics_analytics_instance_private_access_channel" { 9 | value = oci_analytics_analytics_instance_private_access_channel.this 10 | } 11 | 12 | output "private_endpoint_ip" { 13 | value = one([for b in oci_analytics_analytics_instance_private_access_channel.this : b.ip_address]) 14 | } 15 | 16 | 17 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/object-storage-upload-files/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | data "oci_objectstorage_namespace" "os" { 6 | compartment_id = var.tenancy_ocid 7 | } 8 | 9 | resource "oci_objectstorage_object" "this" { 10 | for_each = var.bucket_upload_params 11 | bucket = each.value.bucket 12 | namespace = data.oci_objectstorage_namespace.os.namespace 13 | object = each.value.object 14 | content = file(each.value.object) 15 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/object-storage-upload-files/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | output "buckets_upload" { 6 | value = { 7 | for upload in oci_objectstorage_object.this: 8 | upload.bucket => { "object" : upload.object, "content" : upload.content, "id": upload.id } 9 | } 10 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/object-storage-upload-files/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | variable "tenancy_ocid" { 6 | type = string 7 | } 8 | 9 | variable "bucket_upload_params" { 10 | type = map(object({ 11 | bucket = string 12 | object = string 13 | content = string 14 | })) 15 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/object-storage/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | data "oci_objectstorage_namespace" "os" { 5 | compartment_id = var.tenancy_ocid 6 | } 7 | 8 | resource "oci_objectstorage_bucket" "os" { 9 | for_each = { 10 | for k,v in var.bucket_params : k => v if v.compartment_id != "" 11 | } 12 | compartment_id = each.value.compartment_id 13 | name = each.value.name 14 | namespace = data.oci_objectstorage_namespace.os.namespace 15 | access_type = each.value.access_type 16 | storage_tier = each.value.storage_tier 17 | object_events_enabled = each.value.events_enabled 18 | defined_tags = each.value.defined_tags 19 | } 20 | 21 | terraform { 22 | required_providers { 23 | oci = { 24 | source = "oracle/oci" 25 | version = ">= 5.30.0" 26 | } 27 | } 28 | required_version = ">= 1.5.5" 29 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/object-storage/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # output "buckets" { 5 | # value = { 6 | # for bucket in oci_objectstorage_bucket.os: 7 | # bucket.name => bucket.access_type 8 | # } 9 | # } 10 | 11 | 12 | output "buckets_id"{ 13 | value = { 14 | for bucket in oci_objectstorage_bucket.os: 15 | bucket.name => {"compartment_id": bucket.compartment_id, "id": bucket.id} 16 | } 17 | } 18 | 19 | 20 | output "buckets" { 21 | description = "Buckets informations." 22 | value = length(oci_objectstorage_bucket.os) > 0 ? oci_objectstorage_bucket.os[*] : null 23 | } 24 | 25 | output "bucket_id" { 26 | value = { 27 | for bucket in oci_objectstorage_bucket.os : 28 | bucket.name => bucket.bucket_id 29 | } 30 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/object-storage/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | variable "tenancy_ocid" { 6 | type = string 7 | } 8 | 9 | variable "bucket_params" { 10 | type = map(object({ 11 | compartment_id = string 12 | name = string 13 | access_type = string 14 | storage_tier = string 15 | events_enabled = bool 16 | defined_tags = map(string) 17 | })) 18 | } 19 | 20 | 21 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_artifacts_container_repository/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_artifacts_container_repository" "this" { 5 | for_each = var.containers_artifacts_params 6 | compartment_id = each.value.compartment_id 7 | display_name = each.value.display_name 8 | is_immutable = each.value.is_immutable 9 | is_public = each.value.is_public 10 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_artifacts_container_repository/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | output "containers_artifacts" { 6 | value = length(oci_artifacts_container_repository.this) > 0 ? oci_artifacts_container_repository.this[*] : null 7 | } 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_artifacts_container_repository/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | variable "containers_artifacts_params" { 6 | type = map(object({ 7 | compartment_id = string 8 | display_name = string 9 | is_immutable = bool 10 | is_public = bool 11 | })) 12 | } 13 | 14 | 15 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_data_safe/main.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | resource "oci_data_safe_data_safe_private_endpoint" "this" { 5 | for_each = var.oci_data_safe_private_endpoint_params 6 | compartment_id = each.value.compartment_id 7 | display_name = each.value.display_name 8 | subnet_id = each.value.subnet_id 9 | vcn_id = each.value.vcn_id 10 | defined_tags = each.value.defined_tags 11 | description = each.value.description 12 | nsg_ids = each.value.nsg_ids 13 | } 14 | 15 | terraform { 16 | required_providers { 17 | oci = { 18 | source = "oracle/oci" 19 | version = ">= 5.30.0" 20 | } 21 | } 22 | required_version = ">= 1.5.5" 23 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_data_safe/outputs.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | output "data_safe_private_endpoint" { 5 | value = {for b in oci_data_safe_data_safe_private_endpoint.this: 6 | b.display_name => b.id} 7 | } 8 | 9 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_data_safe/variables.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | variable "oci_data_safe_private_endpoint_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | display_name = string 8 | description = string 9 | vcn_id = string 10 | subnet_id = string 11 | nsg_ids = list(string) 12 | defined_tags = map(string) 13 | })) 14 | } 15 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_events/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "events" { 5 | value = {for event in oci_events_rule.this: 6 | event.display_name => event.id} 7 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_events/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "function_id" { 5 | type = map(string) 6 | } 7 | 8 | variable "topic_id" { 9 | type = map(string) 10 | } 11 | 12 | variable "stream_id" { 13 | type = map(string) 14 | } 15 | 16 | variable "events_params" { 17 | type = map(object({ 18 | rule_display_name = string 19 | description = string 20 | compartment_id = string 21 | rule_is_enabled = bool 22 | condition = any 23 | freeform_tags = map(any) 24 | action_params = list(object({ 25 | action_type = string 26 | is_enabled = bool 27 | actions_description = string 28 | function_name = string 29 | topic_name = string 30 | stream_name = string 31 | 32 | })) 33 | })) 34 | } 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_log_analytics/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | data "oci_identity_tenancy" "this" { 5 | tenancy_id = var.tenancy_ocid 6 | } 7 | 8 | resource "oci_log_analytics_log_analytics_log_group" "this" { 9 | for_each = var.log_analytics_log_group_params 10 | compartment_id = each.value.compartment_id 11 | display_name = each.value.display_name 12 | namespace = data.oci_identity_tenancy.this.name 13 | } 14 | 15 | terraform { 16 | required_providers { 17 | oci = { 18 | source = "oracle/oci" 19 | version = ">= 5.30.0" 20 | } 21 | } 22 | required_version = ">= 1.5.5" 23 | } 24 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_log_analytics/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "log_analytics_log_group" { 5 | value = {for sc in oci_log_analytics_log_analytics_log_group.this: 6 | sc.display_name => sc.id} 7 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_log_analytics/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "tenancy_ocid" { 5 | type = string 6 | } 7 | 8 | variable "log_analytics_log_group_params" { 9 | type = map(object({ 10 | compartment_id = string 11 | display_name = string 12 | })) 13 | } 14 | 15 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_logging/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | output "log_groups" { 6 | value = {for lg in oci_logging_log_group.this : 7 | lg.display_name => lg.id} 8 | } 9 | 10 | 11 | output "logs" { 12 | value = {for l in oci_logging_log.this: 13 | l.display_name => l.id} 14 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_logging/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "log_resources" { 5 | type = map(string) 6 | } 7 | 8 | variable "log_group_params" { 9 | type = map(object({ 10 | compartment_id = string 11 | log_group_name = string 12 | })) 13 | } 14 | 15 | 16 | variable "log_params" { 17 | type = map(object({ 18 | log_name = string 19 | log_group = string 20 | log_type = string 21 | source_log_category = string 22 | source_resource = string 23 | source_service = string 24 | source_type = string 25 | compartment_id = string 26 | is_enabled = bool 27 | retention_duration = number 28 | })) 29 | } 30 | 31 | 32 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_logging_service_connector/outputs.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | output "service_connectors" { 5 | value = {for sc in oci_sch_service_connector.this: 6 | sc.display_name => sc.id} 7 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_monitoring_alarms/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "monitoring_alarms" { 5 | description = "Monitoring informations." 6 | value = length(oci_monitoring_alarm.this) > 0 ? oci_monitoring_alarm.this[*] : null 7 | } 8 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_notifications/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_ons_notification_topic" "this" { 5 | for_each = var.topic_params 6 | compartment_id = each.value.compartment_id 7 | name = each.value.topic_name 8 | description = each.value.description 9 | } 10 | 11 | resource "oci_ons_subscription" "this" { 12 | for_each = var.subscription_params 13 | compartment_id = each.value.compartment_id 14 | endpoint = each.value.endpoint 15 | protocol = each.value.protocol 16 | topic_id = oci_ons_notification_topic.this[each.value.topic_name].id 17 | } 18 | 19 | terraform { 20 | required_providers { 21 | oci = { 22 | source = "oracle/oci" 23 | version = ">= 5.30.0" 24 | } 25 | } 26 | required_version = ">= 1.5.5" 27 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_notifications/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "topics" { 5 | value = { 6 | for i in oci_ons_notification_topic.this : 7 | i.name => { "id" : i.topic_id, "api_endpoint" : i.api_endpoint, "short_topic_id" : i.short_topic_id } 8 | } 9 | } 10 | 11 | 12 | output "topic_id" { 13 | value = { for i in oci_ons_notification_topic.this : 14 | i.name => i.topic_id } 15 | } 16 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/oci_notifications/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "topic_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | topic_name = string 8 | description = string 9 | })) 10 | } 11 | 12 | variable "subscription_params" { 13 | type = map(object({ 14 | compartment_id = string 15 | endpoint = string 16 | protocol = string 17 | topic_name = string 18 | })) 19 | } 20 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/odi/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_dataintegration_workspace" "this" { 5 | for_each = { 6 | for k,v in var.odi_params : k => v if v.compartment_id != "" 7 | } 8 | #Required 9 | compartment_id = each.value.compartment_id 10 | display_name = each.value.display_name 11 | 12 | #Optional 13 | defined_tags = each.value.defined_tags 14 | description = each.value.description 15 | # dns_server_ip = var.workspace_dns_server_ip 16 | # dns_server_zone = var.workspace_dns_server_zone 17 | # freeform_tags = each.value.freeform_tags 18 | # is_private_network_enabled = each.value.is_private_network_enabled 19 | is_private_network_enabled = false 20 | # subnet_id = each.value.subnet_id 21 | # vcn_id = each.value.vcn_id 22 | } 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/odi/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "odi" { 5 | value = { 6 | for odi in oci_dataintegration_workspace.this: 7 | odi.display_name => odi.display_name 8 | } 9 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/odi/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "odi_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | display_name = string 8 | description = string 9 | # is_private_network_enabled = bool 10 | # subnet_id = string 11 | # vcn_id = string 12 | defined_tags = map(string) 13 | })) 14 | } 15 | 16 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/odi_private_endpoint/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | resource "oci_dataintegration_workspace" "this" { 6 | for_each = { 7 | for k,v in var.odi_params : k => v if v.compartment_id != "" 8 | } 9 | compartment_id = each.value.compartment_id 10 | display_name = each.value.display_name 11 | defined_tags = each.value.defined_tags 12 | description = each.value.description 13 | freeform_tags = each.value.freeform_tags 14 | is_private_network_enabled = each.value.is_private_network_enabled 15 | subnet_id = each.value.subnet_id 16 | vcn_id = each.value.vcn_id 17 | 18 | lifecycle { 19 | ignore_changes = all 20 | } 21 | } 22 | 23 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/odi_private_endpoint/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "odi" { 5 | value = length(oci_dataintegration_workspace.this) > 0 ? oci_dataintegration_workspace.this[*] : null 6 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/odi_private_endpoint/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "odi_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | display_name = string 8 | description = string 9 | is_private_network_enabled = string 10 | subnet_id = string 11 | vcn_id = string 12 | freeform_tags = map(string) 13 | defined_tags = map(string) 14 | })) 15 | } 16 | 17 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/remote-peering/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "requestor" { 5 | value = oci_core_drg.requestor_drg[0].id 6 | } 7 | 8 | 9 | output "acceptor" { 10 | value = oci_core_drg.acceptor_drg[0].id 11 | } 12 | 13 | output "Remote_Peeting_Region1" { 14 | value = length(oci_core_remote_peering_connection.requestor) > 0 ? oci_core_remote_peering_connection.requestor[*] : null 15 | } 16 | 17 | output "Remote_Peeting_Region2" { 18 | value = length(oci_core_remote_peering_connection.acceptor) > 0 ? oci_core_remote_peering_connection.acceptor[*] : null 19 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/remote-peering/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "compartment_id" { 5 | type = string 6 | } 7 | 8 | variable "vcns" { 9 | description = "The list of vnc's" 10 | type = map(map(string)) 11 | } 12 | 13 | variable "vcns2" { 14 | description = "The list of vnc's" 15 | type = map(map(string)) 16 | } 17 | 18 | variable "rpg_params" { 19 | description = "The parameters for the DRG" 20 | type = list(object({ 21 | vcn_name_requestor = string 22 | vcn_name_acceptor = string 23 | })) 24 | } 25 | 26 | variable "requestor_region" {} 27 | variable "acceptor_region" {} 28 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/secret-data/documentation/secret_data_module_pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/modules/cloud-foundation-library/secret-data/documentation/secret_data_module_pattern.png -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/secret-data/examples/just-secret/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | #Auth Vars 6 | variable "tenancy_ocid" {} 7 | variable "region" {} 8 | variable "current_user_ocid" {} 9 | variable "fingerprint" { 10 | default = "" 11 | } 12 | variable "private_key_path" { 13 | default = "" 14 | } 15 | 16 | 17 | 18 | provider "oci" { 19 | tenancy_ocid = "${var.tenancy_ocid}" 20 | user_ocid = "${var.current_user_ocid}" 21 | fingerprint = "${var.fingerprint}" 22 | private_key_path = "${var.private_key_path}" 23 | region = "${var.region}" 24 | 25 | } 26 | 27 | terraform { 28 | 29 | required_version = ">= 1.0.0, < 2.0.0" 30 | 31 | required_providers { 32 | oci = { 33 | source = "hashicorp/oci" 34 | version = ">= 4.79.0, < 5.0.0" 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/secret/documentation/secret_module_pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/modules/cloud-foundation-library/secret/documentation/secret_module_pattern.png -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/secret/examples/just-secret/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | #Auth Vars 6 | variable "tenancy_ocid" {} 7 | variable "region" {} 8 | variable "current_user_ocid" {} 9 | variable "fingerprint" { 10 | default = "" 11 | } 12 | variable "private_key_path" { 13 | default = "" 14 | } 15 | 16 | 17 | 18 | provider "oci" { 19 | tenancy_ocid = "${var.tenancy_ocid}" 20 | user_ocid = "${var.current_user_ocid}" 21 | fingerprint = "${var.fingerprint}" 22 | private_key_path = "${var.private_key_path}" 23 | region = "${var.region}" 24 | 25 | } 26 | 27 | terraform { 28 | 29 | required_version = ">= 1.0.0, < 2.0.0" 30 | 31 | required_providers { 32 | oci = { 33 | source = "hashicorp/oci" 34 | version = ">= 4.79.0, < 5.0.0" 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/streaming/outputs.tf: -------------------------------------------------------------------------------- 1 | ## Copyright © 2022, Oracle and/or its affiliates. 2 | ## All rights reserved. The Universal Permissive License (UPL), Version 1.0 as shown at http://oss.oracle.com/licenses/upl 3 | 4 | locals { 5 | streaming_poolID = { 6 | for stream_pool in oci_streaming_stream_pool.this : 7 | stream_pool.name => stream_pool.id 8 | } 9 | } 10 | 11 | locals { 12 | streaming_ID = { 13 | for stream in oci_streaming_stream.this : 14 | stream.name => stream.id 15 | } 16 | } 17 | 18 | output "streaming_poolID" { 19 | value = local.streaming_poolID 20 | } 21 | 22 | output "streaming_ID" { 23 | value = local.streaming_ID 24 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/tagging/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "tag_namespace" { 5 | value = [ for b in oci_identity_tag_namespace.this : b.name] 6 | } 7 | 8 | output "tag_keys" { 9 | value = [ for b in oci_identity_tag.this : b.name] 10 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/tagging/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "compartment_id" {} 5 | 6 | variable "tags" { 7 | description = "ArchitectureCenterTagNamespace" 8 | type = list(object({ 9 | tag_namespace = string 10 | tag_namespace_description = string 11 | tag_name = list(string) 12 | })) 13 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/volume/block.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_core_volume" "these" { 5 | for_each = { 6 | for k,v in var.bv_params : k => v if v.compartment_id != "" 7 | } 8 | availability_domain = each.value.ad 9 | compartment_id = each.value.compartment_id 10 | display_name = each.value.display_name 11 | size_in_gbs = each.value.bv_size 12 | defined_tags = each.value.defined_tags 13 | freeform_tags = each.value.freeform_tags 14 | } 15 | 16 | resource "oci_core_volume_attachment" "these" { 17 | for_each = { 18 | for k,v in var.bv_attach_params : k => v if v.display_name != "" 19 | } 20 | display_name = each.value.display_name 21 | attachment_type = each.value.attachment_type 22 | instance_id = each.value.instance_id 23 | volume_id = each.value.volume_id 24 | 25 | } 26 | 27 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/volume/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "DataVolumeOcids" { 5 | value = [ for b in oci_core_volume.these : b.id] 6 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/volume/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "bv_params" { 5 | type = map(object({ 6 | ad = string 7 | compartment_id = string 8 | display_name = string 9 | bv_size = number 10 | defined_tags = map(string) 11 | freeform_tags = map(string) 12 | })) 13 | default = {} 14 | } 15 | 16 | variable "bv_attach_params" { 17 | type = map(object({ 18 | display_name = string 19 | attachment_type = string 20 | instance_id = string 21 | volume_id = string 22 | })) 23 | default = {} 24 | } 25 | 26 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/waf/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "cname" { 5 | value = { for waas in oci_waas_waas_policy.this : 6 | waas.display_name => waas.cname 7 | } 8 | } 9 | 10 | output "waas" { 11 | value = { for waas in oci_waas_waas_policy.this : 12 | waas.display_name => waas.id 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/web-application-firewall/main.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2023, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_waf_web_app_firewall" "this" { 5 | for_each = var.waf_params 6 | backend_type = each.value.backend_type 7 | compartment_id = each.value.compartment_id 8 | load_balancer_id = each.value.load_balancer_id 9 | web_app_firewall_policy_id = oci_waf_web_app_firewall_policy.this[each.key].id 10 | defined_tags = each.value.defined_tags 11 | display_name = each.value.display_name 12 | freeform_tags = each.value.freeform_tags 13 | } 14 | 15 | resource "oci_waf_web_app_firewall_policy" "this" { 16 | for_each = var.waf_params 17 | compartment_id = each.value.compartment_id 18 | defined_tags = each.value.defined_tags 19 | display_name = each.value.display_name 20 | freeform_tags = each.value.freeform_tags 21 | } 22 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/web-application-firewall/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "waf" { 5 | value = length(oci_waf_web_app_firewall.this) > 0 ? oci_waf_web_app_firewall.this[*] : null 6 | } 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /cloud-foundation/modules/cloud-foundation-library/web-application-firewall/variables.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2023, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "waf_params" { 5 | type = map(object({ 6 | compartment_id = string 7 | backend_type = string 8 | display_name = string 9 | load_balancer_id = string 10 | defined_tags = map(string) 11 | freeform_tags = map(string) 12 | })) 13 | } 14 | -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/iam/iam-dynamic-group/init.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2022, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # terraform { 5 | # required_version = ">= 0.14.0" 6 | # required_providers { 7 | # oci = { 8 | # source = "oracle/oci" 9 | # } 10 | # } 11 | # } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/iam/iam-dynamic-group/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | ### Dynamic Group policy 5 | 6 | resource "oci_identity_dynamic_group" "these" { 7 | for_each = var.dynamic_groups 8 | name = each.key 9 | compartment_id = each.value.compartment_id 10 | description = each.value.description 11 | matching_rule = each.value.matching_rule 12 | 13 | #Optional 14 | # defined_tags = each.defined_tags 15 | # freeform_tags = each.freeform_tags 16 | } 17 | 18 | terraform { 19 | required_providers { 20 | oci = { 21 | source = "oracle/oci" 22 | version = ">= 5.30.0" 23 | } 24 | } 25 | required_version = ">= 1.5.5" 26 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/iam/iam-dynamic-group/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "dynamic_groups" { 5 | description = "The dynamic-groups indexed by group name." 6 | value = { for dg in oci_identity_dynamic_group.these : dg.name => dg } 7 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/iam/iam-dynamic-group/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "dynamic_groups" { 5 | type = map(object({ 6 | description = string 7 | compartment_id = string 8 | matching_rule = string 9 | })) 10 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/network/drg/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | # resource "oci_core_drg" "this" { 6 | # count = var.is_create_drg == true ? 1 : 0 7 | # compartment_id = var.compartment_id 8 | # display_name = "${var.service_label}-drg" 9 | # } 10 | 11 | 12 | resource "oci_core_drg" "this" { 13 | for_each = var.drg_params 14 | compartment_id = var.compartment_id 15 | display_name = each.value.name 16 | defined_tags = each.value.defined_tags 17 | } 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/network/drg/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # output "drg" { 5 | # description = "DRG information." 6 | # value = length(oci_core_drg.this) > 0 ? oci_core_drg.this[0] : null 7 | # } 8 | 9 | # output "drg_id" { 10 | # value = oci_core_drg.this.*.id 11 | # } 12 | 13 | output "drgs_list" { 14 | value = { 15 | for drg in oci_core_drg.this: 16 | drg.display_name => drg.id 17 | } 18 | } 19 | 20 | output "drgs_details" { 21 | description = "DRG information." 22 | value = length(oci_core_drg.this) > 0 ? oci_core_drg.this[*] : null 23 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/network/drg/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | variable "compartment_id" { 6 | description = "Compartment's OCID where VCN will be created." 7 | } 8 | 9 | # variable "service_label" { 10 | # description = "A service label to be used as part of resource names." 11 | # } 12 | 13 | # variable "is_create_drg" { 14 | # description = "Whether a DRG is to be created." 15 | # default = false 16 | # type = bool 17 | # } 18 | 19 | 20 | variable "drg_params" { 21 | type = map(object({ 22 | name = string 23 | cidr_rt = string 24 | defined_tags = map(string) 25 | })) 26 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/network/security/dhcp_options.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_core_dhcp_options" "these" { 5 | 6 | for_each = var.dhcp_options 7 | 8 | compartment_id = each.value.compartment_id 9 | vcn_id = each.value.vcn_id 10 | display_name = each.key 11 | 12 | // required 13 | options { 14 | type = each.value.options.type 15 | server_type = each.value.options.server_type 16 | } 17 | 18 | defined_tags = each.value.defined_tags 19 | freeform_tags = each.value.freeform_tags 20 | 21 | } 22 | -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/network/vcn-routing/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "subnets_route_tables" { 5 | description = "The managed subnets_route tables, indexed by display_name." 6 | value = { 7 | for rt in oci_core_route_table.these : 8 | rt.display_name => rt 9 | } 10 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/network/vcn-routing/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "compartment_id" { 5 | description = "Compartment OCID." 6 | type = string 7 | } 8 | 9 | variable "subnets_route_tables" { 10 | description = "Subnet Route Tables" 11 | type = map(object({ 12 | compartment_id = string, 13 | vcn_id = string, 14 | subnet_id = string, 15 | route_table_id = string, 16 | route_rules = list(object({ 17 | is_create = bool 18 | destination = string 19 | destination_type = string 20 | network_entity_id = string 21 | description = string 22 | })) 23 | defined_tags = map(string) 24 | })) 25 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/security/bastion/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "bastions_details" { 5 | value = {for g in oci_bastion_bastion.these : g.name => g} 6 | } 7 | 8 | output "sessions_details" { 9 | value = {for g in oci_bastion_session.these : g.display_name => g} 10 | } 11 | 12 | -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/security/bastion/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "bastions" { 5 | description = "Details of the Bastion resources to be created." 6 | type = map(object({ 7 | name = string, 8 | compartment_id = string, 9 | target_subnet_id = string, 10 | client_cidr_block_allow_list = list(string), 11 | max_session_ttl_in_seconds = number 12 | })) 13 | } 14 | 15 | variable "sessions" { 16 | description = "Details of sessions to be created." 17 | type = map(object({ 18 | session_type = string, 19 | bastion_id = string, 20 | ssh_public_key = string, 21 | private_instance_id = string, 22 | private_ip_address = string, 23 | user_name = string, 24 | port = string, 25 | display_name = string 26 | })) 27 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/security/policies/init.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2022, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # terraform { 5 | # required_version = ">= 0.14.0" 6 | # required_providers { 7 | # oci = { 8 | # source = "oracle/oci" 9 | # } 10 | # } 11 | # } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/security/policies/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | resource "oci_identity_policy" "these" { 5 | for_each = var.policies 6 | name = each.key 7 | compartment_id = each.value.compartment_id 8 | description = each.value.description 9 | statements = each.value.statements 10 | } 11 | 12 | terraform { 13 | required_providers { 14 | oci = { 15 | source = "oracle/oci" 16 | version = ">= 5.30.0" 17 | } 18 | } 19 | required_version = ">= 1.5.5" 20 | } -------------------------------------------------------------------------------- /cloud-foundation/modules/oci-cis-landingzone-quickstart/security/policies/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "policies" { 5 | type = map(object({ 6 | compartment_id = string 7 | description = string, 8 | statements = list(string) 9 | })) 10 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Data-platform-data-lakehouse-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Data-platform-data-lakehouse-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Data-platform-data-warehouse-with-e-business-integration-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Data-platform-data-warehouse-with-e-business-integration-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Data-platform-departmental-data-warehouse-for-line-of-business-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Data-platform-departmental-data-warehouse-for-line-of-business-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Deploy-Autonomous-Database-and-the-MovieStream-data-sets-for-Oracle-LiveLabs-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Deploy-Autonomous-Database-and-the-MovieStream-data-sets-for-Oracle-LiveLabs-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Deploy-ChatDB-Autonomous-Database-Select-AI-demonstration-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Deploy-ChatDB-Autonomous-Database-Select-AI-demonstration-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM/invoking the scripts.md: -------------------------------------------------------------------------------- 1 | https://cloud.oracle.com/resourcemanager/stacks/create?region=home&zipUrl=https://github.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/releases/download/v1.0.0/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM.zip&zipUrlVariables={%22tag%22:%22moviestream-analytics%22,%22db_compute_count%22:4,%22db_name%22:%22MovieStreamWorkshop%22} -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Create ADW Database with Endpoint in private subnet or public ADW 5 | module "adb" { 6 | source = "./modules/cloud-foundation-library/database/adb" 7 | adw_params = local.adw_params 8 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration-RM/scripts/tables.sql.tmpl: -------------------------------------------------------------------------------- 1 | -- **Copyright © 2024, Oracle and/or its affiliates. 2 | -- **All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | -- Tables will be installed in the current schema 5 | -- Connect as the MOVIESTREAM user 6 | 7 | begin 8 | workshop.add_dataset 9 | ( 10 | tag => '${tag}', 11 | run_post_load_procedures => ${run_post_load_procedures} 12 | ); 13 | 14 | end; 15 | / 16 | 17 | -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Enterprise-data-warehousing-a-predictive-maintenance-example-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Enterprise-data-warehousing-a-predictive-maintenance-example-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/GoldenGate-Stream-Analytics-for-production-workloads-Full-Solution-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/GoldenGate-Stream-Analytics-for-production-workloads-Full-Solution-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/GoldenGate-Stream-Analytics-for-production-workloads-Small-Footprint-Solution-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/GoldenGate-Stream-Analytics-for-production-workloads-Small-Footprint-Solution-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Informatica-Secure-Agent-create-a-secure-ready-to-go-complete-data-platform-on-OCI-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Informatica-Secure-Agent-create-a-secure-ready-to-go-complete-data-platform-on-OCI-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Informatica-Secure-AgentCreate-a-ready-to-go-development-data-platform-on-OCI-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Informatica-Secure-AgentCreate-a-ready-to-go-development-data-platform-on-OCI-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Machine-learning-platform-on-Autonomous-Data-Warehouse-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Machine-learning-platform-on-Autonomous-Data-Warehouse-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Modern-data-warehousing-a-polyglot-integration-example-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Modern-data-warehousing-a-polyglot-integration-example-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Oracle-MovieStream-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Oracle-MovieStream-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/OracleDataModel-Manufacturing-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/OracleDataModel-Manufacturing-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/PublicSector-Crowd_Counting-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/PublicSector-Crowd_Counting-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/RAG-in-a-Box-Easy-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/RAG-in-a-Box-Easy-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/RAG-in-a-Box-Hybrid-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/RAG-in-a-Box-Hybrid-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/RAG-in-a-Box-Vector-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/RAG-in-a-Box-Vector-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/README.md: -------------------------------------------------------------------------------- 1 | # Oracle Cloud Foundation Terraform Solution - Departmental data warehousing - business domain analytics 2 | 3 | 4 | ## Overview 5 | This is the folder for the Oracle OCI Console Resource Manager files. 6 | They will be automatically generated when something in the modules and/or solutions folders changes. -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Sam-Workbench-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Sam-Workbench-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions-for-oracle-res-mgr/Telco-Asset_Value_Maximization-RM.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions-for-oracle-res-mgr/Telco-Asset_Value_Maximization-RM.zip -------------------------------------------------------------------------------- /cloud-foundation/solutions/ATP Deployment/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/ATP Deployment/modules/provisioner/file_envs.sh: -------------------------------------------------------------------------------- 1 | unset ORACLE_HOME 2 | export JAVA_HOME=/usr/java/latest 3 | export PATH=$JAVA_HOME/bin:$PATH 4 | alias sql=/opt/oracle/sqlcl/bin/sql -------------------------------------------------------------------------------- /cloud-foundation/solutions/ATP Deployment/modules/provisioner/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "host" {} 5 | variable "private_key" {} 6 | variable "atp_url" { 7 | default = "" 8 | } 9 | variable "db_password" { 10 | default = "" 11 | } 12 | 13 | variable "conn_db" { 14 | default = "" 15 | } 16 | 17 | 18 | variable "db_name" { 19 | default = "" 20 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/ATP Deployment/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | terraform { 5 | required_providers { 6 | oci = { 7 | source = "oracle/oci" 8 | version = ">= 5.30.0" 9 | } 10 | } 11 | required_version = ">= 1.5.5" 12 | } 13 | 14 | provider "oci" { 15 | tenancy_ocid = var.tenancy_ocid 16 | user_ocid = var.user_ocid 17 | fingerprint = var.fingerprint 18 | private_key_path = var.private_key_path 19 | region = var.region 20 | disable_auto_retries = false 21 | } 22 | 23 | provider "oci" { 24 | alias = "homeregion" 25 | tenancy_ocid = var.tenancy_ocid 26 | user_ocid = var.user_ocid 27 | fingerprint = var.fingerprint 28 | private_key_path = var.private_key_path 29 | region = data.oci_identity_region_subscriptions.home_region_subscriptions.region_subscriptions[0].region_name 30 | disable_auto_retries = false 31 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-data-lakehouse/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-data-lakehouse/functions/decoder/dockerfile: -------------------------------------------------------------------------------- 1 | FROM fnproject/python:3.6-dev as build-stage 2 | 3 | WORKDIR /function 4 | 5 | ADD requirements.txt /function/ 6 | 7 | RUN pip3 install --target /python/ --no-cache --no-cache-dir -r requirements.txt && \ 8 | rm -fr ~/.cache/pip /tmp* requirements.txt func.yaml Dockerfile .venv 9 | 10 | ADD . /function/ 11 | 12 | RUN rm -fr /function/.pip_cache 13 | 14 | FROM fnproject/python:3.6 15 | 16 | WORKDIR /function 17 | 18 | COPY --from=build-stage /function /function 19 | 20 | COPY --from=build-stage /python /python 21 | 22 | ENV PYTHONPATH=/python 23 | 24 | ENTRYPOINT ["/python/bin/fdk", "/function/func.py", "handler"] 25 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-data-lakehouse/functions/decoder/func.yaml: -------------------------------------------------------------------------------- 1 | schema_version: 20230608 2 | name: decoder 3 | version: 0.0.50 4 | runtime: python 5 | entrypoint: /python/bin/fdk /function/func.py handler 6 | memory: 256 7 | timeout: 300 -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-data-lakehouse/functions/decoder/requirements.txt: -------------------------------------------------------------------------------- 1 | fdk 2 | requests 3 | oci 4 | pandas 5 | pyarrow -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-data-lakehouse/functions/decoder/test.json: -------------------------------------------------------------------------------- 1 | [{"stream": "mynewstream","partition": "0","key": null,"value": "eyJuYW1lIjoiaWdvciIsICJsb2NhdGlvbiI6ICJEdWJsaW4ifQ==","offset": 0,"timestamp": "2018-04-26T01:03:06.051Z"},{"stream": "mynewstream","partition": "0","key": null,"value": "eyJuYW1lIjoiYnJpYW4iLCJmaWVsZDEiOiJ0ZXN0In0=","offset": 0,"timestamp": "2018-04-26T01:03:06.051Z"}] -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-data-warehouse-with-e-business-integration/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-data-warehouse-with-e-business-integration/userdata/bastion-bootstrap: -------------------------------------------------------------------------------- 1 | #cloud-config 2 | 3 | write_files: 4 | # Create file to be used when enabling ip forwarding 5 | - path: /etc/sysctl.d/98-ip-forward.conf 6 | content: | 7 | net.ipv4.ip_forward = 1 8 | 9 | runcmd: 10 | # Run firewall commands to enable masquerading and port forwarding 11 | # Enable ip forwarding by setting sysctl kernel parameter 12 | - firewall-offline-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o ens3 -j MASQUERADE 13 | - firewall-offline-cmd --direct --add-rule ipv4 filter FORWARD 0 -i ens3 -j ACCEPT 14 | - /bin/systemctl restart firewalld 15 | - sysctl -p /etc/sysctl.d/98-ip-forward.conf -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-data-warehouse-with-e-business-integration/userdata/odi-bootstrap: -------------------------------------------------------------------------------- 1 | #cloud-config 2 | 3 | write_files: 4 | 5 | runcmd: 6 | # Enable and bring up vnc 7 | - echo "welcome1" | vncpasswd -f > /home/opc/.vnc/passwd 8 | - chmod 0600 /home/opc/.vnc/passwd 9 | - sudo systemctl enable vncodi.service 10 | - sudo systemctl start vncodi.service 11 | 12 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Data-platform-departmental-data-warehouse-for-line-of-business/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-Autonomous-Database-and-the-MovieStream-data-sets-for-Oracle-LiveLabs/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-Autonomous-Database-and-the-MovieStream-data-sets-for-Oracle-LiveLabs/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Create ADW Database with Endpoint in private subnet or public ADW 5 | module "adb" { 6 | source = "../../../cloud-foundation/modules/cloud-foundation-library/database/adb" 7 | adw_params = local.adw_params 8 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-Autonomous-Database-and-the-MovieStream-data-sets-for-Oracle-LiveLabs/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Autonomous Database Outputs: 5 | 6 | output "adb_admin_password" { 7 | value = "WlsAtpDb1234#" 8 | } 9 | 10 | output "adb_user_name" { 11 | value = "MOVIESTREAM" 12 | } 13 | 14 | output "adb_user_password" { 15 | value = "watchS0meMovies#" 16 | } 17 | 18 | output "ADW_Database_db_connection" { 19 | value = module.adb.db_connection 20 | } 21 | 22 | output "ADW_Database_ip" { 23 | value = module.adb.private_endpoint_ip 24 | } 25 | 26 | output "Database_Actions" { 27 | value = module.adb.url 28 | } 29 | 30 | output "graph_studio_url" { 31 | value = module.adb.graph_studio_url 32 | } 33 | 34 | output "machine_learning_user_management_url" { 35 | value = module.adb.machine_learning_user_management_url 36 | } 37 | 38 | output "database_fully_qualified_name" { 39 | value = module.adb.database_fully_qualified_name 40 | } 41 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-Autonomous-Database-and-the-MovieStream-data-sets-for-Oracle-LiveLabs/scripts/tables.sql.tmpl: -------------------------------------------------------------------------------- 1 | -- **Copyright © 2023, Oracle and/or its affiliates. 2 | -- **All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | -- Tables will be installed in the current schema 5 | -- Connect as the MOVIESTREAM user 6 | 7 | begin 8 | workshop.add_dataset 9 | ( 10 | tag => '${tag}', 11 | run_post_load_procedures => ${run_post_load_procedures} 12 | ); 13 | end; 14 | / 15 | 16 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-ChatDB-Autonomous-Database-Select-AI-demonstration/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-ChatDB-Autonomous-Database-Select-AI-demonstration/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Create ADW Database with Endpoint in private subnet or public ADW 5 | module "adb" { 6 | source = "./modules/cloud-foundation-library/database/adb" 7 | adw_params = local.adw_params 8 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-ChatDB-Autonomous-Database-Select-AI-demonstration/scripts/tables.sql.tmpl: -------------------------------------------------------------------------------- 1 | -- **Copyright © 2023, Oracle and/or its affiliates. 2 | -- **All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | -- Tables will be installed in the current schema 5 | -- Connect as the MOVIESTREAM user 6 | 7 | begin 8 | workshop.add_dataset 9 | ( 10 | tag => '${tag}', 11 | run_post_load_procedures => ${run_post_load_procedures} 12 | ); 13 | 14 | DBMS_CLOUD.CREATE_CREDENTIAL ( 15 | credential_name => 'OPENAI_CRED', 16 | username => 'OPENAI', 17 | password => '${llm_secret}' 18 | ); 19 | 20 | end; 21 | / 22 | 23 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Create ADW Database with Endpoint in private subnet or public ADW 5 | module "adb" { 6 | source = "./modules/cloud-foundation-library/database/adb" 7 | adw_params = local.adw_params 8 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-ChatDB-Autonomous-Database-oci-genai-demonstration/scripts/tables.sql.tmpl: -------------------------------------------------------------------------------- 1 | -- **Copyright © 2024, Oracle and/or its affiliates. 2 | -- **All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | -- Tables will be installed in the current schema 5 | -- Connect as the MOVIESTREAM user 6 | 7 | begin 8 | workshop.add_dataset 9 | ( 10 | tag => '${tag}', 11 | run_post_load_procedures => ${run_post_load_procedures} 12 | ); 13 | 14 | end; 15 | / 16 | 17 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-Exadata-Database-Service-with-cross-region-Data-Guard/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Deploy-Exadata-Database-Service-with-in-region-Data-Guard/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/functions/decoder/dockerfile: -------------------------------------------------------------------------------- 1 | FROM fnproject/python:3.6-dev as build-stage 2 | 3 | WORKDIR /function 4 | 5 | ADD requirements.txt /function/ 6 | 7 | RUN pip3 install --target /python/ --no-cache --no-cache-dir -r requirements.txt && \ 8 | rm -fr ~/.cache/pip /tmp* requirements.txt func.yaml Dockerfile .venv 9 | 10 | ADD . /function/ 11 | 12 | RUN rm -fr /function/.pip_cache 13 | 14 | FROM fnproject/python:3.6 15 | 16 | WORKDIR /function 17 | 18 | COPY --from=build-stage /function /function 19 | 20 | COPY --from=build-stage /python /python 21 | 22 | ENV PYTHONPATH=/python 23 | 24 | ENTRYPOINT ["/python/bin/fdk", "/function/func.py", "handler"] 25 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/functions/decoder/func.yaml: -------------------------------------------------------------------------------- 1 | schema_version: 20180708 2 | name: decoder 3 | version: 0.0.50 4 | runtime: python 5 | entrypoint: /python/bin/fdk /function/func.py handler 6 | memory: 256 7 | timeout: 300 -------------------------------------------------------------------------------- /cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/functions/decoder/requirements.txt: -------------------------------------------------------------------------------- 1 | fdk 2 | requests 3 | oci 4 | pandas 5 | pyarrow -------------------------------------------------------------------------------- /cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/functions/decoder/test.json: -------------------------------------------------------------------------------- 1 | [{"stream": "mynewstream","partition": "0","key": null,"value": "eyJuYW1lIjoiaWdvciIsICJsb2NhdGlvbiI6ICJEdWJsaW4ifQ==","offset": 0,"timestamp": "2018-04-26T01:03:06.051Z"},{"stream": "mynewstream","partition": "0","key": null,"value": "eyJuYW1lIjoiYnJpYW4iLCJmaWVsZDEiOiJ0ZXN0In0=","offset": 0,"timestamp": "2018-04-26T01:03:06.051Z"}] -------------------------------------------------------------------------------- /cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/images/edit_svc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/images/edit_svc.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/images/svc-policy-creation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/images/svc-policy-creation.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Enterprise-data-warehousing-a-predictive-maintenance-example/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "Buckets" { 5 | value = module.os.buckets 6 | } 7 | 8 | output "streaming_poolID" { 9 | value = module.streaming.streaming_poolID 10 | } 11 | 12 | output "streaming_ID" { 13 | value = module.streaming.streaming_ID 14 | } 15 | 16 | output "apps" { 17 | value = module.functions.apps 18 | } 19 | 20 | output "functions" { 21 | value = module.functions.functions 22 | } 23 | 24 | output "dataflow" { 25 | value = module.dataflowapp.dataflow 26 | } 27 | 28 | output "datascience" { 29 | value = module.datascience.datascience 30 | } 31 | 32 | output "notebook" { 33 | value = module.datascience.notebook 34 | } 35 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/GoldenGate-Stream-Analytics-for-production-workloads-Full-Solution/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/GoldenGate-Stream-Analytics-for-production-workloads-Small-Footprint-Solution/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/GoldenGate-Stream-Analytics-for-production-workloads-Small-Footprint-Solution/outputs.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2023, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "INSTRUCTIONS" { 5 | value = "Please scroll up, before completing the deployment and save all the informations regarding connectivity, users, passwords" 6 | } 7 | 8 | output "OSA_UI" { 9 | value = "You can access OSA UI using https:///osa" 10 | } 11 | 12 | output "Spark_UI" { 13 | value = "Access Spark UI using https:///spark" 14 | } 15 | 16 | output "compute_linux_instances" { 17 | value = module.compute.linux_instances 18 | } 19 | 20 | output "all_instances" { 21 | value = module.compute.all_instances 22 | } 23 | 24 | output "all_private_ips" { 25 | value = module.compute.all_private_ips 26 | } 27 | 28 | output "fss_filesystems" { 29 | value = module.fss.filesystems 30 | } 31 | 32 | output "fss_mount_targets" { 33 | value = module.fss.mount_targets 34 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Hello-WebServer/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Hello-WebServer/locals.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | data "oci_identity_availability_domains" "ADs" { 5 | compartment_id = var.tenancy_ocid 6 | } 7 | 8 | data "oci_core_images" "linux_image" { 9 | compartment_id = var.compartment_id 10 | operating_system = "Oracle Linux" 11 | shape = "VM.Standard2.1" 12 | } 13 | 14 | data "oci_core_services" "sgw_services" { 15 | filter { 16 | name = "cidr_block" 17 | values = ["all-.*-services-in-oracle-services-network"] 18 | regex = true 19 | } 20 | } 21 | 22 | locals{ 23 | oracle_linux = lookup(data.oci_core_images.linux_image.images[0],"id") 24 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Hello-WebServer/modules/provisioner/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "host" {} 5 | 6 | variable "private_key" {} 7 | 8 | variable "atp_url" { 9 | default = "" 10 | } 11 | 12 | variable "db_password" { 13 | default = "" 14 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Hello-WebServer/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | terraform { 5 | required_version = ">= 0.14.0" 6 | required_providers { 7 | oci = { 8 | source = "oracle/oci" 9 | version = ">= 4.37.0" 10 | } 11 | } 12 | } 13 | 14 | provider "oci" { 15 | tenancy_ocid = var.tenancy_ocid 16 | user_ocid = var.user_ocid 17 | fingerprint = var.fingerprint 18 | private_key_path = var.private_key_path 19 | region = var.region 20 | disable_auto_retries = false 21 | } 22 | 23 | provider "oci" { 24 | alias = "homeregion" 25 | tenancy_ocid = var.tenancy_ocid 26 | user_ocid = var.user_ocid 27 | fingerprint = var.fingerprint 28 | private_key_path = var.private_key_path 29 | region = data.oci_identity_region_subscriptions.home_region_subscriptions.region_subscriptions[0].region_name 30 | disable_auto_retries = false 31 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Hello-WebServer/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # OCI API authentification credentials 5 | 6 | terraform { 7 | required_version = ">= 0.14.0" 8 | } 9 | 10 | variable "tenancy_ocid" {} 11 | variable "region" {} 12 | variable "compartment_id" {} 13 | variable "user_ocid" {} 14 | variable "fingerprint" {} 15 | variable "private_key_path" {} 16 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Informatica-Secure-Agent-create-a-secure-ready-to-go-complete-data-platform-on-OCI/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Informatica-Secure-Agent-create-a-secure-ready-to-go-complete-data-platform-on-OCI/images/infa-bastion-adb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Informatica-Secure-Agent-create-a-secure-ready-to-go-complete-data-platform-on-OCI/images/infa-bastion-adb.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Informatica-Secure-Agent-create-a-secure-ready-to-go-complete-data-platform-on-OCI/scripts/bastion-bootstrap: -------------------------------------------------------------------------------- 1 | #cloud-config 2 | 3 | write_files: 4 | # Create file to be used when enabling ip forwarding 5 | - path: /etc/sysctl.d/98-ip-forward.conf 6 | content: | 7 | net.ipv4.ip_forward = 1 8 | 9 | runcmd: 10 | # Run firewall commands to enable masquerading and port forwarding 11 | # Enable ip forwarding by setting sysctl kernel parameter 12 | - firewall-offline-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o ens3 -j MASQUERADE 13 | - firewall-offline-cmd --direct --add-rule ipv4 filter FORWARD 0 -i ens3 -j ACCEPT 14 | - /bin/systemctl restart firewalld 15 | - sysctl -p /etc/sysctl.d/98-ip-forward.conf -------------------------------------------------------------------------------- /cloud-foundation/solutions/Informatica-Secure-AgentCreate-a-ready-to-go-development-data-platform-on-OCI/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Informatica-Secure-AgentCreate-a-ready-to-go-development-data-platform-on-OCI/images/infa-no-bastion-adb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Informatica-Secure-AgentCreate-a-ready-to-go-development-data-platform-on-OCI/images/infa-no-bastion-adb.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Machine-learning-platform-on-Autonomous-Data-Warehouse/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Modern-data-warehousing-a-polyglot-integration-example/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/OCI-Observability-Hybrid-Configurations-monitoring-on-prem-DBs-from-the-cloud/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/OCI-Observability-Hybrid-Configurations-monitoring-on-prem-DBs-from-the-cloud/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Calling the External Databases module 5 | 6 | module "external_db" { 7 | source = "../../../cloud-foundation/modules/cloud-foundation-library/database/oci_external_databases" 8 | register_external_container_db = local.register_external_container_db 9 | register_external_pluggable_db = local.register_external_pluggable_db 10 | connector_external_container_db = local.connector_external_container_db 11 | connector_external_pluggable_db = local.connector_external_pluggable_db 12 | } 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/OCI-Observability-Hybrid-Configurations-monitoring-on-prem-DBs-from-the-cloud/outputs.tf: -------------------------------------------------------------------------------- 1 | # # Copyright © 2023, Oracle and/or its affiliates. 2 | # # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | output "external_containers_database" { 5 | value = module.external_db.external_containers_database 6 | } 7 | 8 | output "external_pluggable_database" { 9 | value = module.external_db.external_pluggable_database 10 | } 11 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/OCI-Observability-Hybrid-Configurations-monitoring-on-prem-DBs-from-the-cloud/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | terraform { 5 | required_version = ">= 0.14.0" 6 | } 7 | 8 | variable "tenancy_ocid" { 9 | type = string 10 | default = "" 11 | } 12 | 13 | variable "region" { 14 | type = string 15 | default = "" 16 | } 17 | 18 | variable "compartment_id" { 19 | type = string 20 | default = "" 21 | } 22 | 23 | variable "user_ocid" { 24 | type = string 25 | default = "" 26 | } 27 | 28 | variable "fingerprint" { 29 | type = string 30 | default = "" 31 | } 32 | 33 | variable "private_key_path" { 34 | type = string 35 | default = "" 36 | } 37 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/OCI-Observability-Solution-Level1/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/OCI-Observability-Solution-Level2/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Oracle-MovieStream/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Oracle-MovieStream/modules/provisioner/file_envs.sh: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | unset ORACLE_HOME 5 | export JAVA_HOME=/usr/java/latest 6 | export PATH=$JAVA_HOME/bin:$PATH 7 | alias sql=/opt/oracle/sqlcl/bin/sql -------------------------------------------------------------------------------- /cloud-foundation/solutions/Oracle-MovieStream/modules/provisioner/init.sql: -------------------------------------------------------------------------------- 1 | -- **Copyright © 2023, Oracle and/or its affiliates. 2 | -- **All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | -- **To install the database objects required for the demo. Connect to ADB as ADMIN:** 6 | 7 | declare 8 | l_uri varchar2(500) := 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/adwc4pm/b/workshop_utilities/o/movieapp/movieapp-initialize-db.sql'; 9 | begin 10 | dbms_cloud_repo.install_sql( 11 | content => to_clob(dbms_cloud.get_object(object_uri => l_uri)) 12 | ); 13 | end; 14 | / 15 | 16 | exit; 17 | / -------------------------------------------------------------------------------- /cloud-foundation/solutions/Oracle-MovieStream/modules/provisioner/oml_sample.py.tpl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | import oml 4 | from oml.mlx import GlobalFeatureImportance 5 | import pandas as pd 6 | import numpy as np 7 | from sklearn import datasets 8 | 9 | oml.connect(user="moviestream", password="watchS0meMovies#", dsn="${db_name}_high", automl="${db_name}_high") 10 | 11 | bc_ds = datasets.load_breast_cancer() 12 | bc_data = bc_ds.data.astype(float) 13 | X = pd.DataFrame(bc_data, columns=bc_ds.feature_names) 14 | y = pd.DataFrame(bc_ds.target, columns=['TARGET']) 15 | row_id = pd.DataFrame(np.arange(bc_data.shape[0]), 16 | columns=['CASE_ID']) 17 | df = oml.create(pd.concat([X, y, row_id], axis=1), 18 | table='BreastCancer') -------------------------------------------------------------------------------- /cloud-foundation/solutions/Oracle-MovieStream/modules/provisioner/tables.sql: -------------------------------------------------------------------------------- 1 | -- -- **Copyright © 2023, Oracle and/or its affiliates. 2 | -- -- **All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | -- Then, connect as MOVIESTREAM user and run the following: 6 | -- *Moviestream password is hardcoded to: watchS0meMovies#* 7 | 8 | declare 9 | l_uri varchar2(500) := 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/adwc4pm/b/workshop_utilities/o/movieapp/movieapp-add-data.sql'; 10 | begin 11 | dbms_cloud_repo.install_sql( 12 | content => to_clob(dbms_cloud.get_object(object_uri => l_uri)) 13 | ); 14 | end; 15 | / 16 | 17 | exit; 18 | / -------------------------------------------------------------------------------- /cloud-foundation/solutions/Oracle-MovieStream/modules/provisioner/tables.sql.tmpl: -------------------------------------------------------------------------------- 1 | -- **Copyright © 2023, Oracle and/or its affiliates. 2 | -- **All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | -- Tables will be installed in the current schema 5 | -- Connect as the MOVIESTREAM user 6 | 7 | -- begin 8 | -- workshop.add_dataset 9 | -- ( 10 | -- tag => '${tag}', 11 | -- run_post_load_procedures => ${run_post_load_procedures} 12 | -- ); 13 | -- end; 14 | -- / 15 | 16 | -- exit; 17 | -- / -------------------------------------------------------------------------------- /cloud-foundation/solutions/Oracle-MovieStream/modules/provisioner/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "host" {} 5 | 6 | variable "private_key" {} 7 | 8 | variable "atp_url" { 9 | default = "" 10 | } 11 | 12 | variable "db_password" { 13 | default = "" 14 | } 15 | 16 | variable "conn_db" { 17 | default = "" 18 | } 19 | 20 | variable "db_name" { 21 | default = "" 22 | } 23 | 24 | variable "dbhostname" { 25 | default = "" 26 | } 27 | 28 | # variable "tag" { 29 | # default = "" 30 | # } 31 | 32 | # variable "run_post_load_procedures" { 33 | # default = "" 34 | # } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Oracle-MovieStream/scripts/bastion-bootstrap: -------------------------------------------------------------------------------- 1 | #cloud-config 2 | 3 | write_files: 4 | # Create file to be used when enabling ip forwarding 5 | - path: /etc/sysctl.d/98-ip-forward.conf 6 | content: | 7 | net.ipv4.ip_forward = 1 8 | 9 | runcmd: 10 | # Run firewall commands to enable masquerading and port forwarding 11 | # Enable ip forwarding by setting sysctl kernel parameter 12 | - firewall-offline-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o ens3 -j MASQUERADE 13 | - firewall-offline-cmd --direct --add-rule ipv4 filter FORWARD 0 -i ens3 -j ACCEPT 14 | - /bin/systemctl restart firewalld 15 | - sysctl -p /etc/sysctl.d/98-ip-forward.conf -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step1.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step2.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step3.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step4.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step5.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step6.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step7.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step8.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/OracleDataModel-Manufacturing/images/step9.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/modules/provisioner/config.tpl: -------------------------------------------------------------------------------- 1 | [DEFAULT] 2 | user=${ociUserId} 3 | fingerprint=${ociKeyFingerprint} 4 | key_file=/home/opc/.oci/oci_api_key.pem 5 | tenancy=${ociTenancyId} 6 | region=${ociRegion} 7 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/modules/provisioner/file_envs.sh: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | unset ORACLE_HOME 5 | export JAVA_HOME=/usr/java/latest 6 | export PATH=$JAVA_HOME/bin:$PATH 7 | alias sql=/opt/oracle/sqlcl/bin/sql -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/modules/provisioner/restore_mysnapshot.json: -------------------------------------------------------------------------------- 1 | { 2 | "snapshot": { 3 | "id" : "35b34a1d-43c7-4844-bacf", 4 | "password" : "Admin123" 5 | } 6 | } 7 | 8 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/OracleDataModel-Manufacturing/oci_api_key.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN RSA PRIVATE KEY----- 2 | MIIEpAIBAAKCAQEAypc6k1Z004xrXauf9W0ez95zqI6IOuvsyi4k8U2L45fV4BA1 3 | m67ATlKIO/obPSdjugwGC9+O36F94qgYWlKd3nFaGao43Nj/VI9CUrC4cE42oeLW 4 | mU6cg7z/4o3VfVv+9zv/2Si//JoEYMcq94OR5HrnmUYPZszfiTjfcwDtNihKCkIX 5 | UXaDHlF1QwomKHaix3uDs3YHyBrTEP/yD3IpMYWJQ3Vjukxjg0xN2Bhk0C3RZdf5 6 | QLrc1zO+00Rjyd9kyaUrc7FRD2NvTzDwCTcFT1PjQxPc2htcP7xPhLgFNhhmzZh1 7 | pq40xWbvpCZO7q0HkYeJC3EH0YtFwJ9wI+3gjwIDAQABAoIBAQCgKdchTKSn6sen 8 | Elwvx8koRZHinGyPSJ23aavDKa+CizOHJMl8/zcBtLYH1L9cJZvuJjtRf7iQjDfd 9 | zU8TeWVdyveUesLhtpyF2Yxxm0z1XKBMc+183m1WqUETd1Zk+Solg8XNhS3jIlB7 10 | ..... 11 | ..... 12 | ..... 13 | MziY2DIyoHOtYZFYyH2rPy9VEEXwO7BG/Z79Rn1A68/poE7m7F9nO517mraQMNl2 14 | PAymLQUCgYA5Zv69Fc7JHA3Hejd5V9n7M0sB8dkqOfsp8OFn0GcRv6XI9hNn2gW2 15 | 2K6TKSk2oUSI7fXB/1uXWEj/+k+j2NcGfiHLV+HX/HnKbcciM8aLdIsm3yhiqrtm 16 | kt4aUQma/o6Y2iamiKQPLw/bkQgB/uba850CIXsS2LQJqcoEQ671hw== 17 | -----END RSA PRIVATE KEY----- 18 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2024, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/PublicSector-Crowd_Counting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/PublicSector-Crowd_Counting.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/PublicSector-Crowd_Counting_arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/PublicSector-Crowd_Counting_arch.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step1.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step2.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step3.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step4.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step5.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step6.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/PublicSector-Crowd_Counting/images/step7.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/modules/provisioner/config.tpl: -------------------------------------------------------------------------------- 1 | [DEFAULT] 2 | user=${ociUserId} 3 | fingerprint=${ociKeyFingerprint} 4 | key_file=/home/opc/.oci/oci_api_key.pem 5 | tenancy=${ociTenancyId} 6 | region=${ociRegion} 7 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/modules/provisioner/db.yaml.tpl: -------------------------------------------------------------------------------- 1 | db: 2 | - name: ${db_name} 3 | enabled: true # true: inserted into DB, false: no access to DB 4 | dsn: ${db_name}_high # TNS name for DB 5 | user: DEMO # User name for demo schema 6 | password: ${db_password} # User password 7 | adminpw: ${db_password} # ADB ADMIN passwrod 8 | https_proxy: # Proxy setting if needed 9 | https_port: # Proxy setting if needed 10 | llmpw: ${llmpw} # Token of the LLM provided by openai 11 | 12 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/modules/provisioner/restore_mysnapshot.json: -------------------------------------------------------------------------------- 1 | { 2 | "snapshot": { 3 | "id" : "35b34a1d-43c7-4844-bacf", 4 | "password" : "CrowdCountAdmin123" 5 | } 6 | } 7 | 8 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/PublicSector-Crowd_Counting/scripts/ui-bootstrap: -------------------------------------------------------------------------------- 1 | #cloud-config 2 | 3 | write_files: 4 | # Create file to be used when enabling ip forwarding 5 | - path: /etc/sysctl.d/98-ip-forward.conf 6 | content: | 7 | net.ipv4.ip_forward = 1 8 | 9 | runcmd: 10 | - firewall-offline-cmd --add-port=80/tcp 11 | - firewall-offline-cmd --add-port=22/tcp 12 | - firewall-offline-cmd --add-port=5000/tcp 13 | - systemctl stop firewalld 14 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/images/diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/RAG-in-a-Box-Easy/images/diagram.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/images/easyraginabox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/RAG-in-a-Box-Easy/images/easyraginabox.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Create ADW Database with Endpoint in private subnet or public ADW 5 | module "adb" { 6 | source = "./modules/cloud-foundation-library/database/adb" 7 | adw_params = local.adw_params 8 | } 9 | 10 | # Calling the Object Storage module 11 | module "os" { 12 | source = "./modules/cloud-foundation-library/object-storage" 13 | depends_on = [module.adb] 14 | tenancy_ocid = var.tenancy_ocid 15 | bucket_params = { 16 | for k,v in local.bucket_params : k => v if v.compartment_id != "" 17 | } 18 | } 19 | 20 | # Ensure the bucket deletion happens after objects are removed 21 | resource "null_resource" "ensure_bucket_deletion_order" { 22 | depends_on = [null_resource.delete_files_from_object_storage] 23 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/modules/cloud-foundation-library/object-storage/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | data "oci_objectstorage_namespace" "os" { 5 | compartment_id = var.tenancy_ocid 6 | } 7 | 8 | resource "oci_objectstorage_bucket" "os" { 9 | for_each = { 10 | for k,v in var.bucket_params : k => v if v.compartment_id != "" 11 | } 12 | compartment_id = each.value.compartment_id 13 | name = each.value.name 14 | namespace = data.oci_objectstorage_namespace.os.namespace 15 | access_type = each.value.access_type 16 | storage_tier = each.value.storage_tier 17 | object_events_enabled = each.value.events_enabled 18 | defined_tags = each.value.defined_tags 19 | } 20 | 21 | terraform { 22 | required_providers { 23 | oci = { 24 | source = "oracle/oci" 25 | version = ">= 5.30.0" 26 | } 27 | } 28 | required_version = ">= 1.5.5" 29 | } 30 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/modules/cloud-foundation-library/object-storage/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # output "buckets" { 5 | # value = { 6 | # for bucket in oci_objectstorage_bucket.os: 7 | # bucket.name => bucket.access_type 8 | # } 9 | # } 10 | 11 | 12 | output "buckets_id"{ 13 | value = { 14 | for bucket in oci_objectstorage_bucket.os: 15 | bucket.name => {"compartment_id": bucket.compartment_id, "id": bucket.id} 16 | } 17 | } 18 | 19 | 20 | output "buckets" { 21 | description = "Buckets informations." 22 | value = length(oci_objectstorage_bucket.os) > 0 ? oci_objectstorage_bucket.os[*] : null 23 | } 24 | 25 | output "bucket_id" { 26 | value = { 27 | for bucket in oci_objectstorage_bucket.os : 28 | bucket.name => bucket.bucket_id 29 | } 30 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/modules/cloud-foundation-library/object-storage/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | variable "tenancy_ocid" { 6 | type = string 7 | } 8 | 9 | variable "bucket_params" { 10 | type = map(object({ 11 | compartment_id = string 12 | name = string 13 | access_type = string 14 | storage_tier = string 15 | events_enabled = bool 16 | defined_tags = map(string) 17 | })) 18 | } 19 | 20 | 21 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | terraform { 5 | required_version = ">= 1.2.0" 6 | required_providers { 7 | oci = { 8 | source = "oracle/oci" 9 | version = ">= 5.9.0" 10 | } 11 | } 12 | } 13 | 14 | provider "oci" { 15 | tenancy_ocid = var.tenancy_ocid 16 | user_ocid = var.user_ocid 17 | fingerprint = var.fingerprint 18 | private_key_path = var.private_key_path 19 | region = var.region 20 | disable_auto_retries = false 21 | } 22 | 23 | provider "oci" { 24 | alias = "homeregion" 25 | tenancy_ocid = var.tenancy_ocid 26 | user_ocid = var.user_ocid 27 | fingerprint = var.fingerprint 28 | private_key_path = var.private_key_path 29 | region = data.oci_identity_region_subscriptions.home_region_subscriptions.region_subscriptions[0].region_name 30 | disable_auto_retries = false 31 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Easy/sampledata.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/RAG-in-a-Box-Easy/sampledata.pdf -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Hybrid/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Hybrid/images/diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/RAG-in-a-Box-Hybrid/images/diagram.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Hybrid/images/hraginabox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/RAG-in-a-Box-Hybrid/images/hraginabox.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Hybrid/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Create ADW Database with Endpoint in private subnet or public ADW 5 | module "adb" { 6 | source = "./modules/cloud-foundation-library/database/adb" 7 | adw_params = local.adw_params 8 | } 9 | 10 | # Calling the Object Storage module 11 | module "os" { 12 | source = "./modules/cloud-foundation-library/object-storage" 13 | depends_on = [module.adb] 14 | tenancy_ocid = var.tenancy_ocid 15 | bucket_params = { 16 | for k,v in local.bucket_params : k => v if v.compartment_id != "" 17 | } 18 | } 19 | 20 | # Ensure the bucket deletion happens after objects are removed 21 | resource "null_resource" "ensure_bucket_deletion_order" { 22 | depends_on = [null_resource.delete_files_from_object_storage] 23 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Hybrid/modules/cloud-foundation-library/object-storage/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | data "oci_objectstorage_namespace" "os" { 5 | compartment_id = var.tenancy_ocid 6 | } 7 | 8 | resource "oci_objectstorage_bucket" "os" { 9 | for_each = { 10 | for k,v in var.bucket_params : k => v if v.compartment_id != "" 11 | } 12 | compartment_id = each.value.compartment_id 13 | name = each.value.name 14 | namespace = data.oci_objectstorage_namespace.os.namespace 15 | access_type = each.value.access_type 16 | storage_tier = each.value.storage_tier 17 | object_events_enabled = each.value.events_enabled 18 | defined_tags = each.value.defined_tags 19 | } 20 | 21 | terraform { 22 | required_providers { 23 | oci = { 24 | source = "oracle/oci" 25 | version = ">= 5.30.0" 26 | } 27 | } 28 | required_version = ">= 1.5.5" 29 | } 30 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Hybrid/modules/cloud-foundation-library/object-storage/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # output "buckets" { 5 | # value = { 6 | # for bucket in oci_objectstorage_bucket.os: 7 | # bucket.name => bucket.access_type 8 | # } 9 | # } 10 | 11 | 12 | output "buckets_id"{ 13 | value = { 14 | for bucket in oci_objectstorage_bucket.os: 15 | bucket.name => {"compartment_id": bucket.compartment_id, "id": bucket.id} 16 | } 17 | } 18 | 19 | 20 | output "buckets" { 21 | description = "Buckets informations." 22 | value = length(oci_objectstorage_bucket.os) > 0 ? oci_objectstorage_bucket.os[*] : null 23 | } 24 | 25 | output "bucket_id" { 26 | value = { 27 | for bucket in oci_objectstorage_bucket.os : 28 | bucket.name => bucket.bucket_id 29 | } 30 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Hybrid/modules/cloud-foundation-library/object-storage/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | variable "tenancy_ocid" { 6 | type = string 7 | } 8 | 9 | variable "bucket_params" { 10 | type = map(object({ 11 | compartment_id = string 12 | name = string 13 | access_type = string 14 | storage_tier = string 15 | events_enabled = bool 16 | defined_tags = map(string) 17 | })) 18 | } 19 | 20 | 21 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Vector/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Vector/images/diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/RAG-in-a-Box-Vector/images/diagram.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Vector/images/vraginabox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/RAG-in-a-Box-Vector/images/vraginabox.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Vector/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2025, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # Create ADW Database with Endpoint in private subnet or public ADW 5 | module "adb" { 6 | source = "./modules/cloud-foundation-library/database/adb" 7 | adw_params = local.adw_params 8 | } 9 | 10 | # Calling the Object Storage module 11 | module "os" { 12 | source = "./modules/cloud-foundation-library/object-storage" 13 | depends_on = [module.adb] 14 | tenancy_ocid = var.tenancy_ocid 15 | bucket_params = { 16 | for k,v in local.bucket_params : k => v if v.compartment_id != "" 17 | } 18 | } 19 | 20 | # Ensure the bucket deletion happens after objects are removed 21 | resource "null_resource" "ensure_bucket_deletion_order" { 22 | depends_on = [null_resource.delete_files_from_object_storage] 23 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Vector/modules/cloud-foundation-library/object-storage/main.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | data "oci_objectstorage_namespace" "os" { 5 | compartment_id = var.tenancy_ocid 6 | } 7 | 8 | resource "oci_objectstorage_bucket" "os" { 9 | for_each = { 10 | for k,v in var.bucket_params : k => v if v.compartment_id != "" 11 | } 12 | compartment_id = each.value.compartment_id 13 | name = each.value.name 14 | namespace = data.oci_objectstorage_namespace.os.namespace 15 | access_type = each.value.access_type 16 | storage_tier = each.value.storage_tier 17 | object_events_enabled = each.value.events_enabled 18 | defined_tags = each.value.defined_tags 19 | } 20 | 21 | terraform { 22 | required_providers { 23 | oci = { 24 | source = "oracle/oci" 25 | version = ">= 5.30.0" 26 | } 27 | } 28 | required_version = ">= 1.5.5" 29 | } 30 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Vector/modules/cloud-foundation-library/object-storage/outputs.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # output "buckets" { 5 | # value = { 6 | # for bucket in oci_objectstorage_bucket.os: 7 | # bucket.name => bucket.access_type 8 | # } 9 | # } 10 | 11 | 12 | output "buckets_id"{ 13 | value = { 14 | for bucket in oci_objectstorage_bucket.os: 15 | bucket.name => {"compartment_id": bucket.compartment_id, "id": bucket.id} 16 | } 17 | } 18 | 19 | 20 | output "buckets" { 21 | description = "Buckets informations." 22 | value = length(oci_objectstorage_bucket.os) > 0 ? oci_objectstorage_bucket.os[*] : null 23 | } 24 | 25 | output "bucket_id" { 26 | value = { 27 | for bucket in oci_objectstorage_bucket.os : 28 | bucket.name => bucket.bucket_id 29 | } 30 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Vector/modules/cloud-foundation-library/object-storage/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | 5 | variable "tenancy_ocid" { 6 | type = string 7 | } 8 | 9 | variable "bucket_params" { 10 | type = map(object({ 11 | compartment_id = string 12 | name = string 13 | access_type = string 14 | storage_tier = string 15 | events_enabled = bool 16 | defined_tags = map(string) 17 | })) 18 | } 19 | 20 | 21 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/RAG-in-a-Box-Vector/sampledata.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/RAG-in-a-Box-Vector/sampledata.pdf -------------------------------------------------------------------------------- /cloud-foundation/solutions/S3_tfstate_backend_cloud_foundation_automation/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/S3_tfstate_backend_cloud_foundation_automation/modules/provisioner/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | variable "host" {} 5 | 6 | variable "private_key" {} 7 | 8 | variable "atp_url" { 9 | default = "" 10 | } 11 | 12 | variable "database_admin_password" { 13 | default = "" 14 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/S3_tfstate_backend_cloud_foundation_automation/variables.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | # OCI API authentification credentials 5 | 6 | terraform { 7 | required_version = ">= 0.15.0" 8 | } 9 | 10 | variable "tenancy_ocid" { 11 | type = string 12 | default = "" 13 | } 14 | 15 | variable "region" { 16 | type = string 17 | default = "" 18 | } 19 | 20 | variable "compartment_id" { 21 | type = string 22 | default = "" 23 | } 24 | 25 | variable "user_ocid" { 26 | type = string 27 | default = "" 28 | } 29 | 30 | variable "fingerprint" { 31 | type = string 32 | default = "" 33 | } 34 | 35 | variable "private_key_path" { 36 | type = string 37 | default = "" 38 | } 39 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Sam-Workbench/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/Sam-Workbench/images/sam-workbench.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Sam-Workbench/images/sam-workbench.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Sam-Workbench/provider.tf: -------------------------------------------------------------------------------- 1 | # Copyright © 2023, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | terraform { 5 | required_version = ">= 1.2.0" 6 | required_providers { 7 | oci = { 8 | source = "oracle/oci" 9 | version = ">= 5.9.0" 10 | } 11 | } 12 | } 13 | 14 | provider "oci" { 15 | tenancy_ocid = var.tenancy_ocid 16 | user_ocid = var.user_ocid 17 | fingerprint = var.fingerprint 18 | private_key_path = var.private_key_path 19 | region = var.region 20 | disable_auto_retries = false 21 | } 22 | 23 | provider "oci" { 24 | alias = "homeregion" 25 | tenancy_ocid = var.tenancy_ocid 26 | user_ocid = var.user_ocid 27 | fingerprint = var.fingerprint 28 | private_key_path = var.private_key_path 29 | region = data.oci_identity_region_subscriptions.home_region_subscriptions.region_subscriptions[0].region_name 30 | disable_auto_retries = false 31 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/Sam-Workbench/scripts/bastion-bootstrap: -------------------------------------------------------------------------------- 1 | #cloud-config 2 | 3 | write_files: 4 | # Create file to be used when enabling ip forwarding 5 | - path: /etc/sysctl.d/98-ip-forward.conf 6 | content: | 7 | net.ipv4.ip_forward = 1 8 | 9 | runcmd: 10 | # Run firewall commands to enable masquerading and port forwarding 11 | # Enable ip forwarding by setting sysctl kernel parameter 12 | - firewall-offline-cmd --direct --add-rule ipv4 nat POSTROUTING 0 -o ens3 -j MASQUERADE 13 | - firewall-offline-cmd --direct --add-rule ipv4 filter FORWARD 0 -i ens3 -j ACCEPT 14 | - /bin/systemctl restart firewalld 15 | - sysctl -p /etc/sysctl.d/98-ip-forward.conf -------------------------------------------------------------------------------- /cloud-foundation/solutions/Sam-Workbench/scripts/ui-bootstrap: -------------------------------------------------------------------------------- 1 | #cloud-config 2 | 3 | write_files: 4 | # Create file to be used when enabling ip forwarding 5 | - path: /etc/sysctl.d/98-ip-forward.conf 6 | content: | 7 | net.ipv4.ip_forward = 1 8 | 9 | runcmd: 10 | - firewall-offline-cmd --add-port=80/tcp 11 | - firewall-offline-cmd --add-port=22/tcp 12 | - systemctl stop firewalld 13 | - docker run --name listener-ui -d -p 8000:8000 -it docker.io/library/python:3.7-slim python3 -m http.server --bind 0.0.0.0 14 | - docker run --name listener-data -d -p 8088:80 welcome-to-docker:latest 15 | 16 | # docker run --name listener-data -d -p 8008:80 -it docker.io/library/python:3.7-slim python3 -m http.server --bind 0.0.0.0 -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2024, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/Telco-Asset_Value_Maximization.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/Telco-Asset_Value_Maximization.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/Telco-Asset_Value_Maximization_arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/Telco-Asset_Value_Maximization_arch.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step1.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step2.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step3.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step4.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step5.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step6.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step7.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/Telco-Asset_Value_Maximization/images/step8.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/ADW_CREATE_CREDENTIAL.sql.tpl: -------------------------------------------------------------------------------- 1 | BEGIN 2 | DBMS_CLOUD.CREATE_CREDENTIAL( 3 | credential_name => 'DEF_CRED_NAME', 4 | username => 'admin', 5 | password => '${db_password}' 6 | ); 7 | END; 8 | / 9 | 10 | exit; 11 | / -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/COMMS_LAKEHOUSE_TELECOM_TOWER.sql: -------------------------------------------------------------------------------- 1 | BEGIN 2 | FOR obj_name IN (SELECT object_name 3 | FROM dba_objects 4 | WHERE owner = 'COMMS_LAKEHOUSE_TELECOM_TOWER' 5 | AND object_type = 'TABLE') 6 | LOOP 7 | EXECUTE IMMEDIATE 'GRANT SELECT ON COMMS_LAKEHOUSE_TELECOM_TOWER.' || obj_name.object_name || ' TO lisa_jones'; 8 | END LOOP; 9 | END; 10 | / 11 | 12 | 13 | BEGIN 14 | FOR obj_name IN (SELECT object_name 15 | FROM dba_objects 16 | WHERE owner = 'COMMS_LAKEHOUSE_TELECOM_TOWER' 17 | AND object_type = 'TABLE') 18 | LOOP 19 | EXECUTE IMMEDIATE 'GRANT SELECT ON COMMS_LAKEHOUSE_TELECOM_TOWER.' || obj_name.object_name || ' TO DMISHRA'; 20 | END LOOP; 21 | END; 22 | / 23 | 24 | exit; 25 | / -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/COMMS_LAKEHOUSE_TELECOM_TOWER_dumps.sh.tpl: -------------------------------------------------------------------------------- 1 | impdp admin/${db_password}@${db_name}_high directory=data_pump_dir credential=def_cred_name dumpfile= https://objectstorage.us-ashburn-1.oraclecloud.com/p/9Htb-Ow20G0IbIv1DocvOepScBD-uFlxbK0c5rK0cjddM9xgJQIus_q9Xqa4J9If/n/oradbclouducm/b/DataModelsTelco/o/COMMS_LAKEHOUSE_TELECOM_TOWER_25th_Aug_2022.dmp parallel=16 encryption_pwd_prompt=no exclude=cluster,indextype,db_link 2 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/LISA_JONES.sql: -------------------------------------------------------------------------------- 1 | SELECT 'CREATE SYNONYM "' || a.table_name || '" FOR "' || a.owner || '"."' || a.table_name || '";' 2 | FROM all_tables a 3 | WHERE a.owner = 'COMMS_LAKEHOUSE_TELECOM_TOWER'; 4 | 5 | exit; 6 | / -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/LISA_JONES_dumps.sh.tpl: -------------------------------------------------------------------------------- 1 | impdp admin/${db_password}@${db_name}_high directory=data_pump_dir credential=def_cred_name dumpfile= https://objectstorage.us-ashburn-1.oraclecloud.com/p/ik3Htc9z7y8trQKZp-Vq_mQoNIeR9irJtE-GzO-S3w6ElcVyGI-ZaYJgmTMqwnom/n/oradbclouducm/b/DataModelsTelco/o/LISA_JONES_25th_Aug_2022.dmp parallel=16 encryption_pwd_prompt=no exclude=cluster,indextype,db_link 2 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/OML_USER_GRANTS.sql: -------------------------------------------------------------------------------- 1 | 2 | -- BEGIN 3 | -- FOR obj_name IN (SELECT object_name FROM dba_objects WHERE owner = 'COMMS_LAKEHOUSE_TELECOM_TOWER') 4 | -- LOOP 5 | -- EXECUTE IMMEDIATE 'GRANT SELECT ON COMMS_LAKEHOUSE_TELECOM_TOWER.' || obj_name.object_name || ' TO DMISHRA'; 6 | -- END LOOP; 7 | -- END; 8 | -- / 9 | 10 | -- exit; 11 | -- / -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/SYNONYM_DMISHRA.sql: -------------------------------------------------------------------------------- 1 | CREATE OR REPLACE SYNONYM DMISHRA.SITE FOR COMMS_LAKEHOUSE_TELECOM_TOWER.SITE; 2 | CREATE OR REPLACE SYNONYM DMISHRA.NEW_DEVELOPMENT_ROLLOUT FOR COMMS_LAKEHOUSE_TELECOM_TOWER.NEW_DEVELOPMENT_ROLLOUT; 3 | 4 | exit; 5 | / -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/bastion_environment.sh.tpl: -------------------------------------------------------------------------------- 1 | # Copyright © 2024, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | #!/bin/bash 5 | db_name=${db_name} 6 | 7 | echo "-- Getting Started" 8 | echo "-- SQLnet.ora inject the wallet location" 9 | mkdir -p mywalletdir 10 | unzip wallet_${db_name}.zip -d mywalletdir 11 | cd /home/opc/mywalletdir/ 12 | ls 13 | cat /home/opc/mywalletdir/sqlnet.ora 14 | export LC_CTYPE=en_US.UTF-8 15 | export LC_ALL=en_US.UTF-8 16 | perl -pi.back -e 's#\?\/network\/admin#'$//home/opc/mywalletdir'#g' /home/opc/mywalletdir/sqlnet.ora 17 | export TNS_ADMIN=/home/opc/mywalletdir 18 | cat /home/opc/mywalletdir/sqlnet.ora 19 | echo "export TNS_ADMIN=/home/opc/mywalletdir" >> /home/opc/.bashrc 20 | echo "-bastion_environment.sh.tpl DONE!" 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/config.tpl: -------------------------------------------------------------------------------- 1 | [DEFAULT] 2 | user=${ociUserId} 3 | fingerprint=${ociKeyFingerprint} 4 | key_file=/home/opc/.oci/oci_api_key.pem 5 | tenancy=${ociTenancyId} 6 | region=${ociRegion} 7 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/file_envs.sh: -------------------------------------------------------------------------------- 1 | # Copyright © 2024, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | unset ORACLE_HOME 5 | export JAVA_HOME=/usr/java/latest 6 | export PATH=$JAVA_HOME/bin:$PATH 7 | alias sql=/opt/oracle/sqlcl/bin/sql -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/modules/provisioner/restore_mysnapshot.json: -------------------------------------------------------------------------------- 1 | { 2 | "snapshot": { 3 | "id" : "35b34a1d-43c7-4844-bacf", 4 | "password" : "TowerAssetAdmin123" 5 | } 6 | } 7 | 8 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/Telco-Asset_Value_Maximization/oci_api_key.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN RSA PRIVATE KEY----- 2 | MIIEpAIBAAKCAQEAypc6k1Z004xrXauf9W0ez95zqI6IOuvsyi4k8U2L45fV4BA1 3 | m67ATlKIO/obPSdjugwGC9+O36F94qgYWlKd3nFaGao43Nj/VI9CUrC4cE42oeLW 4 | mU6cg7z/4o3VfVv+9zv/2Si//JoEYMcq94OR5HrnmUYPZszfiTjfcwDtNihKCkIX 5 | UXaDHlF1QwomKHaix3uDs3YHyBrTEP/yD3IpMYWJQ3Vjukxjg0xN2Bhk0C3RZdf5 6 | QLrc1zO+00Rjyd9kyaUrc7FRD2NvTzDwCTcFT1PjQxPc2htcP7xPhLgFNhhmzZh1 7 | pq40xWbvpCZO7q0HkYeJC3EH0YtFwJ9wI+3gjwIDAQABAoIBAQCgKdchTKSn6sen 8 | Elwvx8koRZHinGyPSJ23aavDKa+CizOHJMl8/zcBtLYH1L9cJZvuJjtRf7iQjDfd 9 | zU8TeWVdyveUesLhtpyF2Yxxm0z1XKBMc+183m1WqUETd1Zk+Solg8XNhS3jIlB7 10 | ..... 11 | ..... 12 | ..... 13 | MziY2DIyoHOtYZFYyH2rPy9VEEXwO7BG/Z79Rn1A68/poE7m7F9nO517mraQMNl2 14 | PAymLQUCgYA5Zv69Fc7JHA3Hejd5V9n7M0sB8dkqOfsp8OFn0GcRv6XI9hNn2gW2 15 | 2K6TKSk2oUSI7fXB/1uXWEj/+k+j2NcGfiHLV+HX/HnKbcciM8aLdIsm3yhiqrtm 16 | kt4aUQma/o6Y2iamiKQPLw/bkQgB/uba850CIXsS2LQJqcoEQ671hw== 17 | -----END RSA PRIVATE KEY----- -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/.gitignore: -------------------------------------------------------------------------------- 1 | # Copyright © 2022, Oracle and/or its affiliates. 2 | # All rights reserved. Licensed under the Universal Permissive License (UPL), Version 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 | 4 | .terraform 5 | *tfstate* 6 | *.pem -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/modules/wls_compute/cloudInitTemplate.tf: -------------------------------------------------------------------------------- 1 | 2 | data "template_cloudinit_config" "config" { 3 | gzip = true 4 | base64_encode = true 5 | 6 | part { 7 | filename = "ainit.sh" 8 | content_type = "text/x-shellscript" 9 | content = "${data.template_file.key_script.rendered}" 10 | } 11 | part { 12 | filename = "init.sh" 13 | content_type = "text/x-shellscript" 14 | content = "${file(var.bootStrapFile)}" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/modules/wls_compute/locals.tf: -------------------------------------------------------------------------------- 1 | locals { 2 | 3 | host_label = "${var.compute_name_prefix}-${var.vnic_prefix}" 4 | ad_names = compact(data.template_file.ad_names.*.rendered) 5 | 6 | is_atp_db = var.is_atp_db 7 | is_apply_JRF = local.is_atp_db ? true : false 8 | num_fault_domains = length(data.oci_identity_fault_domains.wls_fault_domains.fault_domains) 9 | 10 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/modules/wls_compute/outputs.tf: -------------------------------------------------------------------------------- 1 | output "WlsVersion" { 2 | value = "${var.wls_version}" 3 | } 4 | 5 | output "applyJRF" { 6 | value = "${local.is_apply_JRF}" 7 | } 8 | 9 | output "InstancePrivateIPs" { 10 | value = coalescelist (module.wls-instances.InstancePrivateIPs, tolist([""])) 11 | } 12 | 13 | output "InstancePublicIPs" { 14 | value = coalescelist (module.wls-instances.InstancePublicIPs, tolist([""])) 15 | } 16 | 17 | output "InstanceOcids" { 18 | value = coalescelist (module.wls-instances.InstanceOcids, tolist([""])) 19 | } 20 | 21 | output "display_names" { 22 | value = coalescelist (module.wls-instances.display_names, tolist([""])) 23 | } 24 | 25 | output "InstanceShapes" { 26 | value = coalescelist (module.wls-instances.InstanceShapes, tolist([""])) 27 | } 28 | 29 | output "AvailabilityDomains" { 30 | value = coalescelist (module.wls-instances.AvailabilityDomains, tolist([""])) 31 | } 32 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/modules/wls_compute/templates/keys.tpl: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | echo "Creating ssh folder" >> /tmp/init.log 4 | 5 | cp /home/opc/.ssh/authorized_keys /home/opc/.ssh/authorized_keys.bak 6 | echo "${pubKey}" >> /home/opc/.ssh/authorized_keys 7 | chown -R opc /home/opc/.ssh/authorized_keys 8 | 9 | sudo su - oracle -c 'mkdir -p /home/oracle/.ssh/' 10 | sudo su - oracle -c 'chmod 700 /home/oracle/.ssh' 11 | sudo su - oracle -c 'echo "${oraclePriKey}" > /home/oracle/.ssh/id_rsa' 12 | sudo su - oracle -c 'chown -R oracle:oracle /home/oracle/.ssh/id_rsa' 13 | sudo su - oracle -c 'chmod 400 /home/oracle/.ssh/id_rsa' 14 | sudo su - oracle -c 'echo "${oracleKey}" >> /home/oracle/.ssh/authorized_keys' 15 | sudo su - oracle -c 'chown -R oracle:oracle /home/oracle/.ssh/authorized_keys' 16 | sudo su - oracle -c 'chmod 600 /home/oracle/.ssh/authorized_keys' 17 | 18 | echo "Added keys to auth keys" >> /tmp/init.log -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/modules/wls_compute/userdata/bootstrap: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # 4 | 5 | # Reset the iptables to open the firewall ports on the local VM 6 | # Access to ports is controlled from OCI Security rules 7 | # Added 8 | 9 | echo "Add your WLS Script" -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/modules/wls_lb/outputs.tf: -------------------------------------------------------------------------------- 1 | output "load_balancer_id" { 2 | value = module.wls-lb.load_balancer_id 3 | } 4 | 5 | output "load_balancer_IP" { 6 | value = element(coalescelist(module.wls-lb.load_balancer_IP, tolist([tolist([""])]))[0], 0) 7 | } -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/provider.tf: -------------------------------------------------------------------------------- 1 | provider "oci" { 2 | version = ">= 4.37.0" 3 | tenancy_ocid = "${var.tenancy_ocid}" 4 | user_ocid = "${var.user_ocid}" 5 | fingerprint = "${var.fingerprint}" 6 | private_key_path = "${var.private_key_path}" 7 | region = "${var.region}" 8 | 9 | } 10 | 11 | -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/readme/arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/WebLogic Clustered Deployment/readme/arch.png -------------------------------------------------------------------------------- /cloud-foundation/solutions/WebLogic Clustered Deployment/readme/structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/oracle-devrel/terraform-oci-oracle-cloud-foundation/408adc1e6d4ad1a4cf0337489c2306ca62f78e45/cloud-foundation/solutions/WebLogic Clustered Deployment/readme/structure.png -------------------------------------------------------------------------------- /license_policy.yml: -------------------------------------------------------------------------------- 1 | license_policies: 2 | - license_key: upl-1.0 3 | label: Approved License 4 | color_code: '#00800' 5 | icon: icon-ok-circle 6 | - license_key: bsd-simplified 7 | label: Approved License 8 | color_code: '#00800' 9 | icon: icon-ok-circle 10 | - license_key: bsd-new 11 | label: Approved License 12 | color_code: '#00800' 13 | icon: icon-ok-circle 14 | - license_key: mit 15 | label: Approved License 16 | color_code: '#00800' 17 | icon: icon-ok-circle 18 | - license_key: apache-1.1 19 | label: Approved License 20 | color_code: '#00800' 21 | icon: icon-ok-circle 22 | - license_key: apache-2.0 23 | label: Approved License 24 | color_code: '#00800' 25 | icon: icon-ok-circle 26 | -------------------------------------------------------------------------------- /sonar-project.properties: -------------------------------------------------------------------------------- 1 | sonar.projectKey=oracle-devrel_terraform-oci-oracle-cloud-foundation 2 | sonar.organization=oracle-devrel 3 | sonar.python.version=3.6 4 | 5 | # This is the name and version displayed in the SonarCloud UI. 6 | #sonar.projectName=test 7 | #sonar.projectVersion=1.0 8 | 9 | # Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows. 10 | #sonar.sources=. 11 | 12 | # Encoding of the source code. Default is default system encoding 13 | #sonar.sourceEncoding=UTF-8 14 | --------------------------------------------------------------------------------