#483 Remove Atomic Host kickstarts F30 and onward in the favor of FCOS
Merged 5 years ago by mohanboddu. Opened 5 years ago by sinnykumari.
sinnykumari/fedora-kickstarts master  into  master

@@ -1,37 +0,0 @@ 

- # Like the Atomic Host cloud image, but tuned for vagrant: enable the

- # vagrant user, disable cloud-init.

- 

- %include fedora-atomic.ks

- 

- user --name=vagrant --password=vagrant

- rootpw vagrant

- 

- # The addition of the net.ifnames=0 and biosdevnames=0 option ensures that

- # even on VirtualBox virt, we get a primary network device with "eth0" as the name

- # This simplifies things and allows a single disk image for both supported Vagrant

- # platforms (virtualbox and kvm)

- bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8 net.ifnames=0 biosdevname=0"

- 

- %post --erroronfail

- 

- # Work around cloud-init being both disabled and enabled; need

- # to refactor to a common base.

- systemctl mask cloud-init cloud-init-local cloud-config cloud-final

- 

- # The inherited cloud %post locks the passwd, but we want it

- # unlocked for vagrant, just like downstream.

- passwd -u root

- 

- # Vagrant setup

- sed -i 's,Defaults\\s*requiretty,Defaults !requiretty,' /etc/sudoers

- echo 'vagrant ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/vagrant-nopasswd

- sed -i 's/.*UseDNS.*/UseDNS no/' /etc/ssh/sshd_config

- mkdir -m 0700 -p ~vagrant/.ssh

- cat > ~vagrant/.ssh/authorized_keys << EOKEYS

- ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzIw+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoPkcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ== vagrant insecure public key

- EOKEYS

- chmod 600 ~vagrant/.ssh/authorized_keys

- chown -R vagrant:vagrant ~vagrant/.ssh/

- 

- %end

- 

file removed
-157
@@ -1,157 +0,0 @@ 

- # Fedora Atomic Host is the Fedora version of the "Atomic Host" pattern

- # from [Project Atomic](http://www.projectatomic.io/).

- 

- # This kickstart is used for cloud/virt images, and uses cloud-init

- # to bootstrap authentication, just like Fedora Cloud Base.  (Also note the

- # fedora-atomic-vagrant.ks kickstart inherits from this).

- 

- # One very important thing to understand is that this image contains the same

- # OSTree commit as will be used on bare metal installations - Fedora Atomic Host

- # also has an ISO. One difference though is that cloud-init isn't enabled for

- # bare metal. When processing this kickstart then, Anaconda isn't actually

- # installing packages - it's just replicating a "pre-assembled" tree from

- # rpm-ostree.

- 

- # Basically, the `ostreesetup` verb replaces the traditional `%packages`

- # section. For example, `rpm-ostree status` can show you the same checksum and

- # version from an ISO install and this cloud image - it's the same bits.

- 

- text # don't use cmdline -- https://github.com/rhinstaller/anaconda/issues/931

- lang en_US.UTF-8

- keyboard us

- timezone --utc Etc/UTC

- 

- auth --useshadow --passalgo=sha512

- selinux --enforcing

- rootpw --lock --iscrypted locked

- 

- # Explicitly disable firewall since cloud providers generally provide

- # higher level firewall constructs (i.e. security groups).

- firewall --disabled

- 

- # console=ttyAMA0 and console=hvc0 as kernel boot parameter to see

- # kernel boot messages on serial console as well on aarch64 and

- # ppc64le respectively.

- # https://pagure.io/atomic-wg/issue/347

- bootloader --timeout=1 --append="no_timer_check console=tty1 console=ttyS0,115200n8 console=ttyAMA0 console=hvc0 net.ifnames=0"

- 

- network --bootproto=dhcp --device=link --activate --onboot=on

- services --enabled=sshd,cloud-init,cloud-init-local,cloud-config,cloud-final

- 

- zerombr

- clearpart --all

- # Implement: https://pagure.io/atomic-wg/issue/281

- # The bare metal layout currently inherits from fedora server and is in

- # https://github.com/rhinstaller/anaconda/blob/master/pyanaconda/installclasses/fedora_atomic_host.py

- # However, the disk size is currently just 6GB for the cloud image (defined in pungi-fedora).  So the

- # "15GB, rest unallocated" model doesn't make sense.  The Vagrant box is 40GB (apparently a number of

- # Vagrant boxes come big and rely on thin provisioning).

- # In both cases, it's simplest to just fill all the disk space.

- #

- # Use reqpart to create hardware platform specific partitions

- # https://pagure.io/atomic-wg/issue/299

- reqpart --add-boot

- part pv.01 --grow

- volgroup atomicos pv.01

- # Start from 3GB as we did before, since we just need a size.  But we do --grow to fill all space.

- logvol / --size=3000 --grow --fstype="xfs" --name=root --vgname=atomicos

- 

- # Equivalent of %include fedora-repo.ks

- # Pull from the ostree repo that was created during the compose

