Add OpenSuSE Tumbleweed

This commit is contained in:
Greg Hellings
2024-01-09 16:49:03 -06:00
parent 8ff8fdfac2
commit 3f12d679c1
8 changed files with 175 additions and 2 deletions
+3 -2
View File
@@ -1,4 +1,4 @@
15.5:
15.5: &supp
- arch: amd64
provider: qemu
- arch: amd64
@@ -6,4 +6,5 @@
- arch: amd64
provider: vmware-iso
- arch: amd64
provider: hyperv-iso
provider: hyperv-iso
tumbleweed: *supp
+34
View File
@@ -0,0 +1,34 @@
#!/usr/bin/env bash
name="${0%.sh}"
base="https://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-NET-x86_64-Current.iso"
# Working directory
tmp="$(mktemp -d)"
checksums="${tmp}/checksums"
# Read the SHA256 sum value
sums="${base}.sha256"
until curl -f -L -o "${checksums}" "${sums}"; do
sleep 1
done
sha="$(cut -d' ' -f 1 "${checksums}")"
cat << EOF > "${name}"
distro = "opensuse"
version = "tumbleweed"
iso = {
url = "${base}"
checksum = "${sha}"
}
boot_command = [
"e<wait>",
"<down><down><down><down><end><wait>",
" autoyast=http://{{ .HTTPIP }}:{{ .HTTPPort }}/autoinst.xml textmode=1<wait>",
"<leftCtrlOn>x<leftCtrlOff>"
]
http_directory = "distros/opensuse/tumbleweed/http/"
EOF
rm -r "${tmp}"
+4
View File
@@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -ex
zypper clean -a
@@ -0,0 +1,123 @@
<?xml version="1.0"?>
<!DOCTYPE profile>
<!-- https://doc.opensuse.org/projects/autoyast/#CreateProfile-General -->
<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>
<groups config:type="list">
<group>
<groupname>wheel</groupname>
<userlist>vagrant</userlist>
</group>
</groups>
<firewall>
<enable_firewall config:type="boolean">true</enable_firewall>
<default_zone>external</default_zone>
<zones config:type="list">
<zone>
<name>public</name>
<interfaces config:type="list">
<interface>eth0</interface>
</interfaces>
<services config:type="list">
<service>ssh</service>
</services>
</zone>
</zones>
</firewall>
<partitioning config:type="list">
<drive>
<use>all</use>
<partitions config:type="list">
<partition>
<mount>/boot</mount>
<size>512MiB</size>
</partition>
<partition>
<mount>/</mount>
<size>max</size>
</partition>
</partitions>
</drive>
</partitioning>
<language>
<language>en_US</language>
</language>
<networking>
<backend>network_manager</backend>
</networking>
<services-manager>
<services>
<enable config:type="list">
<service>sshd</service>
</enable>
</services>
</services-manager>
<software>
<packages config:type="list">
<package>openssh</package>
<package>sudo</package>
</packages>
<do_online_update config:type="boolean">true</do_online_update>
<install_recommended config:type="boolean">false</install_recommended>
<products config:type="list">
<product>openSUSE</product>
</products>
</software>
<timezone>
<hwclock>UTC</hwclock>
<timezone>UTC</timezone>
</timezone>
<users config:type="list">
<user>
<username>root</username>
<user_password>vagrant</user_password>
<encrypted config:type="boolean">false</encrypted>
</user>
<user>
<username>vagrant</username>
<user_password>vagrant</user_password>
<encrypted config:type="boolean">false</encrypted>
</user>
</users>
<scripts>
<post-scripts config:type="list">
<script>
<interpreter>shell</interpreter>
<filename>start.sh</filename>
<!-- <location>some_url</location> -->
<source>
<![CDATA[
#!/bin/sh
echo "Starting installation"
]]>
</source>
</script>
</post-scripts>
</scripts>
<files config:type="list">
<file>
<file_path>/etc/sudoers.d/vagrant</file_path>
<file_contents>
<![CDATA[
Defaults:vagrant !requiretty
vagrant ALL=(ALL) NOPASSWD: ALL
root ALL=(ALL) NOPASSWD: ALL
]]>
</file_contents>
<file_permissions>440</file_permissions>
<file_owner>root</file_owner>
</file>
<file>
<file_path>/home/vagrant/.ssh/authorized_keys</file_path>
<file_permissions>600</file_permissions>
<file_owner>vagrant</file_owner>
<file_location>https://raw.githubusercontent.com/hashicorp/vagrant/master/keys/vagrant.pub</file_location>
</file>
</files>
</profile>
+6
View File
@@ -0,0 +1,6 @@
#!/usr/bin/env bash
set -ex
zypper install -y qemu-guest-agent
systemctl start qemu-guest-agent
systemctl enable qemu-guest-agent
@@ -0,0 +1,2 @@
#!/usr/bin/env bash
set -ex
+2
View File
@@ -0,0 +1,2 @@
#!/usr/bin/env bash
set -ex