Compare commits
121 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c325dd3440 | ||
|
|
c7e2413c81 | ||
|
|
fd0acbd83a | ||
|
|
29b32f1468 | ||
|
|
b52e5c7a4c | ||
|
|
133e7c6a58 | ||
|
|
64bcfab34f | ||
|
|
46e508d728 | ||
|
|
c558b3697f | ||
|
|
423c9f4fb5 | ||
|
|
5d8a1dda00 | ||
|
|
cdc1bcb504 | ||
|
|
741be6bf10 | ||
|
|
3ad5529cda | ||
|
|
5c0091fa77 | ||
|
|
9dfc6b1d33 | ||
|
|
f2fbedbfc7 | ||
|
|
06a01bb7dc | ||
|
|
b9a72d29ed | ||
|
|
e9964a7cec | ||
|
|
8be5983d67 | ||
|
|
7918e21ebc | ||
|
|
74fbed7e72 | ||
|
|
06547fa4ae | ||
|
|
68ca65fe45 | ||
|
|
3dfa1b13eb | ||
|
|
367cd901d5 | ||
|
|
22ab22f54f | ||
|
|
bde1004998 | ||
|
|
af13cd4466 | ||
|
|
9bd99486ec | ||
|
|
e1dc1730d1 | ||
|
|
7f5f40e050 | ||
|
|
f4b18c8061 | ||
|
|
0e8f8ff679 | ||
|
|
877caefd64 | ||
|
|
977477db9d | ||
|
|
b1da39fe21 | ||
|
|
a818771e25 | ||
|
|
d0852c10bc | ||
|
|
c4e3252d65 | ||
|
|
370314d353 | ||
|
|
8166ad4d19 | ||
|
|
aca9cba842 | ||
|
|
47c78d3fac | ||
|
|
e0c1e9f767 | ||
|
|
e3c0e18c48 | ||
|
|
3ec2a91656 | ||
|
|
7426286be3 | ||
|
|
6f60b44847 | ||
|
|
d7cab95a21 | ||
|
|
9e88df9f50 | ||
|
|
6c4fe96dc7 | ||
|
|
a038870bda | ||
|
|
90483a464f | ||
|
|
cf7bb5eec6 | ||
|
|
0daa55f384 | ||
|
|
9794ff0ea3 | ||
|
|
a3f916a7e0 | ||
|
|
463989fcdb | ||
|
|
66e138ab8d | ||
|
|
119b633434 | ||
|
|
dd6f3364fc | ||
|
|
42d1265986 | ||
|
|
361fdfce50 | ||
|
|
2566802e4f | ||
|
|
4d8bcb7102 | ||
|
|
63ad65405c | ||
|
|
3fa83edb32 | ||
|
|
4a4fee6bcf | ||
|
|
f0bdc668ba | ||
|
|
a5a849c186 | ||
|
|
62085104a6 | ||
|
|
29af1cbae9 | ||
|
|
a94f82447d | ||
|
|
949edd8fe2 | ||
|
|
b0233038cb | ||
|
|
341a0d6e7e | ||
|
|
63ebca6427 | ||
|
|
6a102ee265 | ||
|
|
a41ffb1f1e | ||
|
|
997cdff496 | ||
|
|
0dc1315783 | ||
|
|
f2a6352e61 | ||
|
|
4f20c3720f | ||
|
|
a5a99e19ce | ||
|
|
ba5324f83c | ||
|
|
1b50657062 | ||
|
|
c1ed3ab9bd | ||
|
|
16debff89b | ||
|
|
438107af27 | ||
|
|
db8b99fe25 | ||
|
|
e127e08cf7 | ||
|
|
2cba47fca0 | ||
|
|
084a0ce979 | ||
|
|
32b654c733 | ||
|
|
17c2693c74 | ||
|
|
479effc7fb | ||
|
|
1785e066a2 | ||
|
|
e295bd363a | ||
|
|
f8dea06687 | ||
|
|
9f7dfbba3c | ||
|
|
2deed01c45 | ||
|
|
0bf51ed086 | ||
|
|
fd56619619 | ||
|
|
4025591235 | ||
|
|
0ff2e477b6 |
||
|
|
d004e0d2bd | ||
|
|
1ad6f6d83f | ||
|
|
00fcc510bd | ||
|
|
f3c7e9eab1 | ||
|
|
c1add3bf7f | ||
|
|
31eccf9cf0 | ||
|
|
41de61013e | ||
|
|
f4b55f1a3b | ||
|
|
a5795b1287 | ||
|
|
9451718ec7 | ||
|
|
b2df1af3f0 | ||
|
|
676db50fdd | ||
|
|
cb0dbe130f | ||
|
|
022d7003d0 |
17 changed files with 1595 additions and 693 deletions
1
.fmf/version
Normal file
1
.fmf/version
Normal file
|
|
@ -0,0 +1 @@
|
|||
1
|
||||
118
.gitignore
vendored
118
.gitignore
vendored
|
|
@ -172,3 +172,121 @@ pykickstart-1.78.tar.gz
|
|||
/pykickstart-2.32.tar.gz
|
||||
/pykickstart-2.33.tar.gz
|
||||
/pykickstart-2.34.tar.gz
|
||||
/pykickstart-2.35.tar.gz
|
||||
/pykickstart-2.36.tar.gz
|
||||
/pykickstart-2.37.tar.gz
|
||||
/pykickstart-2.39.tar.gz
|
||||
/pykickstart-2.40.tar.gz
|
||||
/pykickstart-2.41.tar.gz
|
||||
/pykickstart-2.42.tar.gz
|
||||
/pykickstart-2.43.tar.gz
|
||||
/pykickstart-2.44.tar.gz
|
||||
/pykickstart-3.10.tar.gz
|
||||
/pykickstart-3.11.tar.gz
|
||||
/pykickstart-3.12.tar.gz
|
||||
/pykickstart-3.13.tar.gz
|
||||
/pykickstart-3.14.tar.gz
|
||||
/pykickstart-3.15.tar.gz
|
||||
/pykickstart-3.16.tar.gz
|
||||
/pykickstart-3.17.tar.gz
|
||||
/pykickstart-3.18.tar.gz
|
||||
/pykickstart-3.19.tar.gz
|
||||
/pykickstart-3.19.tar.gz.asc
|
||||
/pykickstart-3.20.tar.gz
|
||||
/pykickstart-3.20.tar.gz.asc
|
||||
/pykickstart-3.21.tar.gz
|
||||
/pykickstart-3.21.tar.gz.asc
|
||||
/pykickstart-3.22.tar.gz
|
||||
/pykickstart-3.22.tar.gz.asc
|
||||
/pykickstart-3.23.tar.gz
|
||||
/pykickstart-3.23.tar.gz.asc
|
||||
/pykickstart-3.24.tar.gz
|
||||
/pykickstart-3.24.tar.gz.asc
|
||||
/pykickstart-3.25.tar.gz
|
||||
/pykickstart-3.25.tar.gz.asc
|
||||
/pykickstart-3.26.tar.gz
|
||||
/pykickstart-3.26.tar.gz.asc
|
||||
/pykickstart-3.27.tar.gz
|
||||
/pykickstart-3.27.tar.gz.asc
|
||||
/pykickstart-3.28.tar.gz
|
||||
/pykickstart-3.28.tar.gz.asc
|
||||
/pykickstart-3.29.tar.gz
|
||||
/pykickstart-3.29.tar.gz.asc
|
||||
/pykickstart-3.30.tar.gz
|
||||
/pykickstart-3.30.tar.gz.asc
|
||||
/pykickstart-3.31.tar.gz
|
||||
/pykickstart-3.31.tar.gz.asc
|
||||
/pykickstart-3.32.tar.gz
|
||||
/pykickstart-3.32.tar.gz.asc
|
||||
/pykickstart-3.33.tar.gz
|
||||
/pykickstart-3.33.tar.gz.asc
|
||||
/pykickstart-3.34.tar.gz
|
||||
/pykickstart-3.34.tar.gz.asc
|
||||
/pykickstart-3.35.tar.gz
|
||||
/pykickstart-3.35.tar.gz.asc
|
||||
/pykickstart-3.36.tar.gz
|
||||
/pykickstart-3.36.tar.gz.asc
|
||||
/pykickstart-3.37.tar.gz
|
||||
/pykickstart-3.37.tar.gz.asc
|
||||
/pykickstart-3.38.tar.gz
|
||||
/pykickstart-3.38.tar.gz.asc
|
||||
/pykickstart-3.39.tar.gz
|
||||
/pykickstart-3.39.tar.gz.asc
|
||||
/pykickstart-3.40.tar.gz
|
||||
/pykickstart-3.40.tar.gz.asc
|
||||
/pykickstart-3.41.tar.gz
|
||||
/pykickstart-3.41.tar.gz.asc
|
||||
/pykickstart-3.42.tar.gz
|
||||
/pykickstart-3.42.tar.gz.asc
|
||||
/pykickstart-3.43.tar.gz
|
||||
/pykickstart-3.43.tar.gz.asc
|
||||
/pykickstart-3.44.tar.gz
|
||||
/pykickstart-3.44.tar.gz.asc
|
||||
/pykickstart-3.45.tar.gz
|
||||
/pykickstart-3.45.tar.gz.asc
|
||||
/pykickstart-3.46.tar.gz
|
||||
/pykickstart-3.46.tar.gz.asc
|
||||
/pykickstart-3.47.tar.gz
|
||||
/pykickstart-3.47.tar.gz.asc
|
||||
/pykickstart-3.48.tar.gz
|
||||
/pykickstart-3.48.tar.gz.asc
|
||||
/pykickstart-3.49.tar.gz
|
||||
/pykickstart-3.49.tar.gz.asc
|
||||
/pykickstart-3.50.tar.gz
|
||||
/pykickstart-3.50.tar.gz.asc
|
||||
/pykickstart-3.51.tar.gz
|
||||
/pykickstart-3.51.tar.gz.asc
|
||||
/pykickstart-3.52.tar.gz
|
||||
/pykickstart-3.52.tar.gz.asc
|
||||
/pykickstart-3.53.tar.gz
|
||||
/pykickstart-3.53.tar.gz.asc
|
||||
/pykickstart-3.54.tar.gz
|
||||
/pykickstart-3.54.tar.gz.asc
|
||||
/pykickstart-3.55.tar.gz
|
||||
/pykickstart-3.55.tar.gz.asc
|
||||
/pykickstart-3.56.tar.gz
|
||||
/pykickstart-3.56.tar.gz.asc
|
||||
/pykickstart-3.57.tar.gz
|
||||
/pykickstart-3.57.tar.gz.asc
|
||||
/pykickstart-3.58.tar.gz
|
||||
/pykickstart-3.58.tar.gz.asc
|
||||
/pykickstart-3.59.tar.gz
|
||||
/pykickstart-3.59.tar.gz.asc
|
||||
/pykickstart-3.60.tar.gz
|
||||
/pykickstart-3.60.tar.gz.asc
|
||||
/pykickstart-3.61.tar.gz
|
||||
/pykickstart-3.61.tar.gz.asc
|
||||
/pykickstart-3.62.tar.gz
|
||||
/pykickstart-3.62.tar.gz.asc
|
||||
/pykickstart-3.63.tar.gz
|
||||
/pykickstart-3.63.tar.gz.asc
|
||||
/pykickstart-3.64.tar.gz
|
||||
/pykickstart-3.64.tar.gz.asc
|
||||
/pykickstart-3.65.tar.gz
|
||||
/pykickstart-3.65.tar.gz.asc
|
||||
/pykickstart-3.66.tar.gz
|
||||
/pykickstart-3.66.tar.gz.asc
|
||||
/pykickstart-3.67.tar.gz
|
||||
/pykickstart-3.67.tar.gz.asc
|
||||
/pykickstart-3.68.tar.gz
|
||||
/pykickstart-3.68.tar.gz.asc
|
||||
|
|
|
|||
7
gating.yaml
Normal file
7
gating.yaml
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_contexts: [bodhi_update_push_stable]
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
8
plans/run-tests.fmf
Normal file
8
plans/run-tests.fmf
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
summary: Run pykickstart tests
|
||||
prepare:
|
||||
how: install
|
||||
package:
|
||||
- python3-kickstart
|
||||
- pykickstart
|
||||
execute:
|
||||
script: ./tests/scripts/run_tests.sh
|
||||
1675
pykickstart.spec
1675
pykickstart.spec
File diff suppressed because it is too large
Load diff
3
sources
3
sources
|
|
@ -1 +1,2 @@
|
|||
SHA512 (pykickstart-2.34.tar.gz) = 783a28139396351cf9a02db7d92bc5d032e4d23dda4245a3b237c3550dc84d4f3398658bafae48e282b65a0c5b42718a1a8ed86f8f848d0df9fa1ffc3e31d895
|
||||
SHA512 (pykickstart-3.68.tar.gz) = 103034f2ad47afa470066b4c98092ac634c5c5ed21c1c98a65170c78cc86e95f5565bb4c29a24a890836e45d2094b529fcdb02f8a004875cc13db505bd2ba51e
|
||||
SHA512 (pykickstart-3.68.tar.gz.asc) = 33d2e3ea50bdffdb7bc4939b68c3069d6fce6087cd186ac57773981928a090608f7509fd8f63bacbbd6544d828da3eb1e1fb785f5ff7e547364c9cd360eaf106
|
||||
|
|
|
|||
47
tests/bad-ks/fedora-disk-base.ks
Normal file
47
tests/bad-ks/fedora-disk-base.ks
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
text
|
||||
lang en_US.UTF-8
|
||||
keyboard us
|
||||
timezone US/Eastern
|
||||
selinux --enforcing
|
||||
firewall --enabled --service=mdns
|
||||
services --enabled=sshd,NetworkManager,chronyd
|
||||
network --bootproto=dhcp --device=link --activate
|
||||
rootpw --lock --iscrypted locked
|
||||
shutdown
|
||||
|
||||
bootloader --timeout=1
|
||||
|
||||
zerombr
|
||||
clearpart --all --initlabel --disklabel=msdos
|
||||
|
||||
# make sure that initial-setup runs and lets us do all the configuration bits
|
||||
firstboot --reconfig
|
||||
|
||||
repo --name "packages" --url https://nowhere/
|
||||
|
||||
%packages
|
||||
@core
|
||||
@standard
|
||||
@hardware-support
|
||||
|
||||
kernel
|
||||
# on 32bit arm make sure we only install one kernel
|
||||
-kernel-lpae
|
||||
# remove this in %post
|
||||
dracut-config-generic
|
||||
-dracut-config-rescue
|
||||
# install tools needed to manage and boot arm systems
|
||||
@arm-tools
|
||||
chrony
|
||||
bcm283x-firmware
|
||||
initial-setup
|
||||
# Intel wireless firmware assumed never of use for disk images
|
||||
-iwl*
|
||||
-ipw*
|
||||
-usb_modeswitch
|
||||
-generic-release*
|
||||
|
||||
# make sure all the locales are available for inital-setup and anaconda to work
|
||||
glibc-all-langpacks
|
||||
|
||||
%end
|
||||
2
tests/bad-ks/no-commands.ks
Normal file
2
tests/bad-ks/no-commands.ks
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
echo "not a kickstart"
|
||||
without any --commands
|
||||
104
tests/good-ks/fedora-disk-base.ks
Normal file
104
tests/good-ks/fedora-disk-base.ks
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
# fedora-disk-base.ks
|
||||
#
|
||||
# Defines the basics for all kickstarts in the fedora-live branch
|
||||
# Does not include package selection (other then mandatory)
|
||||
# Does not include localization packages or configuration
|
||||
#
|
||||
# Does includes "default" language configuration (kickstarts including
|
||||
# this template can override these settings)
|
||||
|
||||
text
|
||||
lang en_US.UTF-8
|
||||
keyboard us
|
||||
timezone US/Eastern
|
||||
selinux --enforcing
|
||||
firewall --enabled --service=mdns
|
||||
services --enabled=sshd,NetworkManager,chronyd
|
||||
network --bootproto=dhcp --device=link --activate
|
||||
rootpw --lock --iscrypted locked
|
||||
shutdown
|
||||
|
||||
bootloader --timeout=1
|
||||
|
||||
zerombr
|
||||
clearpart --all --initlabel --disklabel=msdos
|
||||
|
||||
# make sure that initial-setup runs and lets us do all the configuration bits
|
||||
firstboot --reconfig
|
||||
|
||||
%include fedora-repo.ks
|
||||
|
||||
%packages
|
||||
@core
|
||||
@standard
|
||||
@hardware-support
|
||||
|
||||
kernel
|
||||
# on 32bit arm make sure we only install one kernel
|
||||
-kernel-lpae
|
||||
# remove this in %post
|
||||
dracut-config-generic
|
||||
-dracut-config-rescue
|
||||
# install tools needed to manage and boot arm systems
|
||||
@arm-tools
|
||||
chrony
|
||||
bcm283x-firmware
|
||||
initial-setup
|
||||
# Intel wireless firmware assumed never of use for disk images
|
||||
-iwl*
|
||||
-ipw*
|
||||
-usb_modeswitch
|
||||
-generic-release*
|
||||
|
||||
# make sure all the locales are available for inital-setup and anaconda to work
|
||||
glibc-all-langpacks
|
||||
|
||||
%end
|
||||
|
||||
%post
|
||||
|
||||
# Find the architecture we are on
|
||||
arch=$(uname -m)
|
||||
|
||||
# Setup Raspberry Pi firmware
|
||||
if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; then
|
||||
if [[ $arch == "aarch64" ]]; then
|
||||
cp -P /usr/share/uboot/rpi_3/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||
cp -P /usr/share/uboot/rpi_4/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
||||
cp -P /usr/share/uboot/rpi_arm64/u-boot.bin /boot/efi/rpi-u-boot.bin
|
||||
else
|
||||
cp -P /usr/share/uboot/rpi_2/u-boot.bin /boot/efi/rpi2-u-boot.bin
|
||||
cp -P /usr/share/uboot/rpi_3_32b/u-boot.bin /boot/efi/rpi3-u-boot.bin
|
||||
cp -P /usr/share/uboot/rpi_4_32b/u-boot.bin /boot/efi/rpi4-u-boot.bin
|
||||
fi
|
||||
fi
|
||||
|
||||
releasever=$(rpm --eval '%{fedora}')
|
||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-primary
|
||||
echo "Packages within this disk image"
|
||||
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
|
||||
|
||||
# remove random seed, the newly installed instance should make it's own
|
||||
rm -f /var/lib/systemd/random-seed
|
||||
|
||||
# The enp1s0 interface is a left over from the imagefactory install, clean this up
|
||||
rm -f /etc/NetworkManager/system-connections/*.nmconnection
|
||||
|
||||
dnf -y remove dracut-config-generic
|
||||
|
||||
# Remove machine-id on pre generated images
|
||||
rm -f /etc/machine-id
|
||||
touch /etc/machine-id
|
||||
|
||||
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||
rm -f /var/lib/rpm/__db*
|
||||
|
||||
# Anaconda adds console=tty0 to the grub boot line on all images. this is problematic
|
||||
# when you are using fedora via serial console as you do not get any output post grub
|
||||
# linux does a good job of knowing what consoles need to be enabled.
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2022757
|
||||
if [[ $arch == "aarch64" ]] || [[ $arch == "armv7l" ]]; then
|
||||
sed -i -e 's|console=tty0||g' /boot/loader/entries/*conf
|
||||
fi
|
||||
|
||||
%end
|
||||
106
tests/good-ks/fedora-live-base.ks
Normal file
106
tests/good-ks/fedora-live-base.ks
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
# fedora-live-base.ks
|
||||
#
|
||||
# Defines the basics for all kickstarts in the fedora-live branch
|
||||
# Does not include package selection (other then mandatory)
|
||||
# Does not include localization packages or configuration
|
||||
#
|
||||
# Does includes "default" language configuration (kickstarts including
|
||||
# this template can override these settings)
|
||||
|
||||
lang en_US.UTF-8
|
||||
keyboard us
|
||||
timezone US/Eastern
|
||||
selinux --enforcing
|
||||
firewall --enabled --service=mdns
|
||||
xconfig --startxonboot
|
||||
zerombr
|
||||
clearpart --all
|
||||
part / --size 5120 --fstype ext4
|
||||
services --enabled=NetworkManager,ModemManager --disabled=sshd
|
||||
network --bootproto=dhcp --device=link --activate
|
||||
rootpw --lock --iscrypted locked
|
||||
shutdown
|
||||
|
||||
%include fedora-repo.ks
|
||||
|
||||
%packages
|
||||
# Explicitly specified here:
|
||||
# <notting> walters: because otherwise dependency loops cause yum issues.
|
||||
kernel
|
||||
kernel-modules
|
||||
kernel-modules-extra
|
||||
|
||||
# The point of a live image is to install
|
||||
anaconda
|
||||
anaconda-install-env-deps
|
||||
anaconda-live
|
||||
@anaconda-tools
|
||||
# Anaconda has a weak dep on this and we don't want it on livecds, see
|
||||
# https://fedoraproject.org/wiki/Changes/RemoveDeviceMapperMultipathFromWorkstationLiveCD
|
||||
-fcoe-utils
|
||||
-device-mapper-multipath
|
||||
|
||||
# Need aajohan-comfortaa-fonts for the SVG rnotes images
|
||||
aajohan-comfortaa-fonts
|
||||
|
||||
# Without this, initramfs generation during live image creation fails: #1242586
|
||||
dracut-live
|
||||
|
||||
# anaconda needs the locales available to run for different locales
|
||||
glibc-all-langpacks
|
||||
|
||||
# provide the livesys scripts
|
||||
livesys-scripts
|
||||
%end
|
||||
|
||||
%post
|
||||
# Enable livesys services
|
||||
systemctl enable livesys.service
|
||||
systemctl enable livesys-late.service
|
||||
|
||||
# enable tmpfs for /tmp
|
||||
systemctl enable tmp.mount
|
||||
|
||||
# make it so that we don't do writing to the overlay for things which
|
||||
# are just tmpdirs/caches
|
||||
# note https://bugzilla.redhat.com/show_bug.cgi?id=1135475
|
||||
cat >> /etc/fstab << EOF
|
||||
vartmp /var/tmp tmpfs defaults 0 0
|
||||
EOF
|
||||
|
||||
# work around for poor key import UI in PackageKit
|
||||
rm -f /var/lib/rpm/__db*
|
||||
echo "Packages within this LiveCD"
|
||||
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
|
||||
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||
rm -f /var/lib/rpm/__db*
|
||||
|
||||
# go ahead and pre-make the man -k cache (#455968)
|
||||
/usr/bin/mandb
|
||||
|
||||
# make sure there aren't core files lying around
|
||||
rm -f /core*
|
||||
|
||||
# remove random seed, the newly installed instance should make it's own
|
||||
rm -f /var/lib/systemd/random-seed
|
||||
|
||||
# convince readahead not to collect
|
||||
# FIXME: for systemd
|
||||
|
||||
echo 'File created by kickstart. See systemd-update-done.service(8).' \
|
||||
| tee /etc/.updated >/var/.updated
|
||||
|
||||
# Drop the rescue kernel and initramfs, we don't need them on the live media itself.
|
||||
# See bug 1317709
|
||||
rm -f /boot/*-rescue*
|
||||
|
||||
# Disable network service here, as doing it in the services line
|
||||
# fails due to RHBZ #1369794
|
||||
systemctl disable network
|
||||
|
||||
# Remove machine-id on pre generated images
|
||||
rm -f /etc/machine-id
|
||||
touch /etc/machine-id
|
||||
|
||||
%end
|
||||
|
||||
106
tests/include-ks/fedora-live-base.ks
Normal file
106
tests/include-ks/fedora-live-base.ks
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
# fedora-live-base.ks
|
||||
#
|
||||
# Defines the basics for all kickstarts in the fedora-live branch
|
||||
# Does not include package selection (other then mandatory)
|
||||
# Does not include localization packages or configuration
|
||||
#
|
||||
# Does includes "default" language configuration (kickstarts including
|
||||
# this template can override these settings)
|
||||
|
||||
lang en_US.UTF-8
|
||||
keyboard us
|
||||
timezone US/Eastern
|
||||
selinux --enforcing
|
||||
firewall --enabled --service=mdns
|
||||
xconfig --startxonboot
|
||||
zerombr
|
||||
clearpart --all
|
||||
##part / --size 5120 --fstype ext4
|
||||
services --enabled=NetworkManager,ModemManager --disabled=sshd
|
||||
network --bootproto=dhcp --device=link --activate
|
||||
rootpw --lock --iscrypted locked
|
||||
shutdown
|
||||
|
||||
%include fedora-repo.ks
|
||||
|
||||
%packages
|
||||
# Explicitly specified here:
|
||||
# <notting> walters: because otherwise dependency loops cause yum issues.
|
||||
kernel
|
||||
kernel-modules
|
||||
kernel-modules-extra
|
||||
|
||||
# The point of a live image is to install
|
||||
anaconda
|
||||
anaconda-install-env-deps
|
||||
anaconda-live
|
||||
@anaconda-tools
|
||||
# Anaconda has a weak dep on this and we don't want it on livecds, see
|
||||
# https://fedoraproject.org/wiki/Changes/RemoveDeviceMapperMultipathFromWorkstationLiveCD
|
||||
-fcoe-utils
|
||||
-device-mapper-multipath
|
||||
|
||||
# Need aajohan-comfortaa-fonts for the SVG rnotes images
|
||||
aajohan-comfortaa-fonts
|
||||
|
||||
# Without this, initramfs generation during live image creation fails: #1242586
|
||||
dracut-live
|
||||
|
||||
# anaconda needs the locales available to run for different locales
|
||||
glibc-all-langpacks
|
||||
|
||||
# provide the livesys scripts
|
||||
livesys-scripts
|
||||
%end
|
||||
|
||||
%post
|
||||
# Enable livesys services
|
||||
systemctl enable livesys.service
|
||||
systemctl enable livesys-late.service
|
||||
|
||||
# enable tmpfs for /tmp
|
||||
systemctl enable tmp.mount
|
||||
|
||||
# make it so that we don't do writing to the overlay for things which
|
||||
# are just tmpdirs/caches
|
||||
# note https://bugzilla.redhat.com/show_bug.cgi?id=1135475
|
||||
cat >> /etc/fstab << EOF
|
||||
vartmp /var/tmp tmpfs defaults 0 0
|
||||
EOF
|
||||
|
||||
# work around for poor key import UI in PackageKit
|
||||
rm -f /var/lib/rpm/__db*
|
||||
echo "Packages within this LiveCD"
|
||||
rpm -qa --qf '%{size}\t%{name}-%{version}-%{release}.%{arch}\n' |sort -rn
|
||||
# Note that running rpm recreates the rpm db files which aren't needed or wanted
|
||||
rm -f /var/lib/rpm/__db*
|
||||
|
||||
# go ahead and pre-make the man -k cache (#455968)
|
||||
/usr/bin/mandb
|
||||
|
||||
# make sure there aren't core files lying around
|
||||
rm -f /core*
|
||||
|
||||
# remove random seed, the newly installed instance should make it's own
|
||||
rm -f /var/lib/systemd/random-seed
|
||||
|
||||
# convince readahead not to collect
|
||||
# FIXME: for systemd
|
||||
|
||||
echo 'File created by kickstart. See systemd-update-done.service(8).' \
|
||||
| tee /etc/.updated >/var/.updated
|
||||
|
||||
# Drop the rescue kernel and initramfs, we don't need them on the live media itself.
|
||||
# See bug 1317709
|
||||
rm -f /boot/*-rescue*
|
||||
|
||||
# Disable network service here, as doing it in the services line
|
||||
# fails due to RHBZ #1369794
|
||||
systemctl disable network
|
||||
|
||||
# Remove machine-id on pre generated images
|
||||
rm -f /etc/machine-id
|
||||
touch /etc/machine-id
|
||||
|
||||
%end
|
||||
|
||||
9
tests/include-ks/fedora-live-minimization.ks
Normal file
9
tests/include-ks/fedora-live-minimization.ks
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Common packages removed from comps
|
||||
# For F14, these removals should be moved to comps itself
|
||||
|
||||
%packages
|
||||
|
||||
# save some space
|
||||
-hplip
|
||||
|
||||
%end
|
||||
33
tests/include-ks/fedora-live-xfce.ks
Normal file
33
tests/include-ks/fedora-live-xfce.ks
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# fedora-livecd-xfce.ks
|
||||
#
|
||||
# Description:
|
||||
# - Fedora Live Spin with the light-weight XFCE Desktop Environment
|
||||
#
|
||||
# Maintainer(s):
|
||||
# - Rahul Sundaram <sundaram@fedoraproject.org>
|
||||
# - Christoph Wickert <cwickert@fedoraproject.org>
|
||||
# - Kevin Fenzi <kevin@tummy.com>
|
||||
# - Adam Miller <maxamillion@fedoraproject.org>
|
||||
|
||||
%include fedora-live-base.ks
|
||||
%include fedora-live-minimization.ks
|
||||
%include fedora-xfce-common.ks
|
||||
|
||||
# need a bigger /
|
||||
part / --size 6144
|
||||
|
||||
%post
|
||||
# xfce configuration
|
||||
|
||||
# create /etc/sysconfig/desktop (needed for installation)
|
||||
|
||||
cat > /etc/sysconfig/desktop <<EOF
|
||||
PREFERRED=/usr/bin/startxfce4
|
||||
DISPLAYMANAGER=/usr/sbin/lightdm
|
||||
EOF
|
||||
|
||||
# set livesys session type
|
||||
sed -i 's/^livesys_session=.*/livesys_session="xfce"/' /etc/sysconfig/livesys
|
||||
|
||||
%end
|
||||
|
||||
2
tests/include-ks/fedora-repo-rawhide.ks
Normal file
2
tests/include-ks/fedora-repo-rawhide.ks
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
repo --name=rawhide --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=$basearch
|
||||
url --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=rawhide&arch=$basearch
|
||||
9
tests/include-ks/fedora-repo.ks
Normal file
9
tests/include-ks/fedora-repo.ks
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Include the appropriate repo definitions
|
||||
|
||||
# Exactly one of the following should be uncommented
|
||||
|
||||
# For the master branch the following should be uncommented
|
||||
%include fedora-repo-rawhide.ks
|
||||
|
||||
# For non-master branches the following should be uncommented
|
||||
# %include fedora-repo-not-rawhide.ks
|
||||
34
tests/include-ks/fedora-xfce-common.ks
Normal file
34
tests/include-ks/fedora-xfce-common.ks
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
# fedora-livecd-xfce.ks
|
||||
#
|
||||
# Description:
|
||||
# - Fedora Live Spin with the light-weight XFCE Desktop Environment
|
||||
#
|
||||
# Maintainer(s):
|
||||
# - Kevin Fenzi <kevin@tummy.com>
|
||||
# - Adam Miller <maxamillion@fedoraproject.org>
|
||||
# - Mukundan Ragavan <nonamedotc@fedoraproject.org>
|
||||
|
||||
%packages
|
||||
|
||||
fedora-release-xfce
|
||||
# install env-group to resolve RhBug:1891500
|
||||
@^xfce-desktop-environment
|
||||
|
||||
@xfce-apps
|
||||
@xfce-extra-plugins
|
||||
@xfce-media
|
||||
@xfce-office
|
||||
|
||||
wget
|
||||
system-config-printer
|
||||
|
||||
# save some space
|
||||
-autofs
|
||||
-acpid
|
||||
-gimp-help
|
||||
-desktop-backgrounds-basic
|
||||
-aspell-* # dictionaries are big
|
||||
-xfce4-sensors-plugin
|
||||
-xfce4-eyes-plugin
|
||||
|
||||
%end
|
||||
24
tests/scripts/run_tests.sh
Executable file
24
tests/scripts/run_tests.sh
Executable file
|
|
@ -0,0 +1,24 @@
|
|||
#!/bin/sh
|
||||
|
||||
echo "Running pykickstart tests"
|
||||
cd ./tests/
|
||||
|
||||
# Run ksvalidator on good kickstart examples
|
||||
for f in ./good-ks/*.ks; do
|
||||
echo "Checking $f"
|
||||
ksvalidator $f || exit 1
|
||||
done
|
||||
|
||||
# Run ksvalidator on bad kickstart examples
|
||||
for f in ./bad-ks/*.ks; do
|
||||
echo "Checking $f"
|
||||
ksvalidator $f && exit 1
|
||||
done
|
||||
|
||||
|
||||
# Run ksflatten on a set of kickstarts
|
||||
echo "Testing ksflatten with included kickstarts"
|
||||
ksflatten -c ./include-ks/fedora-live-xfce.ks -o flat.ks || exit 1
|
||||
ksvalidator flat.ks || exit 1
|
||||
|
||||
exit 0
|
||||
Loading…
Add table
Add a link
Reference in a new issue