Closed Bug 1467261 Opened 6 years ago Closed 5 years ago

Clarify the process for snap uploading and QA

Categories

(Release Engineering :: Release Automation: Snap, enhancement)

enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: lizzard, Assigned: jlorenzo)

References

Details

Attachments

(1 file)

We should clarify what gets uploaded when to the snap store. Right now it looks like we have 60.0-2 for "stable", 60.0.2-1 as "candidate", 60.0.2esr-2 on esr-stable, and 60.0.1esr-1 on esr-candidate.    

Currently, in Firefox releases, the last version for release and esr was 60.0.1  (we have not actually released 60.0.2 yet)
Flags: needinfo?(jlorenzo)
mkaply, you mentioned potentially bringing in more QA for this process but I'm not sure if you mean more automated tests or manual testing of some sort?
Flags: needinfo?(mozilla)
In addition, we currently have for esr:

60.0.2esr-2 published to the 'esr/stable' channel, and
60.0.1esr-1 published to the 'esr/candidate', 'esr/beta', 'esr/edge' channels.

This looks backwards to me. I can't figure out how to publish to the esr/* channels via their dashboard.
Thank you for filing this bug! I'm happy to explain the current state of Snap. If you want a live presentation, I scheduled a talk in 14 days from now.


1. WHAT GETS UPLOADED?

At the moment, snaps are submitted to Snap at the push phase (that is to say, after the promote one but before the ship one). They go as following:
* beta => beta
* rc and release => candidate (and beta once bug 1459222 is fixed)
* 60esr => esr (aka "esr/stable")


2. THE SPECIFIC CASE OF ESR

60.0.1esr was wrongly available on "esr/candidate" (and below[1]) because of a bad manual step of mine (in bug 1462066 comment 3). I just closed this channel, so people plugged on "esr/candidate" now get whatever is on "esr/stable".

The esr channel is split into several stable, candidate and so on, because of the way the snap store is designed[2]. The end goal with it is:
* 60esr goes to "esr/stable" (or "esr") until we deprecate it.
* 67esr goes to "esr/candidate" until 60esr is deprecated. Then it's promoted to esr/stable.

This follows the update path we usually implement in Balrog. The downside of it: we can't stage an ESR release in "esr/candidate", like we do on release. We can use "esr/beta" for 67esr, but I think the naming is misleading for users. That's why ESR is sent to the channel whenever we push the release. 

What do you all think? 


(In reply to Chris AtLee [:catlee] from comment #2)
> I can't figure out how to publish to the esr/* channels via their dashboard.
Even though this kind of channels is supported by their CLI tool, they don't support it on the webUI[3]


[1] hierarchy is stable > candidate > beta > edge
[2] https://forum.snapcraft.io/t/firefox-please-create-the-track-esr/5006
[3] https://bugs.launchpad.net/snapstore/+bug/1771148
Blocks: snappy
Flags: needinfo?(jlorenzo)
See Also: → 1459222
As far as testing goes, we're investigating more manual testing of the Snap specific stuff.

We're also getting information on how much Linux testing we're actually doing.
Flags: needinfo?(mozilla)
I think what's missing is instructions or automation to publish the snap to the proper channel ('stable' for release, and 'esr/stable' or 'esr/candidate' for esrs) as part of the 'ship' phase.

As it stands now, I the 60esr snaps are being shipped too early since they're getting published to the 'esr/stable' channel prior to the ship phase.
Follow up of last week's meeting. I clarified who should take care of shipping a snap and how. Ritu, could you tell me if you agree on it?

I just sent invitations for the Snap dashboard to: :jcristau, :RyanVM, :pascalc, :lizzard, and you. :Sylvestre has an invitation pending.

[1] https://dashboard.snapcraft.io/snaps/firefox/
Attachment #8989401 - Flags: review?(rkothari)
Attachment #8989401 - Flags: review?(jlund)
One thing that I realized with :jcristau: could you all make sure you have 2FA enabled[1]? Please select "Always" for "Require an authentication device".


[1] https://help.ubuntu.com/community/SSO/FAQs/2FA#How_do_I_add_a_new_authentication_device_and_start_using_2-factor_authentication.3F
Flags: needinfo?(sledru)
Flags: needinfo?(ryanvm)
Flags: needinfo?(rkothari)
Flags: needinfo?(pascalc)
Flags: needinfo?(lhenry)
Attachment #8989401 - Flags: review?(jlund) → review+
Flags: needinfo?(ryanvm)
Looks great. Many thanks Johan for the hard work :)
I have now access.
Flags: needinfo?(sledru)
Flags: needinfo?(lhenry)
Flags: needinfo?(pascalc)
Comment on attachment 8989401 [details] [review]
[releasewarrior-2.0] Snap: add instructions about who ships and when

This process has been around since July. To my knowledge, Ryan and Pascal used the instructions defined in this PR. I've also seen RelMan shipping the release snap whenever they wanted. I think we're done here, then. Feel free to reopen this bug if I missed anything.
Flags: needinfo?(rkothari)
Attachment #8989401 - Flags: review?(rkothari) → checked-in+
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Assignee: nobody → jlorenzo
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: