From 8bbd65368e5117aefae4eb044ff3215d80019758 Mon Sep 17 00:00:00 2001 From: Gabriel Avanzi Date: Wed, 31 Oct 2018 09:28:51 -0300 Subject: [PATCH] Add Fedora 29 support. --- fedora/fedora-29-x86_64.json | 180 +++++++++++++++++++++++++++++++++++ fedora/http/ks-fedora29.cfg | 45 +++++++++ 2 files changed, 225 insertions(+) create mode 100644 fedora/fedora-29-x86_64.json create mode 100644 fedora/http/ks-fedora29.cfg diff --git a/fedora/fedora-29-x86_64.json b/fedora/fedora-29-x86_64.json new file mode 100644 index 000000000..c56f70da4 --- /dev/null +++ b/fedora/fedora-29-x86_64.json @@ -0,0 +1,180 @@ +{ + "builders": [ + { + "boot_command": [ + " linux ks=http://{{ .HTTPIP }}:{{ .HTTPPort }}/{{user `ks_path`}}" + ], + "boot_wait": "10s", + "disk_size": "{{user `disk_size`}}", + "guest_additions_path": "VBoxGuestAdditions_{{.Version}}.iso", + "guest_os_type": "Fedora_64", + "hard_drive_interface": "sata", + "headless": "{{ user `headless` }}", + "http_directory": "http", + "iso_checksum": "{{user `iso_checksum`}}", + "iso_checksum_type": "{{user `iso_checksum_type`}}", + "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}", + "output_directory": "../builds/packer-{{user `template`}}-virtualbox", + "shutdown_command": "echo 'vagrant'|sudo -S shutdown -P now", + "ssh_password": "vagrant", + "ssh_port": 22, + "ssh_username": "vagrant", + "ssh_wait_timeout": "10000s", + "type": "virtualbox-iso", + "vboxmanage": [ + [ + "modifyvm", + "{{.Name}}", + "--memory", + "{{ user `memory` }}" + ], + [ + "modifyvm", + "{{.Name}}", + "--cpus", + "{{ user `cpus` }}" + ] + ], + "virtualbox_version_file": ".vbox_version", + "vm_name": "{{ user `template` }}" + }, + { + "boot_command": [ + " linux ks=http://{{ .HTTPIP }}:{{ .HTTPPort }}/{{user `ks_path`}}" + ], + "boot_wait": "10s", + "disk_size": "{{user `disk_size`}}", + "guest_os_type": "fedora-64", + "headless": "{{ user `headless` }}", + "http_directory": "http", + "iso_checksum": "{{user `iso_checksum`}}", + "iso_checksum_type": "{{user `iso_checksum_type`}}", + "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}", + "output_directory": "../builds/packer-{{user `template`}}-vmware", + "shutdown_command": "echo 'vagrant'|sudo -S shutdown -P now", + "ssh_password": "vagrant", + "ssh_port": 22, + "ssh_username": "vagrant", + "ssh_wait_timeout": "10000s", + "tools_upload_flavor": "linux", + "type": "vmware-iso", + "vm_name": "{{ user `template` }}", + "vmx_data": { + "cpuid.coresPerSocket": "1", + "ethernet0.pciSlotNumber": "32", + "memsize": "{{ user `memory` }}", + "numvcpus": "{{ user `cpus` }}" + }, + "vmx_remove_ethernet_interfaces": true + }, + { + "boot_command": [ + " linux ks=http://{{ .HTTPIP }}:{{ .HTTPPort }}/{{user `ks_path`}}" + ], + "boot_wait": "10s", + "disk_size": "{{user `disk_size`}}", + "guest_os_type": "fedora-core", + "http_directory": "http", + "iso_checksum": "{{user `iso_checksum`}}", + "iso_checksum_type": "{{user `iso_checksum_type`}}", + "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}", + "output_directory": "../builds/packer-{{user `template`}}-parallels", + "parallels_tools_flavor": "lin", + "prlctl": [ + [ + "set", + "{{.Name}}", + "--memsize", + "{{ user `memory` }}" + ], + [ + "set", + "{{.Name}}", + "--cpus", + "{{ user `cpus` }}" + ] + ], + "prlctl_version_file": ".prlctl_version", + "shutdown_command": "echo 'vagrant'|sudo -S shutdown -P now", + "ssh_password": "vagrant", + "ssh_port": 22, + "ssh_username": "vagrant", + "ssh_wait_timeout": "10000s", + "type": "parallels-iso", + "vm_name": "{{ user `template` }}" + }, + { + "boot_command": [ + " linux ks=http://{{ .HTTPIP }}:{{ .HTTPPort }}/{{user `ks_path`}}" + ], + "boot_wait": "10s", + "disk_size": "{{user `disk_size`}}", + "headless": "{{ user `headless` }}", + "http_directory": "http", + "iso_checksum": "{{user `iso_checksum`}}", + "iso_checksum_type": "{{user `iso_checksum_type`}}", + "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}", + "output_directory": "../builds/packer-{{user `template`}}-qemu", + "shutdown_command": "echo 'vagrant'|sudo -S shutdown -P now", + "ssh_password": "vagrant", + "ssh_port": 22, + "ssh_username": "vagrant", + "ssh_wait_timeout": "10000s", + "type": "qemu", + "vm_name": "{{ user `template` }}" + } + ], + "post-processors": [ + { + "output": "../builds/{{user `box_basename`}}.{{.Provider}}.box", + "type": "vagrant" + } + ], + "provisioners": [ + { + "environment_vars": [ + "HOME_DIR=/home/vagrant", + "http_proxy={{user `http_proxy`}}", + "https_proxy={{user `https_proxy`}}", + "no_proxy={{user `no_proxy`}}" + ], + "execute_command": "echo 'vagrant' | {{.Vars}} sudo -E -S bash '{{.Path}}'", + "expect_disconnect": true, + "scripts": [ + "scripts/swap.sh", + "scripts/fix-slow-dns.sh", + "scripts/build-tools.sh", + "../_common/sshd.sh", + "../_common/virtualbox.sh", + "../_common/vmware.sh", + "../_common/parallels.sh", + "../_common/vagrant.sh", + "scripts/cleanup.sh", + "../_common/minimize.sh" + ], + "type": "shell" + } + ], + "variables": { + "arch": "64", + "box_basename": "fedora-29", + "build_timestamp": "{{isotime \"20060102150405\"}}", + "cpus": "1", + "disk_size": "65536", + "git_revision": "__unknown_git_revision__", + "headless": "", + "http_proxy": "{{env `http_proxy`}}", + "https_proxy": "{{env `https_proxy`}}", + "iso_checksum": "129d131a55e5bd518f593f0eacdce095f7c795fe7ccbef1f3f6aeb2ff9f99f35", + "iso_checksum_type": "sha256", + "iso_name": "Fedora-Server-dvd-x86_64-29-1.2.iso", + "ks_path": "ks-fedora29.cfg", + "memory": "1024", + "mirror": "http://download.fedoraproject.org/pub/fedora/linux", + "mirror_directory": "releases/29/Server/x86_64/iso", + "name": "fedora-29", + "no_proxy": "{{env `no_proxy`}}", + "template": "fedora-29-x86_64", + "version": "TIMESTAMP" + } +} diff --git a/fedora/http/ks-fedora29.cfg b/fedora/http/ks-fedora29.cfg new file mode 100644 index 000000000..7a57bc581 --- /dev/null +++ b/fedora/http/ks-fedora29.cfg @@ -0,0 +1,45 @@ +install +cdrom +lang en_US.UTF-8 +keyboard us +network --bootproto=dhcp +rootpw vagrant +firewall --disabled +authconfig --enableshadow --passalgo=sha512 +selinux --permissive +timezone UTC +bootloader --location=mbr +text +skipx +zerombr +clearpart --all --initlabel +part / --fstype=ext4 --ondisk=sda --grow --label=root +firstboot --disabled +reboot +user --name=vagrant --plaintext --password vagrant + +%packages --ignoremissing --excludedocs +bzip2 +# GCC won't install during kickstart +# gcc +kernel-devel +kernel-headers +tar +wget +nfs-utils +net-tools +-plymouth +-plymouth-core-libs +-fedora-release-notes +-mcelog +-smartmontools +-usbutils +-man-pages +%end + +%post +# sudo +echo 'Defaults:vagrant !requiretty' > /etc/sudoers.d/vagrant +echo '%vagrant ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers.d/vagrant +chmod 440 /etc/sudoers.d/vagrant +%end