Closed Bug 1338960 Opened 8 years ago Closed 5 years ago

Modify automation to use balrog and not aus2

Categories

(SeaMonkey :: Release Engineering, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: ewong, Assigned: ewong)

References

Details

Attachments

(17 files, 18 obsolete files)

17.89 KB, patch
frg
: review+
Details | Diff | Splinter Review
946.90 KB, patch
frg
: review+
Details | Diff | Splinter Review
5.03 KB, patch
frg
: review+
Details | Diff | Splinter Review
253.57 KB, patch
frg
: review+
Details | Diff | Splinter Review
15.50 KB, patch
frg
: review+
Details | Diff | Splinter Review
1.21 KB, patch
frg
: review+
Details | Diff | Splinter Review
1.78 KB, patch
frg
: review+
Details | Diff | Splinter Review
17.92 KB, patch
ewong
: review+
Details | Diff | Splinter Review
30.92 KB, patch
frg
: review+
Details | Diff | Splinter Review
13.90 KB, patch
frg
: review+
Details | Diff | Splinter Review
17.93 KB, patch
frg
: review+
Details | Diff | Splinter Review
6.86 KB, patch
frg
: review+
Details | Diff | Splinter Review
9.28 KB, patch
frg
: review+
Details | Diff | Splinter Review
4.06 KB, patch
frg
: review+
Details | Diff | Splinter Review
8.43 KB, patch
frg
: review+
Details | Diff | Splinter Review
4.17 KB, patch
frg
: review+
Details | Diff | Splinter Review
1.94 KB, patch
frg
: review+
Details | Diff | Splinter Review
We need to change the buildbotcustom code for the ReleaseUpdatesFactory to use balrog and not upload stuff to aus2.
Summary: Modify the release updates step to use balrog and not aus2 → Modify the release updates process to use balrog and not aus2
A quick note (for mostly to jog my memory should I forget what needs to be done): We currently upload snippets/partial-mars to aus2. What we need to do now: 1) Upload the partialmars/snippets to the upload host (which the files need to be directed to the right release/beta candidates/ filepath) i.e. candidates/SeaMonkey-<ver>-build<build#>/.. 2) Gather *all* the necessary release information from the properties gathered from all the previous steps(build, repacks and snippet creations, etc) and build a balrog dictionary. [this bug, bug 1338958, and 1338953 *should* help with this - basically build info (package url+size+hash), [bug 1338958] - locale repack info (locale package size + hash) [bug 1338953] - partial snippets (size + hash and from version) [this bug] 3) Push the balrog release information *to* the balrog server as the new release version. [dep : bug 1338967] 4) Update the balrog release/beta rule to map to the new release. [dep. bug 1338967]
Depends on: 1338953, 1338958, 1338967
Summary: Modify the release updates process to use balrog and not aus2 → Modify the release process to use balrog and not aus2
Attached patch [custom] for locale-repack (obsolete) — Splinter Review
Assignee: nobody → ewong
Status: NEW → ASSIGNED
Attachment #8836980 - Flags: review?(frgrahl)
Comment on attachment 8836980 [details] [diff] [review] [custom] for locale-repack Comment from dup'd bug: Balrog release information require locale complete.mar (and partial.mar) properties (checksums, filesize, and old version info amongst others). most probably need to be before the make_upload step
For beta/release, make_upload sets the following properties: symbolsUrl and packageUrl However, packageUrl is set to the wrong file. packageUrl: 'https://archive.mozilla.org/pub/seamonkey/candidates/2.46-candidates/build9/linux-i686/en-US/mozharness.zip' This pretty much reflects the problem we have with our tests; but, this needs to be fixed as well as adding other properties: packageUrl, size, hash and whatever else is necessary for release and balrog.
No longer depends on: 1338953, 1338958, 1338967
Attachment #8836980 - Attachment is obsolete: true
Attachment #8836980 - Flags: review?(frgrahl)
Straight 'fork' of the moco version.
Attachment #8836986 - Flags: review?(frgrahl)
Comment on attachment 8836986 [details] [diff] [review] [tools] adding balrog scripts to tools repo. Don't have the means to test it so just did go over it for formalities. > if options.schema_version == 3: > + submitter = NightlySubmitterV3(options.api_root, auth, > + options.dummy, > + url_replacements=url_replacements) With a new file is version 3 still valid? > +FTP_SERVER_TEMPLATE = 'http://%s/pub/mozilla.org' https?
Attachment #8836986 - Flags: review?(frgrahl) → review+
(In reply to Frank-Rainer Grahl from comment #9) > Comment on attachment 8836986 [details] [diff] [review] > [tools] adding balrog scripts to tools repo. > > Don't have the means to test it so just did go over it for formalities. > > > if options.schema_version == 3: > > + submitter = NightlySubmitterV3(options.api_root, auth, > > + options.dummy, > > + url_replacements=url_replacements) > > With a new file is version 3 still valid? Point taken. Since any imports we do will most likely be of schema_version =4, this part would be irrelevant. > > > +FTP_SERVER_TEMPLATE = 'http://%s/pub/mozilla.org' > > https? Ah right.. and it's no longer with mozilla.org.
There is a slight problem with the scripts as they are based on automation. They won't work on the loaner unfortunately, so I'll need to either modify the scripts or create a new one based on the fact the loaner cannot get (easily) information from the master. I think my approach will be to create a new set of required scripts (as of this writing, just balrog-submitter.py) to use different commandline arguments.
I'll most likely push the reviewed contents so that I can test it out in nightly.
Attachment #8836986 - Attachment is obsolete: true
Attachment #8837943 - Flags: review?(frgrahl)
Comment on attachment 8837943 [details] [diff] [review] [tools] adding balrog scripts to tools repo. (v2) review postponed as per irc
Attachment #8837943 - Flags: review?(frgrahl)
Mostly code from moco's tools repo, with an additional script to gather the stuff in the loaner's env to a buildprops_balrog.json file which is then used by balrog-*. NB: There is a chance that I might just roll something that's a lot simpler for us. (although we *will* need the lib/python changes)
Attachment #8837943 - Attachment is obsolete: true
Attachment #8840336 - Flags: review?(frgrahl)
Comment on attachment 8840336 [details] [diff] [review] [tools] add balrog scripts to tools repo (v3) As stated on irc just a formal check and even this one only lightly. + return 'https://www.mozilla.org/%%LOCALE%%/%s/%s/releasenotes/' % (product, appVersion) releasenotes for SeaMonkey are not on mozilla.org. Is this one checked / read during building?
Attachment #8840336 - Flags: review?(frgrahl) → review+
the release steps need to include balrog information.
Attachment #8842287 - Flags: review?(frgrahl)
add submitBalrogUpdates step. [current wip]
Attachment #8842288 - Flags: review?(frgrahl)
to note, the configs and custom code patches will be manually applied to the master so i can get the 2.48b1 running. So these are wip so naturally, 2.48b1 will have bustages along the way; but thanks to 2.46, doing more builds won't freak me out. :)
this new set of scripts will be used instead.
Attachment #8840336 - Attachment is obsolete: true
Attachment #8842290 - Flags: review?(frgrahl)
Comment on attachment 8842288 [details] [diff] [review] [custom] add balrog submission steps > self.env.get('PYTHON26', 'python'), Is this PYTHON26 or PYTHON27 after the other updates?
Attachment #8842288 - Flags: review?(frgrahl) → review+
Attachment #8842287 - Flags: review?(frgrahl) → review+
Comment on attachment 8842290 [details] [diff] [review] [tools] Balrog scripts (v4) I have faith in you here :)
Attachment #8842290 - Flags: review?(frgrahl) → review+
(In reply to Frank-Rainer Grahl from comment #20) > Comment on attachment 8842288 [details] [diff] [review] > [custom] add balrog submission steps > > > self.env.get('PYTHON26', 'python'), > > Is this PYTHON26 or PYTHON27 after the other updates? I think it's high time I change that to PYTHON27.. but it's ok.
yup.. completely missed this required patch :(
Attachment #8842721 - Flags: review?(frgrahl)
Attachment #8842736 - Flags: review?(frgrahl)
Attachment #8842721 - Attachment description: [puppet] need to set up balrog.token in puppet. → [puppet] need to set up balrog.token in puppet. [exp]
Attachment #8842721 - Flags: review?(frgrahl)
Attachment #8842736 - Attachment description: [tools] need to add cert bundle to allow https usage. → [tools] need to add cert bundle to allow https usage. [exp]
Attachment #8842736 - Flags: review?(frgrahl)
NB: [exp] = patches that I will ask for review once I know for a fact they are correct.
Comment on attachment 8842736 [details] [diff] [review] [tools] need to add cert bundle to allow https usage. [plr] Ignore previous comment. I'll just set the patches to post-land-review [plr] so that I can get 2.48b1 done sooner.
Attachment #8842736 - Attachment description: [tools] need to add cert bundle to allow https usage. [exp] → [tools] need to add cert bundle to allow https usage. [plr]
Attachment #8842736 - Flags: review?(frgrahl)
Attachment #8842736 - Attachment is obsolete: true
Attachment #8842736 - Flags: review?(frgrahl)
Attachment #8842742 - Flags: review?(frgrahl)
Attachment #8842721 - Attachment description: [puppet] need to set up balrog.token in puppet. [exp] → [puppet] need to set up balrog.token in puppet. [plr]
Attachment #8842721 - Flags: review?(frgrahl)
Attachment #8842721 - Flags: review?(frgrahl) → review+
Comment on attachment 8842742 [details] [diff] [review] [tools] fix scripts to enable https requests, and clean up balrog scripts. [plr] Shouldn't the pyc files be in the ignore list?
Attachment #8842742 - Flags: review?(frgrahl) → review+
replace the use of python26 and use PythonWjson (as this is usually the one we need).
Attachment #8842288 - Attachment is obsolete: true
Attachment #8849437 - Flags: review?(frgrahl)
Attachment #8849437 - Flags: review?(frgrahl) → review+
Attachment #8849444 - Flags: review?(frgrahl)
Attachment #8849444 - Flags: review?(frgrahl) → review+
was using the wrong parameter to specify the credentials and missed the linux64 detection of the right python.
Attachment #8849830 - Flags: review?(frgrahl)
Comment on attachment 8849830 [details] [diff] [review] [custom] fix for using the wrong parameters and python. >> elif platform in ('linux'): Would it make sense to add windows64 too even if not used right now or is there no separate platform for it?
Attachment #8849830 - Flags: review?(frgrahl) → review+
Attached file [tools] use the properties' appVersion (obsolete) —
previously was seabld.. balrog stage uses stage-seabld.
Attachment #8902139 - Flags: review+
I'm changing tact. I can't test out balrog if we do it only for release so I"m going to get our nightlies to use balrog first (well, I'm going to do that with the regular builds first.. they get built far more frequently so I can test it out more frequently) while all the work I've done so far was geared towards release builds, it shouldn't matter. I just need to 'clean' up the current config, custom and tools code.
Summary: Modify the release process to use balrog and not aus2 → Modify automation to use balrog and not aus2
Attachment #8850806 - Attachment is obsolete: true
Attachment #8850805 - Attachment is obsolete: true
Attachment #8849813 - Attachment is obsolete: true
Attachment #8849814 - Attachment is obsolete: true
Attachment #8904199 - Flags: review?
Attachment #8904203 - Attachment is obsolete: true
Attachment #8904405 - Flags: review?(frgrahl)
Attachment #8904199 - Attachment is obsolete: true
Attachment #8904199 - Flags: review?
Attachment #8904406 - Flags: review?(frgrahl)
seems to work with nightly, but I have no release data to test with. Will try with 2.49.1
Attachment #8904202 - Attachment is obsolete: true
Attachment #8904407 - Flags: review?(frgrahl)
A few items of interest: While the scripts 'work' with osx64 and linux*, it's not going to work well with Win32 due to it being a manual process and having no access to the master and thusly cannot get the properties. I'll need to manually generate the properties file to pass to the balrog-submit.py script.
this patch also includes a snippet which disables clobbering of the build directory after everything has been done.
Attachment #8904419 - Flags: review?(frgrahl)
Attachment #8904405 - Attachment is obsolete: true
Attachment #8904406 - Attachment is obsolete: true
Attachment #8904419 - Attachment is obsolete: true
Attachment #8904405 - Flags: review?(frgrahl)
Attachment #8904406 - Flags: review?(frgrahl)
Attachment #8904419 - Flags: review?(frgrahl)
Attachment #8904455 - Flags: review?(frgrahl)
Attachment #8904407 - Attachment is obsolete: true
Attachment #8904407 - Flags: review?(frgrahl)
Attachment #8904457 - Flags: review?(frgrahl)
Attachment #8904454 - Flags: review?(frgrahl) → review+
Attachment #8904455 - Flags: review?(frgrahl) → review+
Attachment #8904457 - Flags: review?(frgrahl) → review+
I only gave the three a lookover. Hard to review them properly without being able to try them. Thanks and hoping for the best.
Attachment #8904454 - Attachment description: [custom] buildbotcustom code fix to support nightly, regular, debug and release → [custom] buildbotcustom code fix to support nightly, regular, debug and release [checked-in]
Attachment #8904455 - Attachment description: [configs] add balrog_* fields to configs to support nightly,regular,debug and release → [configs] add balrog_* fields to configs to support nightly,regular,debug and release [checked-in]
Attachment #8904457 - Attachment description: [tools] fix scripts to submit nightly, regular, debug and release info [wip] → [tools] fix scripts to submit nightly, regular, debug and release info [wip] [checked-in]
Blocks: 1399361
Comment on attachment 8932037 [details] [diff] [review] [configs] enable Linux32 nightly balrog submissions only. [checked-in] > 'tooltool_token': 'e:/builds/tooltool.token', > + 'balrog_credentials_file': 'c:/builds/balrog.token', > 'balrog_submitter_extra_args': [], c:\builds and not e:\builds is correct for Windows? Otherwise r+
Attachment #8932037 - Flags: review?(frgrahl) → review+
Comment on attachment 8932035 [details] [diff] [review] [custom] Enable balrog submissions only for Linux32 nightly for now [checked-in] r+
Attachment #8932035 - Flags: review?(frgrahl) → review+
(In reply to Frank-Rainer Grahl (:frg) from comment #55) > Comment on attachment 8932037 [details] [diff] [review] > [configs] enable Linux32 nightly balrog submissions only. > > > 'tooltool_token': 'e:/builds/tooltool.token', > > + 'balrog_credentials_file': 'c:/builds/balrog.token', > > 'balrog_submitter_extra_args': [], > > c:\builds and not e:\builds is correct for Windows? Otherwise r+ E: is for our current Win32 builders (the out-dated systems). C: is for the loaner and possibly the future win* builders. Our win2003 builders are E:\builds based. So yeah, some confusion there. which is why the mozconfigs were pointing to E:/ awhile back.
Attachment #8932035 - Attachment description: [custom] Enable balrog submissions only for Linux32 nightly for now → [custom] Enable balrog submissions only for Linux32 nightly for now [checked-in]
Attachment #8932037 - Attachment description: [configs] enable Linux32 nightly balrog submissions only. → [configs] enable Linux32 nightly balrog submissions only. [checked-in]
Comment on attachment 8842721 [details] [diff] [review] [puppet] need to set up balrog.token in puppet. [plr] ends up this isn't even needed and I had already pushed the patch. Basically we download the file from the master.. so we don't need to keep that many copies of this.
Depends on: 1421533
Attachment #8933527 - Flags: review?(frgrahl)
don't remember if I mentioned this.. the gen-props script is to generate the properties json file for the loaner and won't be used with whatever future Win* platforms. It's just that the loaner has no access to the master and thusly can't grab the properties.
Attachment #8933527 - Attachment is obsolete: true
Attachment #8933527 - Flags: review?(frgrahl)
Attachment #8933550 - Flags: review?(frgrahl)
Blocks: 1140867
Attachment #8933529 - Flags: review?(frgrahl) → review+
Attachment #8933550 - Flags: review?(frgrahl) → review+
Comment on attachment 8933529 [details] [diff] [review] [configs] enable nightly balrog submissions for the rest of the platforms [checked-in] Pushed to buildbot-configs: https://hg.mozilla.org/build/buildbot-configs/rev/b9476e37f094
Attachment #8933529 - Attachment description: [configs] enable nightly balrog submissions for the rest of the platforms → [configs] enable nightly balrog submissions for the rest of the platforms [checked-in]
Comment on attachment 8933550 [details] [diff] [review] [tools] clean up balrog submission scripts. [fix gen props for Win32] [checked-in] Pushed to tools: https://hg.mozilla.org/users/Callek_gmail.com/tools/rev/95fd9817778e
Attachment #8933550 - Attachment description: [tools] clean up balrog submission scripts. [fix gen props for Win32] → [tools] clean up balrog submission scripts. [fix gen props for Win32] [checked-in]
Attachment #8935368 - Flags: review?(frgrahl) → review+
Comment on attachment 8935371 [details] [diff] [review] [custom] move balrog submissions to after snippet generations thanks
Attachment #8935371 - Flags: review?(frgrahl) → review+

SeaMonkey won't be using Balrog, so closing.

Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: