52 lines
1.5 KiB
Bash
Executable File
52 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
|
cd $script_dir
|
|
set -e
|
|
export FORMAT=YAML
|
|
mkdir -p tmp/
|
|
|
|
rm -rf tmp/overlay-network
|
|
cp -r ../overlay-network tmp/
|
|
rm -rf tmp/overlay-network/tmp
|
|
cd tmp/overlay-network/vm_configs
|
|
find . -maxdepth 1 -type f ! -name 'template-n.yaml' -exec rm -- '{}' +
|
|
|
|
setup_vm () {
|
|
vm_name="$1"
|
|
cp template-n.yaml $vm_name.yaml
|
|
sed -i "s/template-n/$vm_name/" $vm_name.yaml
|
|
sed -i '/PublishPorts/d' $vm_name.yaml
|
|
echo "ipv4: !PublishPorts [ 31337 ]" >> $vm_name.yaml
|
|
sed -i '/hours:/d' $vm_name.yaml
|
|
echo "hours: 800" >> $vm_name.yaml
|
|
sed -i '/location:/d' $vm_name.yaml
|
|
sed -i '/country:/d' $vm_name.yaml
|
|
echo "location:" >> $vm_name.yaml
|
|
# echo " country: \"$country\"" >> $vm_name.yaml
|
|
[[ "$vm_name" == "bastion-brain" ]] && echo ' country: "FR"'>> $vm_name.yaml || :
|
|
[[ "$vm_name" == *-mon ]] && echo ' country: "FR"'>> $vm_name.yaml || :
|
|
[[ "$vm_name" == *-1 ]] && echo ' city: "Montréal"'>> $vm_name.yaml || :
|
|
[[ "$vm_name" == *-2 ]] && echo ' city: "Vancouver"'>> $vm_name.yaml || :
|
|
[[ "$vm_name" == *-3 ]] && echo ' country: "US"'>> $vm_name.yaml || :
|
|
}
|
|
|
|
setup_vm staging-brain-1
|
|
setup_vm staging-brain-2
|
|
setup_vm staging-brain-3
|
|
setup_vm staging-brain-mon
|
|
setup_vm prod-brain-1
|
|
setup_vm prod-brain-2
|
|
setup_vm prod-brain-3
|
|
setup_vm prod-brain-mon
|
|
setup_vm bastion-brain
|
|
rm template-n.yaml
|
|
|
|
cd ../
|
|
echo CREATING VMS!
|
|
./create_vms.sh
|
|
sleep 10
|
|
./setup_wg_mesh.sh
|