Closed Bug 890093 Opened 11 years ago Closed 11 years ago

Upload sources.xml for device builds to ftp.mozilla.org

Categories

(Release Engineering :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: jgriffin, Assigned: mozilla)

References

Details

Attachments

(2 files, 2 obsolete files)

We'd like to enable sheriffs to use a tool to diff the commits between two builds' sources.xml (bug 890086), but in order to do this, it would work best if sources.xml were uploaded to the same dir as the build log (ftp.mozilla.org) to make locating those from TBPL easy.

Currently, sources.xml is only uploaded to the pvtbuilds location, but figuring out the correct pvtbuilds location from TBPL is a pain.

Could we get sources.xml uploaded to ftp.mozilla.org?
I think it would be super cool if we wrote this as an hg extension such that 'hg diff -r <rev>' would look for and download the sources.xml of <rev> and compare it to the sources.xml of <tip> (only if a special flag is passed or something) and format the output in a familiar way.

Actually, come to think of it we should just write the script as a module first and then it would be simple for an hg extension to consume it later on.
Oops, meant to put that comment on bug 890086. Sorry for spam.
Blocks: 890086
Do we have any ETA on when we can expect this? We're starting work on the tool that will use these uploaded sources.xml files now (over in bug 890086).
We already have sources.xml uploaded to ftp.m.o: http://ftp.mozilla.org/pub/mozilla.org/b2g/manifests as well as pvtbuilds.

I'm not entirely sure atm how mozharness (on the client) is going to figure out where buildbot (on the master) is going to upload the logs at the end of the job.

