Improve release testing scripts

RESOLVED FIXED

Status

Release Engineering
General
RESOLVED FIXED
12 years ago
5 years ago

People

(Reporter: rc, Assigned: rhelmer)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(7 attachments, 2 obsolete attachments)

(Reporter)

Description

12 years ago
Automated release scripts for checking update should be added to mozilla/testing.
Hardware: Macintosh → All
(Assignee)

Comment 1

12 years ago
robcee and I discussed and decided to go with mozilla/testing/release
Status: NEW → ASSIGNED
(Assignee)

Comment 2

12 years ago
landed on trunk:

RCS file: /cvsroot/mozilla/testing/release/README.txt,v
done
Checking in README.txt;
/cvsroot/mozilla/testing/release/README.txt,v  <--  README.txt
initial revision: 1.1
done
RCS file: /cvsroot/mozilla/testing/release/common/download_mars.sh,v
done
Checking in common/download_mars.sh;
/cvsroot/mozilla/testing/release/common/download_mars.sh,v  <--  download_mars.sh
initial revision: 1.1
done
RCS file: /cvsroot/mozilla/testing/release/common/unpack.sh,v
done
Checking in common/unpack.sh;
/cvsroot/mozilla/testing/release/common/unpack.sh,v  <--  unpack.sh
initial revision: 1.1
done
RCS file: /cvsroot/mozilla/testing/release/l10n/verify_l10n.sh,v
done
Checking in l10n/verify_l10n.sh;
/cvsroot/mozilla/testing/release/l10n/verify_l10n.sh,v  <--  verify_l10n.sh
initial revision: 1.1
done
RCS file: /cvsroot/mozilla/testing/release/updates/verify_aus.sh,v
done
Checking in updates/verify_aus.sh;
/cvsroot/mozilla/testing/release/updates/verify_aus.sh,v  <--  verify_aus.sh
initial revision: 1.1
done
RCS file: /cvsroot/mozilla/testing/release/updates/verify_update.sh,v
done
Checking in updates/verify_update.sh;
/cvsroot/mozilla/testing/release/updates/verify_update.sh,v  <--  verify_update.sh
initial revision: 1.1
done
Status: ASSIGNED → RESOLVED
Last Resolved: 12 years ago
Resolution: --- → FIXED

Updated

12 years ago
Blocks: 322893
No longer depends on: 322893
mozilla/testing/release/common/download_builds.sh lines 43-46 and 55-58 strike me as kind of strange.  Why 2 invocations of popd?  what is "continue" supposed to do in an if..fi block?
(Assignee)

Comment 4

