1
+ #! /bin/bash
2
+
3
+ WORKSPACE=/opt/mathworks
4
+
5
+ LOG_DIR=/var/log/custom_script
6
+ LOG_FILE=$LOG_DIR /custom_script.log
7
+
8
+ # Create log directory and file
9
+ sudo mkdir -p $LOG_DIR
10
+ sudo touch $LOG_FILE
11
+ sudo chmod 666 $LOG_FILE
12
+
13
+ # $0 is the file name
14
+
15
+ storageAccountName=" $1 "
16
+ dbConnectionString=" $2 "
17
+ mpsEndpoint=" $3 "
18
+ CIDRRange=" $4 "
19
+ cloudPlatform=" $5 "
20
+ osPlatform=" $6 "
21
+ ikey=" $7 "
22
+ resourceGroup=" $8 "
23
+ subscriptionID=" $9 "
24
+ userName=" ${10} "
25
+ passWord=" ${11} "
26
+ redisName=" ${12} "
27
+ gatewayPrivateIP=" ${13} "
28
+ offerType=" ${14} "
29
+
30
+ azEnvironment=$( sudo curl -s -H Metadata:true --noproxy " *" " http://169.254.169.254/metadata/instance?api-version=2021-02-01" | jq -r ' .compute.azEnvironment' )
31
+
32
+ echo " $storageAccountName "
33
+ echo " $dbConnectionString "
34
+ echo " $mpsEndpoint "
35
+ echo " $CIDRRange "
36
+ echo " $cloudPlatform "
37
+ echo " $osPlatform "
38
+ echo " $ikey "
39
+ echo " $resourceGroup "
40
+ echo " $subscriptionID "
41
+ echo " $userName "
42
+ echo " $redisName "
43
+ echo " $gatewayPrivateIP "
44
+ echo " $offerType "
45
+ echo " $azEnvironment "
46
+
47
+ JSONCMD='
48
+ {
49
+ "storageAccountName": "' " $storageAccountName " ' ",
50
+ "dbConnectionString": "' " $dbConnectionString " ' ",
51
+ "mpsEndPoint": "' " $mpsEndpoint " ' ",
52
+ "CIDRRange": "' " $CIDRRange " ' ",
53
+ "cloudPlatform": "' " $cloudPlatform " ' ",
54
+ "osPlatform": "' " $osPlatform " ' ",
55
+ "ikey": "' " $ikey " ' ",
56
+ "resourceGroup": "' " $resourceGroup " ' ",
57
+ "subscriptionID": "' " $subscriptionID " ' ",
58
+ "redisCacheName": "' " $redisName " ' ",
59
+ "gatewayPrivateIP": "' " $gatewayPrivateIP " ' ",
60
+ "offerType": "' " $offerType " ' ",
61
+ "azEnvironment": "' " $azEnvironment " ' "
62
+ }
63
+ '
64
+
65
+ destination=$WORKSPACE /controller/dynamicOptions.json
66
+ rm $destination
67
+
68
+ echo $JSONCMD >> $destination
69
+
70
+ echo " Written Config File successfully"
71
+
72
+ cd $WORKSPACE /cloud/main
73
+ node $WORKSPACE /cloud/main/server/hash_pw.js " ${userName} " " ${passWord} " " ${passWord} "
74
+
75
+ echo " Written sudo passwd successfully"
76
+
77
+ cp ./.shadow ./bin/.
78
+
79
+ echo " Copied shadow file"
80
+
81
+ # Update package lists and log errors
82
+ sudo apt-get update 2>> $LOG_FILE
83
+ if [ $? -ne 0 ]; then
84
+ echo " apt update failed. Check the log file at $LOG_FILE " | tee -a $LOG_FILE
85
+ fi
86
+
87
+ # Install openssh-server and log errors
88
+ sudo apt-get install -y openssh-server 2>> $LOG_FILE
89
+ if [ $? -ne 0 ]; then
90
+ echo " apt install failed. Check the log file at $LOG_FILE " | tee -a $LOG_FILE
91
+ fi
92
+
93
+ systemctl restart refarchcontroller
94
+
95
+ echo " Restarted daemon successfully!"
96
+
97
+
98
+ # chown to this user /opt/mathworks
99
+ # Clear history
100
+ history -c
101
+
102
+ echo " Cleared History!"
103
+ # File Location
104
+ # https://mwstorage24.blob.core.windows.net/azuretemplates/initVm.sh
0 commit comments