oginstaller/vagrant/Vagrantfile-esxi

66 lines
2.1 KiB
Plaintext

VAGRANTFILE_API_VERSION = "2"
ENV['VAGRANT_DEFAULT_PROVIDER'] = "vmware_esxi"
BRANCH=ENV['BRANCH'] || "main"
BRANCH_EXTRA=ENV['BRANCH_EXTRA'] || BRANCH
#OGAGENTVERSION="1.4.2"
LANGUAGE = "es_ES"
ENV['LC_ALL'] = LANGUAGE + ".UTF-8"
# NCLIENTS = ENV['NUMBER_OF_CLIENTS']|| 4
# NCLIENTS = NCLIENTS.to_i
SERVERMEM = 2048 # Minimum: 512
CLIENTMEM = 512 # Minimum: 256
MACPREFIX = ENV['OGN_MAC_PREFIX'] || '00:50:56:aa:aa'
NETPREFIX = ENV['OGN_NET_PREFIX'] || "192.168.2"
DHCPNET = ENV['DHCPNET'] || "192.168.2.0"
SERVERIP = "#{NETPREFIX}.10"
LOCALWEBPORT = 8443
ESXIPASSWORD = ENV['ESXI_PASSWORD'] || 'prompt:'
GITEA_TOKEN = ENV['GITEA_TOKEN']
GITEA_USER = ENV['GITEA_USER'] || 'unizar'
SSH_GIT_KEY_PASS = ENV['SSH_GIT_KEY_PASS'] || ''
OGSERVERSCRIPT = <<OEOL
set -x
export GIT_SSL_NO_VERIFY=1
export INTERFACE="eth0"
EXTIP=$(ip -o -4 addr show "$INTERFACE" | awk '{print $4}' | cut -d'/' -f1)
echo "La dirección IP de la interfaz $INTERFACE es: $EXTIP"
export BRANCH=malaga-automated-testing
curl -q -k https://ognproject.evlt.uma.es/gitea/api/v1/repos/opengnsys/oginstaller/raw/python-installer/opengnsys_installer.sh?ref=python-installer -o opengnsys_installer.sh
cp /tmp/questions/config* /tmp/oginstall
/tmp/oginstall/component-installer.sh
OEOL
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.provider :vmware_esxi do |esxi|
esxi.esxi_hostname = 'esxi-jenkins.evlt.uma.es'
esxi.esxi_username = 'root'
esxi.esxi_password = ESXIPASSWORD
esxi.esxi_virtual_network = ['vLan_742' , BRANCH_EXTRA ]
esxi.guest_mac_address = [ "#{MACPREFIX}:01", "#{MACPREFIX}:02" ]
esxi.clone_from_vm = 'template-ubuntu24'
esxi.esxi_resource_pool = "/"
esxi.local_allow_overwrite = 'True'
esxi.guest_nic_type = 'e1000'
esxi.guest_custom_vmx_settings = [['monitor.allowLegacyCPU', 'TRUE']]
esxi.guest_storage = [ 10 ]
end
config.vm.box = "esxi_clone/dummy"
config.vm.hostname = "og-#{BRANCH_EXTRA}"
config.vm.provision "file" , source: "config/config*", destination: "/tmp/questions/"
config.vm.provision "shell", inline: OGSERVERSCRIPT
end