@@ -17,6 +17,25 @@ resource "oci_core_volume_attachment" "bastion_volume_attachment" {
1717 device = " /dev/oracleoci/oraclevdb"
1818}
1919
20+ resource "oci_core_volume_backup_policy" "bastion_boot_volume_backup_policy" {
21+ count = var. bastion_boot_volume_backup ? 1 : 0
22+ compartment_id = var. targetCompartment
23+ display_name = " ${ local . cluster_name } -bastion_boot_volume_daily"
24+ schedules {
25+ backup_type = var. bastion_boot_volume_backup_type
26+ period = var. bastion_boot_volume_backup_period
27+ retention_seconds = var. bastion_boot_volume_backup_retention_seconds
28+ time_zone = var. bastion_boot_volume_backup_time_zone
29+ }
30+ }
31+
32+ resource "oci_core_volume_backup_policy_assignment" "boot_volume_backup_policy" {
33+ count = var. bastion_boot_volume_backup ? 1 : 0
34+ depends_on = [oci_core_volume_backup_policy . bastion_boot_volume_backup_policy ]
35+ asset_id = oci_core_instance. bastion . boot_volume_id
36+ policy_id = oci_core_volume_backup_policy. bastion_boot_volume_backup_policy [0 ]. id
37+ }
38+
2039resource "oci_resourcemanager_private_endpoint" "rms_private_endpoint" {
2140 count = var. private_deployment ? 1 : 0
2241 compartment_id = var. targetCompartment
@@ -26,6 +45,13 @@ resource "oci_resourcemanager_private_endpoint" "rms_private_endpoint" {
2645 subnet_id = local. subnet_id
2746}
2847
48+ resource "null_resource" "boot_volume_backup_policy" {
49+ depends_on = [oci_core_instance . bastion , oci_core_volume_backup_policy . bastion_boot_volume_backup_policy , oci_core_volume_backup_policy_assignment . boot_volume_backup_policy ]
50+ triggers = {
51+ bastion = oci_core_instance.bastion.id
52+ }
53+ }
54+
2955resource "oci_core_instance" "bastion" {
3056 depends_on = [local . bastion_subnet ]
3157 availability_domain = var. bastion_ad
@@ -150,6 +176,16 @@ resource "null_resource" "bastion" {
150176 private_key = tls_private_key. ssh . private_key_pem
151177 }
152178 }
179+ provisioner "file" {
180+ source = " scripts"
181+ destination = " /opt/oci-hpc/"
182+ connection {
183+ host = local. host
184+ type = " ssh"
185+ user = var. bastion_username
186+ private_key = tls_private_key. ssh . private_key_pem
187+ }
188+ }
153189 provisioner "file" {
154190 content = templatefile (" ${ path . module } /configure.tpl" , {
155191 configure = var.configure
@@ -256,7 +292,6 @@ resource "null_resource" "cluster" {
256292 }
257293 }
258294
259-
260295 provisioner "file" {
261296 content = var. node_count > 0 ? join (" \n " ,local. cluster_instances_ips ) : " \n "
262297 destination = " /tmp/hosts"
@@ -444,4 +479,4 @@ provisioner "file" {
444479 private_key = tls_private_key. ssh . private_key_pem
445480 }
446481 }
447- }
482+ }
0 commit comments