Closed
Bug 429430
Opened 16 years ago
Closed 15 years ago
Redesign mac refimage so no additional manual setup needed
Categories
(Release Engineering :: General, defect, P3)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: joduinn, Assigned: bhearsum)
References
Details
Attachments
(7 files)
588 bytes,
text/plain
|
catlee
:
review+
bhearsum
:
checked-in+
|
Details |
732 bytes,
patch
|
armenzg
:
review+
bhearsum
:
checked-in+
|
Details | Diff | Splinter Review |
467 bytes,
patch
|
nthomas
:
review+
bhearsum
:
checked-in+
|
Details | Diff | Splinter Review |
1.26 KB,
patch
|
nthomas
:
review+
bhearsum
:
checked-in+
|
Details | Diff | Splinter Review |
2.99 KB,
patch
|
nthomas
:
review+
bhearsum
:
checked-in+
|
Details | Diff | Splinter Review |
2.76 KB,
patch
|
catlee
:
review+
bhearsum
:
checked-in+
|
Details | Diff | Splinter Review |
9.61 KB,
patch
|
catlee
:
review+
bhearsum
:
checked-in+
|
Details | Diff | Splinter Review |
To setup a new mac, we start by putting an image of an existing refimage mac, which gives us a basic set of OS+toolchain installs. However, we then need to follow these manual instructions: http://wiki.mozilla.org/ReferencePlatforms or http://wiki.mozilla.org/BuildbotTestfarm to manually install the rest of the toolchain softwarem not included in the refimage VM. All this takes a long time, and can be tricky. As we setup more and more machines, this overhead is becoming a problem. Lets eliminate these manual post-install steps 1) For software that needs configuring, write a script, run as root, which can be run on first boot, and which fills in details like machine/host name, smtp configuration, etc. 2) For software that changes rapidly, whatever version is on the refimage is likely to be out of date anyway by the time we get to clone new VMs. Instead lets design the refimage to contain enough to get started, and include in refimage a script that checks for updates on first launch, and refresh forward to the latest available at that time. One way of doing this would be to pull specific tag versions of buildbot from CVS, for example, but there are probably other ways to do this. Or pull a tagged version of a text file, which contains URLs for downloading using WGET. 3) After VM is created, with bang-up-to-date versions of software, it will have to keep checking and refreshing forward, or else this new VM will drift out of date. We need a periodic check to verify VM is still running the right versions of toolchain, and refresh forward if not. This would allow us to know that all slaves are always in sync with each other. Open question: how frequently should we be rechecking & refreshing? Once a day seems reasonable start, but thats just a swag.
Assignee | ||
Updated•16 years ago
|
Assignee: nobody → rcampbell
Priority: -- → P2
Updated•16 years ago
|
Assignee: rcampbell → lukasblakk
Reporter | ||
Comment 1•16 years ago
|
||
Putting back in the pool after triage.
Assignee: lukasblakk → nobody
Component: Release Engineering → Release Engineering: Future
Priority: P2 → P3
Assignee | ||
Updated•15 years ago
|
Assignee: nobody → bhearsum
Summary: Redesign mac refimage VM so no additional manual setup needed → Redesign mac refimage so no additional manual setup needed
Assignee | ||
Comment 2•15 years ago
|
||
A lot of the scripts being used for this are sitting in bug 429427, because they're shared with Linux.
Assignee | ||
Comment 3•15 years ago
|
||
Attachment #410826 -
Flags: review?(catlee)
Updated•15 years ago
|
Attachment #410826 -
Flags: review?(catlee) → review+
Assignee | ||
Comment 4•15 years ago
|
||
Comment on attachment 410826 [details]
buildbot-tac plist launcher
RCS file: /mofo/puppet-files/darwin9/buildbot-tac.generator.com.plist,v
done
Checking in buildbot-tac.generator.com.plist;
/mofo/puppet-files/darwin9/buildbot-tac.generator.com.plist,v <-- buildbot-tac.generator.com.plist
initial revision: 1.1
done
Attachment #410826 -
Flags: checked-in+
Assignee | ||
Updated•15 years ago
|
Assignee: bhearsum → nobody
Component: Release Engineering: Future → Release Engineering
Comment 5•15 years ago
|
||
Assigning to Ben since he seems to be doing active work here now that bug 429427 is fixed.
Assignee: nobody → bhearsum
Status: NEW → ASSIGNED
Assignee | ||
Comment 6•15 years ago
|
||
Note that as per bug 524108 we're using the staging keys, not production ones.
Attachment #411712 -
Flags: review?(armenzg)
Updated•15 years ago
|
Attachment #411712 -
Flags: review?(armenzg) → review+
Assignee | ||
Comment 7•15 years ago
|
||
Comment on attachment 411712 [details] [diff] [review] add mac ref mini to puppet changeset: 76:05a3ab223a11
Attachment #411712 -
Flags: checked-in+
Assignee | ||
Comment 8•15 years ago
|
||
Attachment #411753 -
Flags: review?(catlee)
Assignee | ||
Updated•15 years ago
|
Attachment #411753 -
Flags: review?(catlee) → review?(nthomas)
Assignee | ||
Comment 9•15 years ago
|
||
This patch adds some more intelligent host detection to the buildbot-tac init script for the purpose of setting the right password for different types of machines. No Windows support here because I don't expect we'll be using this script on Windows.
Attachment #411785 -
Flags: review?(nthomas)
Assignee | ||
Comment 10•15 years ago
|
||
Like the init script patch, this patch adds better support for Talos and Try machine detection: setting the right master and port based on the hostname. Also fixes a typo bug (MissingOptionsException != MissingOptionsError).
Attachment #411789 -
Flags: review?(nthomas)
Updated•15 years ago
|
Attachment #411753 -
Flags: review?(nthomas) → review+
Assignee | ||
Comment 11•15 years ago
|
||
Comment on attachment 411753 [details] [diff] [review] ignore mac ref platform during tac generation Checking in buildbot-tac; /mofo/puppet-files/shared/buildbot-tac,v <-- buildbot-tac new revision: 1.2; previous revision: 1.1 done
Attachment #411753 -
Flags: checked-in+
Comment 12•15 years ago
|
||
Comment on attachment 411789 [details] [diff] [review] better try, talos support in buildbot-tac.py >diff --git a/buildbot-helpers/buildbot-tac.py b/buildbot-helpers/buildbot-tac.py >+ elif 'talos' in slavename or 'qm-p' in slavename: > buildmaster_host = TALOS_BUILDMASTER >- if 'linux' in slavename: >+ if 'qm-p' in slavename: >+ d['port'] = 9011 9011 is talos try ? Matching on '-try' might be more obvious.
Attachment #411789 -
Flags: review?(nthomas) → review+
Updated•15 years ago
|
Attachment #411785 -
Flags: review?(nthomas) → review+
Assignee | ||
Comment 13•15 years ago
|
||
(In reply to comment #12) > (From update of attachment 411789 [details] [diff] [review]) > >diff --git a/buildbot-helpers/buildbot-tac.py b/buildbot-helpers/buildbot-tac.py > >+ elif 'talos' in slavename or 'qm-p' in slavename: > > buildmaster_host = TALOS_BUILDMASTER > >- if 'linux' in slavename: > >+ if 'qm-p' in slavename: > >+ d['port'] = 9011 > > 9011 is talos try ? Yup. > Matching on '-try' might be more obvious. I'll fix this on check-in.
Assignee | ||
Comment 14•15 years ago
|
||
Comment on attachment 411785 [details] [diff] [review] add try, talos support to buildbot-tac init script Checking in buildbot-tac; /mofo/puppet-files/shared/buildbot-tac,v <-- buildbot-tac new revision: 1.3; previous revision: 1.2 done
Attachment #411785 -
Flags: checked-in+
Assignee | ||
Comment 15•15 years ago
|
||
Comment on attachment 411789 [details] [diff] [review] better try, talos support in buildbot-tac.py changeset: 413:b74e43b2a0c3
Attachment #411789 -
Flags: checked-in+
Assignee | ||
Comment 16•15 years ago
|
||
Attachment #411962 -
Flags: review?(catlee)
Assignee | ||
Comment 17•15 years ago
|
||
Comment on attachment 411962 [details] [diff] [review] update build tools checkouts I had to check in a bustage fix os the real, buildtools_version is: 480fc8c00479
Updated•15 years ago
|
Attachment #411962 -
Flags: review?(catlee) → review+
Assignee | ||
Comment 18•15 years ago
|
||
Comment on attachment 411962 [details] [diff] [review] update build tools checkouts changeset: 78:b5b502462d51 RCS file: /mofo/puppet-files/centos5/dist/build-tools-0b149c0ad18d.tgz,v done Checking in build-tools-0b149c0ad18d.tgz; /mofo/puppet-files/centos5/dist/build-tools-0b149c0ad18d.tgz,v <-- build-tools-0b149c0ad18d.tgz initial revision: 1.1 done Checking in build-tools-0b149c0ad18d.tgz; /mofo/puppet-files/darwin9/devtools/build-tools-0b149c0ad18d.tgz,v <-- build-tools-0b149c0ad18d.tgz initial revision: 1.1 done
Attachment #411962 -
Flags: checked-in+
Assignee | ||
Comment 19•15 years ago
|
||
I originally implemented this when we first brought Mac puppet online without thinking hard enough about the implications. Due to this breaking 0 -> staging (requires manual intervention, turning off Puppet), I think we should just turn it off for now.
Attachment #414315 -
Flags: review?(catlee)
Updated•15 years ago
|
Attachment #414315 -
Flags: review?(catlee) → review+
Assignee | ||
Comment 20•15 years ago
|
||
Comment on attachment 414315 [details] [diff] [review] disable mac key management changeset: 84:acd01e2a5725
Attachment #414315 -
Flags: checked-in+
Assignee | ||
Comment 21•15 years ago
|
||
Updated https://wiki.mozilla.org/ReferencePlatforms/Mac-10.5#Manual_setup_after_cloning, we're all done here!
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Updated•11 years ago
|
Product: mozilla.org → Release Engineering
You need to log in
before you can comment on or make changes to this bug.
Description
•