From cea95dc0cf2b2d030621f0a91b3d73b4caeaaf7c Mon Sep 17 00:00:00 2001
From: Krish Moodbidri <krish94@uab.edu>
Date: Mon, 22 Jan 2024 14:54:42 -0600
Subject: [PATCH] Include mount commands in user_data_script for Terraform
 instance initialization

This commit updates the user_data_script in the Terraform script to include mount commands for better initialization of the instance. The added mount commands ensure proper mounting of specified devices to relevant directories during the first boot of the instance. This adjustment addresses the requirement for mounting operations in the infrastructure setup.
---
 main.tf | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/main.tf b/main.tf
index e880538..b99bf7a 100644
--- a/main.tf
+++ b/main.tf
@@ -14,6 +14,21 @@ provider "openstack" {
     }
 }
 
+variable "user_data_script" {
+  description = "User data script to be executed during instance initialization"
+  type        = string
+  default     = <<-EOF
+    #!/bin/bash
+    sudo mkdir -p /data/xdmod/queues
+    sudo mount ${module.create-ohpc-instance.device[0]}1 /var/lib/mysql
+    sudo df -h
+    sudo systemctl restart mariadb
+    sudo sed -i -E 's/xdmod..nip.io/xdmod.rc.uab.edu/g' /etc/httpd/conf.d/xdmod.conf
+    sudo sed -i -E 's/xdmod..nip.io/xdmod.rc.uab.edu/g' /etc/xdmod/simplesamlphp/config/config.php
+    sudo systemctl restart httpd
+  EOF
+}
+
 # runs the internal-network module
 module "cluster-network" {
     internal_net = var.internal_network
@@ -72,6 +87,7 @@ module "create-ohpc-instance" {
     ohpc_user =  var.ohpc_user
     ssh_private_key = var.ssh_private_key
     vol_id = data.openstack_blockstorage_volume_v3.disk.id
+    user_data_script    = var.user_data_script
 }
 
 # runs the ood-instance module - creates ood instance using variables defined above
-- 
GitLab