Install Script for ARM64 MID Server on Washington DC (Ubuntu)

lewismac
Giga Guru

Hi all,

The attached Bash script installs a Washington DC MID Server on ARM64 Ubuntu.


This may be useful for you if you virtualize Ubuntu on Apple Silicon, for example.

It asks for User Input  - Either an existing Config.xml file location , or Instance Name, MID Name and the MID Username & PW - and performs all of the steps required automatically after that.

(The password gets stored in plain text in the config.xml , you can retrospectively change this if required)

The way it works is by downloading both Vancouver and Washington DC MID ZIP files for Linux, then syncs the missing Wrappers/Libs from the Vancouver MID release. It automatically downloads and uses JVM17 for Arm64.


There are some variables at the start of the script, you can use it to auto install Vancouver or older on ARM64 if you set the IS_WASHINGTON_DC to false, and update the Download URL and Downloaded File variable to the ZIP location/name you need!

Inspired from: @Jon Ulrich 
Jon had provided this script back in 2017, the script builds from this!

2 REPLIES 2

Miguel Rodrigue
Tera Contributor

Excellent script.  The only update I would suggest to: a) search for the existence of an existing "config.xml" file, b) if found - then ask user whether to load all variables from file into each respective variable.

Thanks for the tip - I updated the script, it will use an existing config file and extract the MID Server Name automatically (for the file path), then it copies that file into the new agent folder that is created:

 

 

read -p "Do you have an existing 'config.xml' file with updated variables? (yes/no): " CONFIG_EXISTS
if [ "$CONFIG_EXISTS" == "yes" ]; then
    read -p "Enter the complete file path for your existing 'config.xml': " CONFIG_XML
    if [ -f "$CONFIG_XML" ]; then
        VALID_CONFIG_XML="true"
		MID_SERVER_NAME=$(awk -F\" '/<parameter name="name"[^>]*>/ {gsub(/^[ \t]+|[ \t]+$/, ""); print $4}' "$CONFIG_XML")
        echo "Using existing valid config file at $CONFIG_XML."
    else
        echo "The provided file does not exist. Please ensure the path is correct and try again."
        exit 1
    fi
fi