X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=Vagrantfile;h=00aec4b818b397cd7748017f9956c38cf342ccab;hb=refs%2Fchanges%2F08%2F4708%2F1;hp=ced84ef4a853b189610fc7fe3bbb6de265658671;hpb=9f1bec85fd29e358ebbbccfd1406262857c658a1;p=icn.git diff --git a/Vagrantfile b/Vagrantfile index ced84ef..00aec4b 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -11,6 +11,7 @@ require 'yaml' # by vagrant from the jump machine definition) is up. site = ENV['ICN_SITE'] || 'vm' +with_jenkins = ENV['WITH_JENKINS'] || false # Calculate the baremetal network address from the bmcAddress (aka # IPMI address) specified in the machine pool values. IPMI in the @@ -33,6 +34,7 @@ if baremetal_cidr.nil? puts "Missing bmcAddress value in site definition, can't determine baremetal network address" exit 1 end +baremetal_gw = IPAddr.new(baremetal_cidr).succ $post_up_message = < "#{site}-provisioning", :type => 'dhcp' - # IPMI control of machines is provided by vbmc on the host + # BMC control of machines is provided by sushy-emulator on the host m.trigger.after [:up] do |trigger| - trigger.name = 'Starting virtualbmc for IPMI network' - trigger.run = {inline: "./tools/vagrant/start_vbmc.sh"} + trigger.name = 'Starting sushy for BMC network' + trigger.run = {inline: "./tools/vagrant/start_sushy.sh #{baremetal_gw}"} end m.trigger.after [:destroy] do |trigger| - trigger.name = 'Stopping virtualbmc for IPMI network' - trigger.run = {inline: "./tools/vagrant/stop_vbmc.sh"} + trigger.name = 'Stopping sushy for BMC network' + trigger.run = {inline: "./tools/vagrant/stop_sushy.sh #{baremetal_gw}"} end m.trigger.after [:up] do |trigger| @@ -114,6 +122,11 @@ Vagrant.configure("2") do |config| DEBIAN_FRONTEND=noninteractive apt-get install -y make SHELL m.vm.post_up_message = $post_up_message + + if with_jenkins + # Set up a port forward for an instance of Jenkins + m.vm.network "forwarded_port", guest: 8080, host: 8080 + end end # Look for any HelmReleases in the site directory with machineName in @@ -127,9 +140,11 @@ Vagrant.configure("2") do |config| machine_name = values['machineName'] boot_mac_address = values['bootMACAddress'] bmc_port = URI.parse(values['bmcAddress']).port + uuid = URI.parse(values['bmcAddress']).path.split('/').last config.vm.define machine_name do |m| m.vm.hostname = machine_name m.vm.provider :libvirt do |libvirt| + libvirt.uuid = "#{uuid}" libvirt.graphics_ip = '0.0.0.0' libvirt.default_prefix = "#{site}-" libvirt.cpu_mode = 'host-passthrough' @@ -153,27 +168,6 @@ Vagrant.configure("2") do |config| m.vm.network :private_network, :libvirt__network_name => "#{site}-baremetal", :type => 'dhcp' - - # IPMI control - m.trigger.after [:up] do |trigger| - trigger.name = 'Adding machine to IPMI network' - trigger.run = {inline: "./tools/vagrant/add_machine_to_vbmc.sh #{site} #{machine_name} #{bmc_port}"} - end - m.trigger.after [:destroy] do |trigger| - trigger.name = 'Removing machine from IPMI network' - trigger.run = {inline: "./tools/vagrant/remove_machine_from_vbmc.sh #{site} #{machine_name} #{bmc_port}"} - end - - # Create configuration for ICN provisioning - legacy_machine_args = "#{legacy_machine_args} #{machine_name} #{bmc_port}" - m.trigger.after [:up] do |trigger| - trigger.info = 'Creating nodes.json.sample describing the machines' - trigger.run = {inline: "./tools/vagrant/create_nodes_json_sample.sh #{site} #{legacy_machine_args}"} - end - m.trigger.after [:up] do |trigger| - trigger.info = 'Creating Provisioning resource describing the cluster' - trigger.run = {inline: "./tools/vagrant/create_provisioning_cr.sh #{site} #{legacy_machine_args}"} - end end end end