- ostreesetup --nogpg --osname=fedora-atomic --remote=fedora-atomic --url=https://kojipkgs.fedoraproject.org/compose/ostree/repo/ --ref=fedora/rawhide/${basearch}/atomic-host

- 

- reboot

- 

- %post --erroronfail

- # See https://github.com/projectatomic/rpm-ostree/issues/42

- # Set the ostree repo to the location we want users to upgrade from

- # This location is where the compose gets synced to after the compose

- # is done.

- ostree remote delete fedora-atomic

- ostree remote add --set=gpg-verify=true --set=gpgkeypath=/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-30-primary --set=contenturl=mirrorlist=https://ostree.fedoraproject.org/mirrorlist fedora-atomic 'https://ostree.fedoraproject.org'

- 

- # older versions of livecd-tools do not follow "rootpw --lock" line above

- # https://bugzilla.redhat.com/show_bug.cgi?id=964299

- passwd -l root

- 

- # Work around https://bugzilla.redhat.com/show_bug.cgi?id=1193590

- cp /etc/skel/.bash* /var/roothome

- 

- # Configure docker-storage-setup to resize the partition table on boot

- # and extend the root filesystem to fill it.

- # https://pagure.io/atomic-wg/issue/343

- echo 'GROWPART=true' >> /etc/sysconfig/docker-storage-setup

- echo 'ROOT_SIZE=+100%FREE' >> /etc/sysconfig/docker-storage-setup

- 

- echo -n "Getty fixes"

- # although we want console output going to the serial console, we don't

- # actually have the opportunity to login there. FIX.

- # we don't really need to auto-spawn _any_ gettys.

- sed -i '/^#NAutoVTs=.*/ a\

- NAutoVTs=0' /etc/systemd/logind.conf

- 

- echo -n "Network fixes"

- # initscripts don't like this file to be missing.

- cat > /etc/sysconfig/network << EOF

- NETWORKING=yes

- NOZEROCONF=yes

- EOF

- 

- # Remove any persistent NIC rules generated by udev

- rm -vf /etc/udev/rules.d/*persistent-net*.rules

- # And ensure that we will do DHCP on eth0 on startup

- cat > /etc/sysconfig/network-scripts/ifcfg-eth0 << EOF

- DEVICE="eth0"

- BOOTPROTO="dhcp"

- ONBOOT="yes"

- TYPE="Ethernet"

- PERSISTENT_DHCLIENT="yes"

- EOF

- 

- # Because memory is scarce resource in most cloud/virt environments,

- # and because this impedes forensics, we are differing from the Fedora

- # default of having /tmp on tmpfs.

- echo "Disabling tmpfs for /tmp."

- systemctl mask tmp.mount

- 

- # Uncomment this if you want to use cloud init but suppress the creation

- # of an "ec2-user" account. This will, in the absence of further config,

- # cause the ssh key from a metadata source to be put in the root account.

- #cat <<EOF > /etc/cloud/cloud.cfg.d/50_suppress_ec2-user_use_root.cfg

- #users: []

- #disable_root: 0

- #EOF

- 

- echo "Removing random-seed so it's not the same in every image."

- rm -f /var/lib/systemd/random-seed

- 

- echo "Packages within this cloud image:"

- echo "-----------------------------------------------------------------------"

- rpm -qa

- echo "-----------------------------------------------------------------------"

- # Note that running rpm recreates the rpm db files which aren't needed/wanted

- rm -f /var/lib/rpm/__db*

- 

- echo "Zeroing out empty space."

- # This forces the filesystem to reclaim space from deleted files

- dd bs=1M if=/dev/zero of=/var/tmp/zeros || :

- rm -f /var/tmp/zeros

- echo "(Don't worry -- that out-of-space error was expected.)"

- 

- # For trac ticket https://pagure.io/atomic-wg/issue/128

- rm -f /etc/sysconfig/network-scripts/ifcfg-ens3

- 

- echo "Adding Developer Mode GRUB2 menu item."

- /usr/libexec/atomic-devmode/bootentry add

- 

- # Disable network service here, as doing it in the services line

- # fails due to RHBZ #1369794

- /sbin/chkconfig network off

- 

- # Anaconda is writing an /etc/resolv.conf from the install environment.

- # The system should start out with an empty file, otherwise cloud-init

- # will try to use this information and may error:

- # https://bugs.launchpad.net/cloud-init/+bug/1670052

- truncate -s 0 /etc/resolv.conf

- 

- %end

Do we need to adjust anything in pungi-fedora for these no longer being there? Or bodhi pungi config?

for pungi-fedora on master branch there is https://pagure.io/pungi-fedora/pull-request/686

for bodhi pungi - not right now, but @sinnykumari we should probably patch bodhi pungi config to special case atomic host so that it only happens for less than or equal to f29.

Yeah, I was already looking at ansible bodhi pungi config to adjust it accordingly. But, those changes can wait for a while since we are anyway not going to run F30 bodhi update compose before F30 release happen.
I will mostly send a patch on infra list for same after we have rawhide compose not building Atomic Host variant

rebased onto de5bf88

5 years ago

Pull-Request has been merged by mohanboddu

5 years ago
Metadata