Does the existing b2g manifest location work for you?  That would make the above problem moot.
(In reply to Jonathan Griffin (:jgriffin) from comment #0)
> We'd like to enable sheriffs to use a tool to diff the commits between two
> builds' sources.xml (bug 890086), but in order to do this, it would work
> best if sources.xml were uploaded to the same dir as the build log
> (ftp.mozilla.org) to make locating those from TBPL easy.
> 
> Currently, sources.xml is only uploaded to the pvtbuilds location, but
> figuring out the correct pvtbuilds location from TBPL is a pain.
> 
> Could we get sources.xml uploaded to ftp.mozilla.org?

Also, would it help the sheriffs to have a TinderboxPrint'ed link to the pvtbuilds location?  Would that resolve this bug?
(In reply to Aki Sasaki [:aki] from comment #4)
> We already have sources.xml uploaded to ftp.m.o:
> http://ftp.mozilla.org/pub/mozilla.org/b2g/manifests as well as pvtbuilds.
> 
> I'm not entirely sure atm how mozharness (on the client) is going to figure
> out where buildbot (on the master) is going to upload the logs at the end of
> the job.
> 
> Does the existing b2g manifest location work for you?  That would make the
> above problem moot.

It looks like we're only uploading nightly manifests to that location; and we need per-commit manifests for sheriffing.
(In reply to Aki Sasaki [:aki] from comment #5)
> (In reply to Jonathan Griffin (:jgriffin) from comment #0)
> > We'd like to enable sheriffs to use a tool to diff the commits between two
> > builds' sources.xml (bug 890086), but in order to do this, it would work
> > best if sources.xml were uploaded to the same dir as the build log
> > (ftp.mozilla.org) to make locating those from TBPL easy.
> > 
> > Currently, sources.xml is only uploaded to the pvtbuilds location, but
> > figuring out the correct pvtbuilds location from TBPL is a pain.
> > 
> > Could we get sources.xml uploaded to ftp.mozilla.org?
> 
> Also, would it help the sheriffs to have a TinderboxPrint'ed link to the
> pvtbuilds location?  Would that resolve this bug?

Yes, I think that would probably be sufficient.
Hm, we disable uploads on depend device builds across the board.
Maybe a combination of turning the ftp.m.o manifest upload to be for both depend+nightly, and tinderboxprinting the link.
That would be perfect, and would make it easier to handle these files in TBPLv2 in the future.
Assignee: nobody → aki
Woot: http://ftp.mozilla.org/pub/mozilla.org/b2g/manifests/mozilla-central/

Attaching a new patch with the latest fixes.
Attached patch manifest upload (obsolete) — Splinter Review
Attachment #774947 - Attachment is obsolete: true
Attachment #775742 - Flags: review?(nthomas)
Comment on attachment 775742 [details] [diff] [review]
manifest upload

Review of attachment 775742 [details] [diff] [review]:
-----------------------------------------------------------------

The code seems fine but I'm wondering about the config and the end result on ftp.m.o. Based on your tests we'll have 
 .../b2g/manifests/<version>/YYYY-MM-DD-HH/source_<platform>_YYYY-MM-DD-HH.xml 
for nightly builds (plus symlinks without the timestamp), and then
 .../b2g/manifests/<branch>/<platform>/sources-YYYYMMDDHHmmss.xml
That is likely to confusing if you don't know what's going on. It would be helpful to have .../b2g/manifests/{nightly,tinderbox-builds} at least, assuming we can get the consumers of the nightly manifests to adjust. If you don't like tinderbox-builds (historical cruft!) then using 'depend' or 'on-checkin' or similar is fine by me.

Are we OK if rebuilds overwrite the xml file ? Can the sources change while the rebuild means the buildID is preserved ? If so we need something to make the filename unique.

We'd also need some sort of cleanup job dep builds will be needed in cron.

::: scripts/b2g_build.py
@@ +1374,1 @@
>              self.info("Upload successful")

The various if/else/elif here are bit hard to read. Perhaps it would be clearer if there was one if and self.info("Upload successful").
Attachment #775742 - Flags: review?(nthomas) → review-
Testing in staging.
Attachment #775742 - Attachment is obsolete: true
Boo, partners scrape b2g/manifests.

I can:

a) softlink b2g/manifests/nightly/* into b2g/manifests
b) announce b2g/manifests/* is moving into b2g/manifests/nightly/
c) not move the nightly bits, but create the depend directory
mvines: do you have a preference among the above choices?  (comment 16)
Flags: needinfo?(mvines)
Flags: needinfo?(mvines)
Please just do whatever is cleanest from your perspective, the changes to adapt over here are pretty minor. Just give us a couple hours notice before this goes live.
Comment on attachment 777597 [details] [diff] [review]
manifest upload, take 2

lgtm
Attachment #777597 - Flags: review?(nthomas) → review+
:laura, :rhelmer -- Are you ok with this b2g/manifests path change as well?

I'm about to post to dev.b2g; I'd make this path change next week, most likely, assuming everyone's ok with it.
Flags: needinfo?(rhelmer)
Flags: needinfo?(laura)
(Asking because of bug 832074)
Selena, will this break anything in socorro's ftpscraper (bug bug 832074)?
Flags: needinfo?(rhelmer) → needinfo?(sdeckelmann)
Comment on attachment 777597 [details] [diff] [review]
manifest upload, take 2

Landed: https://hg.mozilla.org/build/mozharness/rev/d555b3fd5d3c

When we merge this to production, we'll start using the new paths, and downstream users will be affected after the next nightly.
Attachment #777597 - Flags: checked-in+
Merged to production.
I'm going to move the old nightly manifests into b2g/manifests/nightly/ manually.
Files are moved.
I'm going to verify, and create a cron job to clean up.
manifest depend cleanup crontab

from productdelivery svn.
Not sure how to get this live?
Attachment #779973 - Flags: review?(nthomas)
I updated our partner builds to point to the new location. Thanks for the heads up!
Comment on attachment 779973 [details] [diff] [review]
b2g_manifest_cron

lgtm. If you land this then puppet will take care of deploying it.
Attachment #779973 - Flags: review?(nthomas) → review+
Comment on attachment 779973 [details] [diff] [review]
b2g_manifest_cron

(bb08)deathduck:/src/clean/svn/productdelivery/files/cron [14:44:35]
1479$ svn ci
Adding         b2gbld
Transmitting file data .
Committed revision 71807.
Attachment #779973 - Flags: checked-in+
I see the TinderboxPrints, and I see depend sources.xml being uploaded into http://ftp.mozilla.org/pub/mozilla.org/b2g/manifests/depend/.

Resolving fixed.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Product: mozilla.org → Release Engineering
Flags: needinfo?(sdeckelmann)
Flags: needinfo?(laura)
Component: General Automation → General
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: