upload en-US release builds

RESOLVED FIXED

Status

Release Engineering
General
RESOLVED FIXED
9 years ago
4 years ago

People

(Reporter: bhearsum, Assigned: bhearsum)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(4 attachments)

Comment hidden (empty)
(Assignee)

Comment 1

9 years ago
Created attachment 354712 [details] [diff] [review]
fix upload target for win32 installer, complete mar, and optionally other files

This is mostly the same as the l10n-upload-% target I landed last week. We have to separate out the win32 installer otherwise we'll end up with empty quotes on other platforms, which is interpreted as the cwd. I couldn't do the same sort of logic with the MARs on this one since we don't have a MOZ_MAKE_COMPLETE_MAR sortof var here. Only checking for existence here is fine though, imo.

The UPLOAD_EXTRA_FILES portion is currently going to be used for the $platform_info.txt files we must upload for releases. We'll probably have other uses for it later, though.
Attachment #354712 - Flags: review?(ted.mielczarek)
(Assignee)

Comment 2

9 years ago
Created attachment 354713 [details] [diff] [review]
buildbotcustom patch for uploading en-US release builds

This is similar to the l10n release build patch in that it subclasses the base build class for some nightly/release specific logic. The operations taking place for nightly builds have not changed at all - the upload step has just been moved to the subclass. The release builds are using the new upload target. I did not move the nightly builds to this in the interest of not making a big change right before I'll be gone for a week. I'll be moving them to the new target early in Q1.

The only other thing here is adding the 'env' parameter to make package/installer/mar so MOZ_PKG_PRETTYNAMES is applied correctly for release builds.

I gave this a go on staging and everything seemed to work properly.
Attachment #354713 - Flags: review?(ccooper)
(Assignee)

Comment 3

9 years ago
Created attachment 354714 [details] [diff] [review]
master-side patch for en-US release build uploading

Not much to say about this one. It just gets nightly/release builds using the right Factory class and adds the appropriate parameters to the ReleaseBuildFactory calls.
Attachment #354714 - Flags: review?(ccooper)

Updated

9 years ago
Attachment #354713 - Flags: review?(ccooper) → review+

Comment 4

9 years ago
Comment on attachment 354713 [details] [diff] [review]
buildbotcustom patch for uploading en-US release builds

> +            uploadEnv['UPLOAD_SSH_KEY'] = '~/.ssh/%s' % self.stageSshKey

Does it make sense for us to check whether this key actually exists before calling the upload target?

Updated

9 years ago
Attachment #354714 - Flags: review?(ccooper) → review+
(Assignee)

Comment 5

9 years ago
(In reply to comment #4)
> (From update of attachment 354713 [details] [diff] [review])
> > +            uploadEnv['UPLOAD_SSH_KEY'] = '~/.ssh/%s' % self.stageSshKey
> 
> Does it make sense for us to check whether this key actually exists before
> calling the upload target?

It's kindof tough to, I'm inclined to say "meh".
OS: Mac OS X → All
Hardware: x86 → All
Comment on attachment 354712 [details] [diff] [review]
fix upload target for win32 installer, complete mar, and optionally other files

I'm not really happy with calling upload.py multiple times. We should be able to let make calculate all of this, and pass it in one go. You should just be able to leverage $(wildcard) here, which will return an empty string if the file doesn't exist, ( http://www.gnu.org/software/make/manual/make.html#Wildcard-Function ) so something like:
$(PYTHON) $(topsrcdir)/build/upload.py --base-path $(DIST) "$(DIST)/$(PACKAGE)"
$(wildcard $(DIST)/$(COMPLETE_MAR)) $(wildcard "$(INSTALLER_PACKAGE)")

Not sure about UPLOAD_EXTRA_FILES. Are you intending that to be a list of files, or just a single file name or what? If a list of files, then you'll probably need something like:
$(if $(UPLOAD_EXTRA_FILES),$(foreach f,$(UPLOAD_EXTRA_FILES),$(wildcard $(DIST)/$(f)))
Attachment #354712 - Flags: review?(ted.mielczarek) → review-
(Assignee)

Comment 7

9 years ago
Created attachment 354871 [details] [diff] [review]
upload target, all in one shot, UPLOAD_EXTRA_FILES fixed

Alright, I've implemented this the way you suggested. All files will be passed to upload.py at the same time, and the QUOTED_WILDCARD function you gave me fixes all of the problems I had trying to do this before.

You're absolutely right about UPLOAD_EXTRA_FILES, too, and I've fixed that.
Attachment #354871 - Flags: review?(ted.mielczarek)
Comment on attachment 354871 [details] [diff] [review]
upload target, all in one shot, UPLOAD_EXTRA_FILES fixed

+# deal with them.
+space = $(empty) $(empty)

You should define $(empty) first, just:
empty :=
(I don't know that make really cares, but for sanity's sake.)

I think you should use line continuations on the upload.py line, probably split it after the first $(DIST), then one arg per line after that will make it easier to read.

Looks good, though!
Attachment #354871 - Flags: review?(ted.mielczarek) → review+
(Assignee)

Comment 9

9 years ago
Comment on attachment 354714 [details] [diff] [review]
master-side patch for en-US release build uploading

changeset:   634:41da1d8c2b2d
Attachment #354714 - Flags: checked‑in+ checked‑in+
(Assignee)

Comment 10

9 years ago
Comment on attachment 354713 [details] [diff] [review]
buildbotcustom patch for uploading en-US release builds

Checking in factory.py;
/cvsroot/mozilla/tools/buildbotcustom/process/factory.py,v  <--  factory.py
new revision: 1.67; previous revision: 1.66
done
Attachment #354713 - Flags: checked‑in+ checked‑in+
(Assignee)

Updated

9 years ago
Attachment #354871 - Flags: checked‑in+ checked‑in+
(Assignee)

Comment 11

9 years ago
Comment on attachment 354871 [details] [diff] [review]
upload target, all in one shot, UPLOAD_EXTRA_FILES fixed

checked in w/ nits fixed
m-c: changeset:   23195:be8e227b1d8a
1.9.1: changeset:   22557:c9b32bedc274
(Assignee)

Updated

9 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 9 years ago
Resolution: --- → FIXED
Product: mozilla.org → Release Engineering
You need to log in before you can comment on or make changes to this bug.