Closed
Bug 829134
Opened 13 years ago
Closed 13 years ago
PuppetAgain puppetization support for Ubuntu
Categories
(Infrastructure & Operations :: RelOps: General, task)
Infrastructure & Operations
RelOps: General
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: dustin, Assigned: dustin)
References
Details
Attachments
(2 files)
84.28 KB,
image/jpeg
|
Details | |
15.19 KB,
patch
|
rail
:
review+
|
Details | Diff | Splinter Review |
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)
Updated•13 years ago
|
Assignee: server-ops-releng → dustin
Assignee | ||
Comment 1•13 years ago
|
||
This requires a bit of TLC on the admin hosts first, so I'll take care of that in bug 829148.
Depends on: 829148
Assignee | ||
Comment 2•13 years ago
|
||
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)
Assignee | ||
Comment 3•13 years ago
|
||
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 :(
Assignee | ||
Comment 4•13 years ago
|
||
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!
Assignee | ||
Comment 5•13 years ago
|
||
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
Assignee | ||
Comment 6•13 years ago
|
||
Here's the screen I'm seeing..
To the source!
http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/precise/kickseed/precise/view/head:/kickseed.sh
Assignee | ||
Comment 7•13 years ago
|
||
Amy discovered
https://bugs.launchpad.net/ubuntu/+source/kickseed/+bug/537421/comments/9
which fixed that problem. Now to add a puppetizing %post!
Assignee | ||
Comment 8•13 years ago
|
||
Success! Remaining:
* PXE boot support across platforms
* patch for setup/ in puppetagain containing chunks of the revised KS script
Assignee | ||
Comment 9•13 years ago
|
||
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)
Assignee | ||
Comment 10•13 years ago
|
||
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 11•13 years ago
|
||
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+
Assignee | ||
Comment 12•13 years ago
|
||
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
Updated•12 years ago
|
Component: Server Operations: RelEng → RelOps
Product: mozilla.org → Infrastructure & Operations
You need to log in
before you can comment on or make changes to this bug.
Description
•