Closed
Bug 429670
Opened 17 years ago
Closed 17 years ago
mozilla2 builds need a BuildFactory
Categories
(Release Engineering :: General, defect, P2)
Release Engineering
General
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: bhearsum, Assigned: bhearsum)
References
Details
(Whiteboard: [hg-automation])
Attachments
(4 files, 6 obsolete files)
17.66 KB,
patch
|
coop
:
review+
|
Details | Diff | Splinter Review |
24.59 KB,
patch
|
coop
:
review+
|
Details | Diff | Splinter Review |
1.35 KB,
patch
|
coop
:
review+
|
Details | Diff | Splinter Review |
1.73 KB,
patch
|
coop
:
review+
|
Details | Diff | Splinter Review |
With all the recent activity on the Mozilla2 Buildbot (symbols, updates, debug builds, etc) a lot of conditional logic has crept into the config. It's getting a little confusing to read, IMHO. I think it'd be great if we had a factory that we could call like this:
linuxBuilder = Mozilla2Factory(
uploadBuild=True,
uploadMar=True,
createSnippet=True,
uploadSymbols=True,
mozconfig=path/to/some/file,
)
There would probably need to be more arguments, but that's basically it.
What do you guys think?
Assignee | ||
Comment 1•17 years ago
|
||
Been doing some more thinking about this. It might be nice to break this down further to generalize it some more. I'm thinking something like...:
moz2LinuxBuilder = Mozilla2BuildFactory(...)
moz2LinuxBuilder.steps.append(UploadFactory(...))
I'm looking at creating the following factories:
Mozilla2BuildFactory
UploadFactory
UpdateFactory
SymbolFactory
I'm not entirely sure what this would do to the moz2 config - it could make it unprogrammatic, but maybe not. I think either way would work...
CC'ing ted since he was chatting with us on IRC ;)
Assignee | ||
Comment 2•17 years ago
|
||
Rather:
moz2LinuxBuilder = Mozilla2BuildFactory(...)
moz2LinuxBuilder.steps.append(UploadFactory(...).steps)
Assignee | ||
Comment 3•17 years ago
|
||
I'll give these a good 'ol test next week, after the production master gets moved to production-master and we have a better staging environment.
Assignee: nobody → bhearsum
Status: NEW → ASSIGNED
Assignee | ||
Updated•17 years ago
|
Priority: -- → P2
Assignee | ||
Comment 4•17 years ago
|
||
Assignee | ||
Comment 5•17 years ago
|
||
still needs more testing
Assignee | ||
Updated•17 years ago
|
Attachment #316476 -
Attachment is obsolete: true
Assignee | ||
Updated•17 years ago
|
Priority: P2 → P3
Assignee | ||
Comment 6•17 years ago
|
||
These are updated build factories for building, creating updates, uploading builds, symbol generation/upload, and basic tests (codesighs/leaktest).
The idea here is that all of the platform specific logic is factored out to these factories and we're left with something much simpler/shorter in the master.cfg. When the mozilla2-staging config is using these factories it is roughly half the length. Other benefits:
* Allows others to more easily replicate what we're doing
* UploadFactory, UpdateFactory, SymbolFactory, and BuildTestFactory are all useful for any project/build with the same structure. e.g., Seamonkey or Thunderbird could easily benefit from these.
* buildbotcustom is a much more sensible place to store our build process, IMHO.
I'm interested to hear others' thoughts.
Assignee | ||
Comment 7•17 years ago
|
||
I'm not going to get to this anytime soon.
Assignee: bhearsum → nobody
Status: ASSIGNED → NEW
QA Contact: build → release
Assignee | ||
Updated•17 years ago
|
Component: Release Engineering → Release Engineering: Future
Assignee | ||
Updated•17 years ago
|
Assignee | ||
Updated•17 years ago
|
Attachment #316844 -
Attachment is obsolete: true
Assignee | ||
Updated•17 years ago
|
Attachment #316845 -
Attachment is obsolete: true
Assignee | ||
Updated•17 years ago
|
Attachment #323562 -
Attachment is obsolete: true
Assignee | ||
Comment 8•17 years ago
|
||
This patch simply adds all the steps we already do on dep/nightly builds to a big BuildFactory. Ideally, I would've wanted to split the different tasks into separate factories, but there isn't an easy way to combine multiple factories into one Builder.
Attachment #332925 -
Flags: review?(ccooper)
Assignee | ||
Comment 9•17 years ago
|
||
(CVS sucks for developing multiple patches at once)
Attachment #332925 -
Attachment is obsolete: true
Attachment #332926 -
Flags: review?(ccooper)
Attachment #332925 -
Flags: review?(ccooper)
Assignee | ||
Comment 10•17 years ago
|
||
I've tested this out for quite a bit on the staging environment and AFAICT there is no behaviour change.
Attachment #332927 -
Flags: review?(ccooper)
Assignee | ||
Updated•17 years ago
|
Assignee: bhearsum → nobody
Component: Release Engineering: Future → Release Engineering
Assignee | ||
Updated•17 years ago
|
Assignee: nobody → bhearsum
Updated•17 years ago
|
Attachment #332926 -
Flags: review?(ccooper) → review+
Comment 11•17 years ago
|
||
Comment on attachment 332927 [details] [diff] [review]
[checked in] get the dep/nightly buildbot using the new factory
We seriously need 'fake' update_platforms in there? Ugh.
Attachment #332927 -
Flags: review?(ccooper) → review+
Assignee | ||
Comment 12•17 years ago
|
||
Comment on attachment 332926 [details] [diff] [review]
[checked in] remove unnecessary crud from the patch
Checking in factory.py;
/cvsroot/mozilla/tools/buildbotcustom/process/factory.py,v <-- factory.py
new revision: 1.5; previous revision: 1.4
done
Attachment #332926 -
Attachment description: remove unnecessary crud from the patch → [checked in] remove unnecessary crud from the patch
Assignee | ||
Comment 13•17 years ago
|
||
Comment on attachment 332927 [details] [diff] [review]
[checked in] get the dep/nightly buildbot using the new factory
changeset: 225:76dd6b5bbcf8
Attachment #332927 -
Attachment description: get the dep/nightly buildbot using the new factory → [checked in] get the dep/nightly buildbot using the new factory
Assignee | ||
Comment 14•17 years ago
|
||
I add to add hgToolsRepo to the staging config to do a test-run:
diff -u -r1.29 fx-moz18-staging-bootstrap.cfg
--- fx-moz18-staging-bootstrap.cfg 25 Jul 2008 13:31:07 -0000 1.29
+++ fx-moz18-staging-bootstrap.cfg 12 Aug 2008 16:20:10 -0000
@@ -80,3 +80,4 @@
symbolServerKey = /home/cltbld/.ssh/id_rsa
useTarGz = 1
useBetaChannel = 1
+hgToolsRepo = http://hg.mozilla.org/build/tools
ca-245:configs bhearsum$ cvs commit -m "bug 449208: add hgToolsRepo to staging 1.8 bootstrap.cfg so we can do a test run of the new Bump.pm code."
cvs commit: Examining .
Checking in fx-moz18-staging-bootstrap.cfg;
/cvsroot/mozilla/tools/release/configs/fx-moz18-staging-bootstrap.cfg,v <-- fx-moz18-staging-bootstrap.cfg
new revision: 1.30; previous revision: 1.29
done
Assignee | ||
Comment 15•17 years ago
|
||
Whoops, wrong bug on that last comment.
Assignee | ||
Comment 16•17 years ago
|
||
Things here were mostly OK - I had to check-in a bustage fix to disable codesighs on win32. Other than that, we look good!
Assignee | ||
Comment 17•17 years ago
|
||
Attachment #333543 -
Flags: review?(ccooper)
Assignee | ||
Comment 18•17 years ago
|
||
Attachment #333544 -
Flags: review?(ccooper)
Assignee | ||
Comment 19•17 years ago
|
||
Ugh, I can't believe how many things this bug regressed :(.
Attachment #333544 -
Attachment is obsolete: true
Attachment #333544 -
Flags: review?(ccooper)
Assignee | ||
Updated•17 years ago
|
Attachment #333608 -
Attachment is patch: true
Attachment #333608 -
Attachment mime type: application/octet-stream → text/plain
Attachment #333608 -
Flags: review?(ccooper)
Updated•17 years ago
|
Attachment #333543 -
Flags: review?(ccooper) → review+
Updated•17 years ago
|
Attachment #333608 -
Flags: review?(ccooper) → review+
Assignee | ||
Comment 20•17 years ago
|
||
Comment on attachment 333543 [details] [diff] [review]
[checked in] make sure upload symbols can be disabled on certain trees/builders
Checking in factory.py;
/cvsroot/mozilla/tools/buildbotcustom/process/factory.py,v <-- factory.py
new revision: 1.8; previous revision: 1.7
done
Attachment #333543 -
Attachment description: make sure upload symbols can be disabled on certain trees/builders → [checked in] make sure upload symbols can be disabled on certain trees/builders
Assignee | ||
Comment 21•17 years ago
|
||
Comment on attachment 333608 [details] [diff] [review]
[checked in] again, fixing linux codesighs, too
changeset: 230:b43bde1fd0b5
Attachment #333608 -
Attachment description: again, fixing linux codesighs, too → [checked in] again, fixing linux codesighs, too
Assignee | ||
Comment 22•17 years ago
|
||
I think this one is finally done.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Updated•12 years ago
|
Product: mozilla.org → Release Engineering
You need to log in
before you can comment on or make changes to this bug.
Description
•