12 years ago
(In reply to comment #3)
> mozilla/testing/release/common/download_builds.sh lines 43-46 and 55-58 strike
> me as kind of strange.  Why 2 invocations of popd?  what is "continue" supposed
> to do in an if..fi block?
> 

This made more sense before I moved these to common/, since it used to be within a "for" block.

I will open a new bug to track this work, that patches can be posted to for review. 

Thanks for pointing these out!
(Assignee)

Updated

12 years ago
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Summary: Release testing scripts → Improve release testing scripts
(Assignee)

Comment 5

12 years ago
Created attachment 235764 [details] [diff] [review]
remove errant popd's, return instead of continue
Assignee: nobody → rhelmer
Status: REOPENED → ASSIGNED
Attachment #235764 - Flags: review?
(Assignee)

Updated

12 years ago
Attachment #235764 - Flags: review? → review?(davel)
(Assignee)

Comment 6

12 years ago
Created attachment 235765 [details] [diff] [review]
add command-line switches to verify.sh

This adds the following switches to verify.sh:

-u | --update-only   just download update.xml
-m | --mars-only     just verify MAR files 
-c | --complete      complete upgrade verification
Attachment #235765 - Flags: review?(davel)
(Assignee)

Comment 7

12 years ago
Created attachment 235812 [details] [diff] [review]
remove popd's in favor of specifying output prefix

pushd/popd overcomplicates this situation; just specify the output prefix for wget w/ -P
Attachment #235764 - Attachment is obsolete: true
Attachment #235812 - Flags: review?(davel)
Attachment #235764 - Flags: review?(davel)

Updated

12 years ago
Attachment #235812 - Flags: review?(davel) → review+
Comment on attachment 235765 [details] [diff] [review]
add command-line switches to verify.sh

did you still want to explore using getopts, or do you want me to review this as-is?
I could take a peek at using getopts, if that's okay w/ you guys.
(Assignee)

Updated

12 years ago
Attachment #235765 - Attachment is obsolete: true
Attachment #235765 - Flags: review?(davel)
(Assignee)

Comment 10

12 years ago
Created attachment 240068 [details] [diff] [review]
command line switches (no getargs yet :/ )

I haven't had a chance to convert to getargs yet; can you review as-is?
Attachment #240068 - Flags: review?(davel)
(Assignee)

Comment 11

12 years ago
Created attachment 240069 [details] [diff] [review]
support a "test-only" mode which only HEADs MARs

this provides the functionality for the "-t" switch.
Attachment #240069 - Flags: review?(davel)
Comment on attachment 240068 [details] [diff] [review]
command line switches (no getargs yet :/ )

given that you have been running this for a bit, and that we'll work on a major rewrite in the near future, r+
Attachment #240068 - Flags: review?(davel) → review+
Comment on attachment 240069 [details] [diff] [review]
support a "test-only" mode which only HEADs MARs

see comment on other patch from today
Attachment #240069 - Flags: review?(davel) → review+
(Assignee)

Comment 14

12 years ago
(In reply to comment #13)
> (From update of attachment 240069 [details] [diff] [review] [edit])
> see comment on other patch from today
> 

Thanks Dave! Landed these on the trunk. 
(Assignee)

Comment 15

12 years ago
Created attachment 240480 [details] [diff] [review]
handle 2.0 and 1.5 unpack technique

This modifies unpack.sh to handle both the 2.0 NSIS layout and 1.5 xpinstaller layout.
Attachment #240480 - Flags: review?(davel)
Comment on attachment 240480 [details] [diff] [review]
handle 2.0 and 1.5 unpack technique

r+ with the assumption that we'll eventually test windows stuff on windows boxes, so this unpack magic will go away
Attachment #240480 - Flags: review?(davel) → review+
(Assignee)

Comment 17

12 years ago
Created attachment 241980 [details] [diff] [review]
make more things configurable

* use variables in updates.cfg
* move all useful info into updates.cfg
* simplify download_builds

You can now specify a "from" and "to" variable. The string "%locale%" will be substituted if present.

This changes the "-c" or "--complete" behavior slightly:

If the "from" and "to" variables are present, a complete update test is performed. 
If not, it is skipped.

The MARs are downloaded and the sizes/checksum are verified in either case.
Attachment #241980 - Flags: review?(davel)
Comment on attachment 241980 [details] [diff] [review]
make more things configurable

+ also based on rhelmer's comment that this version has been used and works
Attachment #241980 - Flags: review?(davel) → review+

Comment 19

12 years ago
Created attachment 245485 [details] [diff] [review]
Patch for /mozilla/testing/release/updates/verify.sh

In verify.sh, once the %locale% has been replaced in the paths, it keeps the replaced string for the rest of the loop. This means that it really only tests the first locale in the list.

This patch fixes that problem and also a typo in an error message.

Comment 20

12 years ago
Created attachment 245487 [details] [diff] [review]
Patch for /mozilla/testing/release/common

For check_updates.sh, this patch adds a list of files that should be ignored when calculating if an update is different from the desired target. The current list is: chrome/installed-chrome.txt, Contents/MacOS/chrome/installed-chrome.txt, and removed-files.

For unpack.sh, it adds support for understanding long platform names as well as short platform names. Some versions of the updates.cfg file use the long platform names.

Updated

12 years ago
Attachment #245485 - Flags: review?(rhelmer)

Updated

12 years ago
Attachment #245487 - Flags: review?(rhelmer)
(Assignee)

Updated

12 years ago
Attachment #245485 - Flags: review?(rhelmer) → review+
(Assignee)

Updated

12 years ago
Attachment #245487 - Flags: review?(rhelmer) → review+
(Assignee)

Comment 21

12 years ago
(In reply to comment #20)
> Created an attachment (id=245487) [edit]
> Patch for /mozilla/testing/release/common
> 
> For check_updates.sh, this patch adds a list of files that should be ignored
> when calculating if an update is different from the desired target. The current
> list is: chrome/installed-chrome.txt,
> Contents/MacOS/chrome/installed-chrome.txt, and removed-files.
> 
> For unpack.sh, it adds support for understanding long platform names as well as
> short platform names. Some versions of the updates.cfg file use the long
> platform names.


Thanks! Checked in both patches.
(Assignee)

Updated

12 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 12 years ago12 years ago
Resolution: --- → FIXED
Component: Testing → Release Engineering
Product: Core → mozilla.org
QA Contact: testing → release
Version: Trunk → other
Product: mozilla.org → Release Engineering
You need to log in before you can comment on or make changes to this bug.