Closed Bug 829134 Opened 13 years ago Closed 13 years ago

PuppetAgain puppetization support for Ubuntu

Categories

(Infrastructure & Operations :: RelOps: General, task)

task
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: dustin, Assigned: dustin)

References

Details

Attachments

(2 files)

Ubuntu-12.04.1 LTS, in particular Amy's got a starting point for a KS config at modules/cobbler/templates/kickstart/profiles/Ubuntu-12.04.1-i386-talos.cfg.erb So this needs: * kickstart finished * puppetize.sh modified and installed by the KS script * rail's puppet configs for Ubuntu (bug 820238)
Blocks: 829135
Blocks: 829133
Assignee: server-ops-releng → dustin
This requires a bit of TLC on the admin hosts first, so I'll take care of that in bug 829148.
Depends on: 829148
I dropped Amy's KS config into the framework of bug 829148, with url http://repos/repos/apt/ubuntu/. Here's what I saw on the puppet server before it failed: /repos/apt/ubuntu//dists/precise/Release HTTP/1.1" 200 49563 "-" "Wget" /repos/apt/ubuntu//dists/precise/main/binary-i386/Release HTTP/1.1" 200 96 "-" "Wget" /repos/apt/ubuntu//dists/precise/Release HTTP/1.1" 200 49563 "-" "Wget" /repos/apt/ubuntu//dists/precise/Release.gpg HTTP/1.1" 200 198 "-" "Wget" /repos/apt/ubuntu//dists/precise/main/debian-installer/binary-i386/Packages.gz HTTP/1.1" 404 347 "-" "Wget" /repos/apt/ubuntu//dists/precise/main/debian-installer/binary-i386/Packages HTTP/1.1" 404 344 "-" "Wget" /repos/apt/ubuntu//dists/precise/restricted/debian-installer/binary-i386/Packages.gz HTTP/1.1" 404 353 "-" "Wget" /repos/apt/ubuntu//dists/precise/restricted/debian-installer/binary-i386/Packages HTTP/1.1" 404 350 "-" "Wget" so there's a bit of adjustment to make to the mirroring. After that: * specify the installed packages minimally in the KS script, hopefully using groups * add a postinstall to the KS script * support i386 *and* x86_64 * puppetize.sh modified and installed by the KS script * rail's puppet configs for Ubuntu (bug 820238)
I added main/debian-installer and restricted/debian-installer to the mirror, and things are doing better now. It did prompt me to decide what to do with the partitions, so there must be some problem with the KS config there. Then the "Select and Install Software" step failed :(
With 'universe' mirrored, this worked a lot better! It still asks me about the partitions, and then later points out that I've chosen not to install GRUB. Yet, it boots just fine. So a few rough edges in the KS script, but this is looking promising!
The KS file below *almost* works. It still stops to ask me if I'm super-sure I want to erase the drive. I'm not sure how to fix this. Info on Ubuntu's KS-based installer is scant. ---- #System language lang en_US.UTF-8 #Language modules to install langsupport en_US.UTF-8 --default=en_US.UTF-8 #System keyboard keyboard us #System mouse mouse #System timezone timezone America/Los_Angeles #Root password rootpw --iscrypted <%= scope.lookupvar('::pxe::pxe_releng_crypted_rootpw') %> #Initial user user --disabled #Reboot after installation reboot #Use text mode install text #Install OS instead of upgrade install url --url http://repos/repos/apt/ubuntu #Clear the Master Boot Record zerombr yes #System bootloader configuration bootloader --location=mbr #Partition clearing information clearpart --all --initlabel part /boot --fstype ext4 --size=100 --ondisk=sda part swap --fstype swap --size 4096 --ondisk=sda part / --fstype ext4 --size=1024 --grow --ondisk=sda #System authorization infomation auth --useshadow --enablemd5 #Firewall configuration firewall --disabled #Package install information; groups here select packages by "task" %packages @ minimal
Amy discovered https://bugs.launchpad.net/ubuntu/+source/kickseed/+bug/537421/comments/9 which fixed that problem. Now to add a puppetizing %post!
Success! Remaining: * PXE boot support across platforms * patch for setup/ in puppetagain containing chunks of the revised KS script
Attached patch bug829134.patchSplinter Review
For some reason the erb invocations aren't working for me anymore - it must be a new version of ERB? I'm not terribly concerned about that. This is enough info to reconstruct, anyway.
Attachment #706534 - Flags: review?(rail)
I've tested the install on VMware with both i386 and x86_64. Works great on Ganeti too. I don't have any reason to think this won't work on iX or HP hardware, or on Seamicro, but I don't have anything to test on at the moment. So just the r? left and this bug is done.
Comment on attachment 706534 [details] [diff] [review] bug829134.patch Review of attachment 706534 [details] [diff] [review]: ----------------------------------------------------------------- ::: setup/common/apt-install-puppet.erb @@ +2,5 @@ > + # License, v. 2.0. If a copy of the MPL was not distributed with this > + # file, You can obtain one at http://mozilla.org/MPL/2.0/. %> > +apt-get install -y --allow-unauthenticated puppet wget || fail > +# note that ubuntu helpfully starts the puppet agent, so we stop it now > +service puppet stop || fail Hmm, I thought that by default it reads /etc/default/puppet which contains "START=no". Later puppet manifests replace sysV-style init script with Upstart based one. In any case, "service puppet stop" exits zero even if agent isn't running. ::: setup/common/apt-setup-repos.erb @@ +3,5 @@ > + # file, You can obtain one at http://mozilla.org/MPL/2.0/. %> > +cat > /etc/apt/sources.list <<EOF > +# blow away any existing repositories and add our own > +deb http://repos/repos/apt/ubuntu/ precise main restricted universe > +deb-src http://repos/repos/apt/ubuntu/ precise main restricted universe You can skip deb-src repos. I doubt we need to use "apt-get source" and rebuild packages. :) ::: setup/common/yum-setup-repos.erb @@ +18,5 @@ > +baseurl=http://repos/repos/yum/mirrors/puppetlabs/el/6/products/$basearch > +enabled=1 > +gpgcheck=0 > + > +[os] You can kill the trailing space here ::: setup/ubuntu-kickstart.cfg.erb @@ +25,5 @@ > +#Install OS instead of upgrade > +install > +url --url http://repos/repos/apt/ubuntu > +#Clear the Master Boot Record > +zerombr yes and here
Attachment #706534 - Flags: review?(rail) → review+
Fair enough. I didn't actually see a puppet process when I stopped it by hand. Whitespace fixed, deb-src lines removed. Landed.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Component: Server Operations: RelEng → RelOps
Product: mozilla.org → Infrastructure & Operations
See Also: → 1338151
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: