Sha256: 95e2d80c44c231d868d9bb2d9cb40c542e111ec8c19b9e53878c16b187330c21

Contents?: true

Size: 1.73 KB

Versions: 6

Compression:

Stored size: 1.73 KB

Contents

<%#
kind: kexec
name: Discovery Debian kexec
oses:
- Debian
- Ubuntu
-%>
<%#
This template is used to pass command line options to kexec when reloading
kernel on a discovered host instead of rebooting. This is useful in PXE-less
environments. The template must generate JSON format with the following items
"kernel", "initram", "append" and "extra". The kexec command is composed in
the following way:

kexec --force --reset-vga --append=$append --initrd=$initram $extra $kernel

Please read kexec(8) man page for more information about semantics.
-%>
<%
  mac = @host.facts['discovery_bootif']
  bootif = '00-' + mac.gsub(':', '-') if mac
  ip_cidr = @host.facts['discovery_ip_cidr']
  ip = @host.facts['discovery_ip']
  mask = @host.facts['discovery_netmask']
  gw = @host.facts['discovery_gateway']
  dns = @host.facts['discovery_dns']
  options = ["nomodeset", "nokaslr", "auto=true"]
  options << @host.facts['append']
  options << "domain=#{@host.domain}"
  options << 'console-setup/ask_detect=false console-setup/layout=USA console-setup/variant=USA keyboard-configuration/layoutcode=us localechooser/translation/warn-light=true localechooser/translation/warn-severe=true'
  options << "locale=#{@host.params['lang'] || 'en_US'}"
  options << "inst.stage2=#{@host.operatingsystem.medium_uri(@host)}" if @host.operatingsystem.name.match(/Atomic/i)
-%>
{
  "kernel": "<%= @kernel_uri %>",
  "initram": "<%= @initrd_uri %>",
  "append": "url=<%= foreman_url('provision') + "&static=yes" %> interface=<%= mac %> netcfg/get_ipaddress=<%= ip %> netcfg/get_netmask=<%= mask %> netcfg/get_gateway=<%= gw %> netcfg/get_nameservers=<%= dns %> netcfg/disable_dhcp=true netcfg/get_hostname=<%= @host.name %> BOOTIF=<%= bootif %> <%= options.compact.join(' ') %>",
  "extra": []
}

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
foreman_discovery-16.0.1 app/views/foreman_discovery/debian_kexec.erb
foreman_discovery-16.0.0 app/views/foreman_discovery/debian_kexec.erb
foreman_discovery-15.1.0 app/views/foreman_discovery/debian_kexec.erb
foreman_discovery-15.0.2 app/views/foreman_discovery/debian_kexec.erb
foreman_discovery-15.0.1 app/views/foreman_discovery/debian_kexec.erb
foreman_discovery-15.0.0 app/views/foreman_discovery/debian_kexec.erb