|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<%#
|
|
kind: provision
|
|
name: AutoYaST default
|
|
oses:
|
|
- OpenSUSE
|
|
%>
|
|
<%
|
|
os_major = @host.operatingsystem.major.to_i
|
|
os_minor = @host.operatingsystem.minor.to_i
|
|
# safemode renderer does not support unary negation
|
|
pm_set = @host.puppetmaster.empty? ? false : true
|
|
puppet_enabled = pm_set || @host.param_true?('force-puppet')
|
|
salt_enabled = @host.params['salt_master'] ? true : false
|
|
%>
|
|
<!DOCTYPE profile>
|
|
<profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns">
|
|
<general>
|
|
<mode>
|
|
<confirm config:type="boolean">false</confirm>
|
|
<final_reboot config:type="boolean">true</final_reboot>
|
|
</mode>
|
|
</general>
|
|
<networking>
|
|
<dns>
|
|
<hostname><%= @host.name %></hostname>
|
|
<resolv_conf_policy>auto</resolv_conf_policy>
|
|
<% if @host.domain -%>
|
|
<searchlist config:type="list">
|
|
<search><%= @host.domain %></search>
|
|
</searchlist>
|
|
<% end -%>
|
|
</dns>
|
|
<interfaces config:type="list">
|
|
<interface>
|
|
<bootproto>dhcp</bootproto>
|
|
<device>eth0</device>
|
|
<startmode>auto</startmode>
|
|
<usercontrol>no</usercontrol>
|
|
</interface>
|
|
</interfaces>
|
|
</networking>
|
|
<ntp-client>
|
|
<configure_dhcp config:type="boolean">false</configure_dhcp>
|
|
<peers config:type="list">
|
|
<peer>
|
|
<address><%= @host.params['ntp-server'] || '0.opensuse.pool.ntp.org' %></address>
|
|
<initial_sync config:type="boolean">true</initial_sync>
|
|
<options></options>
|
|
<type>server</type>
|
|
</peer>
|
|
</peers>
|
|
<start_at_boot config:type="boolean">true</start_at_boot>
|
|
<start_in_chroot config:type="boolean">true</start_in_chroot>
|
|
</ntp-client>
|
|
<%= @host.diskLayout %>
|
|
<runlevel>
|
|
<default>3</default>
|
|
<services config:type="list">
|
|
<service>
|
|
<service_name>sshd</service_name>
|
|
<service_status>enable</service_status>
|
|
</service>
|
|
</services>
|
|
</runlevel>
|
|
<software>
|
|
<base>default</base>
|
|
<patterns config:type="list">
|
|
<pattern>base</pattern>
|
|
<pattern>enhanced_base</pattern>
|
|
<pattern>sw_management</pattern>
|
|
<pattern>yast2_basis</pattern>
|
|
</patterns>
|
|
<packages config:type="list">
|
|
<package>lsb-release</package>
|
|
<% if ((os_minor < 2) && (os_major < 14)) -%>
|
|
<package>yast2-runlevel</package>
|
|
<% end -%>
|
|
<% if puppet_enabled -%>
|
|
<package>puppet</package>
|
|
<% end -%>
|
|
<% if salt_enabled -%>
|
|
<package>salt-minion</package>
|
|
<% end -%>
|
|
</packages>
|
|
</software>
|
|
<users config:type="list">
|
|
<user>
|
|
<username>root</username>
|
|
<encrypted config:type="boolean">true</encrypted>
|
|
<fullname>root</fullname>
|
|
<gid>0</gid>
|
|
<home>/root</home>
|
|
<shell>/bin/bash</shell>
|
|
<uid>0</uid>
|
|
<user_password><%= root_pass %></user_password>
|
|
</user>
|
|
</users>
|
|
<scripts>
|
|
<chroot-scripts config:type="list">
|
|
<script>
|
|
<filename>cp-resolv.sh</filename>
|
|
<chrooted config:type="boolean">false</chrooted>
|
|
<interpreter>shell</interpreter>
|
|
<notification>Copying resolv.conf into chroot ...</notification>
|
|
<source><![CDATA[
|
|
cp /etc/resolv.conf /mnt/etc
|
|
]]>
|
|
</source>
|
|
</script>
|
|
<script>
|
|
<filename>foreman.sh</filename>
|
|
<chrooted config:type="boolean">true</chrooted>
|
|
<interpreter>shell</interpreter>
|
|
<notification>Setting up Puppet / Foreman ...</notification>
|
|
<source><![CDATA[
|
|
/bin/hostname <%= @host.name %>
|
|
|
|
<%= snippet('remote_execution_ssh_keys') %>
|
|
|
|
<% if puppet_enabled -%>
|
|
<%= snippet 'puppet_setup' %>
|
|
<% end -%>
|
|
|
|
<% if salt_enabled %>
|
|
<%= snippet 'saltstack_setup' %>
|
|
<% end -%>
|
|
|
|
/usr/bin/curl -o /dev/null -k '<%= foreman_url('built') %>'
|
|
|
|
rm /etc/resolv.conf
|
|
]]>
|
|
</source>
|
|
</script>
|
|
</chroot-scripts>
|
|
</scripts>
|
|
<keyboard>
|
|
<keymap>english-us</keymap>
|
|
</keyboard>
|
|
<timezone>
|
|
<hwclock>UTC</hwclock>
|
|
<timezone><%= @host.params['time-zone'] || 'Etc/UTC' %></timezone>
|
|
</timezone>
|
|
</profile>
|