Skip to content

Commit

Permalink
Merge branch 'beta_gtb_reschedule'
Browse files Browse the repository at this point in the history
  • Loading branch information
pascalchevrel committed Sep 24, 2023
2 parents 638329f + 85b527a commit b628862
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 85 deletions.
90 changes: 33 additions & 57 deletions app/classes/ReleaseInsights/Release.php
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ public function getSchedule(string $pd_url = 'https://product-details.mozilla.or
$nightly->modify('-1 day');

$x = match ($this->version) {
// We keep some past releases as code examples
'97.0' => 4,
'110.0' => 4,
default => 3,
Expand All @@ -80,32 +81,7 @@ public function getSchedule(string $pd_url = 'https://product-details.mozilla.or
return is_object($day) ? $day->format('Y-m-d H:i:sP') : $nightly->modify($day)->format('Y-m-d H:i:sP');
};

if ($this->version === '116.0') {
$schedule = [
'nightly_start' => $date($nightly),
'qa_request_deadline' => $date('Friday 21:00'),
'qa_feature_done_1' => $date('Friday +1 week 21:00'),
'qa_feature_done_2' => $date($nightly->modify('+' . ($x - 2) . ' weeks')->modify('Wednesday 21:00')),
'soft_code_freeze' => $date('Thursday 08:00'),
'qa_pre_merge_done' => $date('Friday 14:00'),
'string_freeze' => $date('Friday'),
'merge_day' => $date('Tuesday'),
'beta_1' => $date('Tuesday'),
'beta_2' => $date('Thursday 21:00'),
'sumo_1' => $date('Friday 21:00'),
'beta_3' => $date('Sunday 21:00'),
'beta_4' => $date('Tuesday 21:00'),
'beta_5' => $date('Thursday 21:00'),
'beta_6' => $date('Sunday 21:00'),
'sumo_2' => $date('Monday 21:00'),
'beta_7' => $date('Tuesday 21:00'),
'qa_pre_rc_signoff' => $date('Wednesday 14:00'),
'beta_8' => $date('Thursday 21:00'),
'rc_gtb' => $date('Monday 21:00'),
'rc' => $date('Tuesday'),
'release' => $date($release->setTimezone(new \DateTimeZone('UTC'))),
];
} elseif ($this->version === '122.0') {
if ($this->version === '122.0') {
$schedule = [
'nightly_start' => $date($nightly),
'qa_request_deadline' => $date('Friday'),
Expand All @@ -116,24 +92,24 @@ public function getSchedule(string $pd_url = 'https://product-details.mozilla.or
'string_freeze' => $date('Friday'),
'merge_day' => $date('Monday'),
'beta_1' => $date('Monday'),
'beta_2' => $date('Tuesday 21:00'),
'beta_3' => $date('Thursday 21:00'),
'beta_2' => $date('Wednesday 13:00'),
'beta_3' => $date('Friday 13:00'),
'sumo_1' => $date('Friday 21:00'), // Friday of Beta week 1
'beta_4' => $date('Thursday 21:00'),
'beta_5' => $date('Tuesday 21:00'),
'beta_6' => $date('Thursday 21:00'),
'beta_7' => $date('Sunday 21:00'),
'beta_4' => $date('next Friday 13:00'),
'beta_5' => $date('Wednesday 13:00'),
'beta_6' => $date('Friday 13:00'),
'beta_7' => $date('Monday 13:00'),
'sumo_2' => $date('Monday 21:00'), // Monday of Beta Week 3
'beta_8' => $date('Tuesday 21:00'),
'beta_8' => $date('Wednesday 13:00'),
'qa_pre_rc_signoff' => $date('Wednesday 14:00'),
'beta_9' => $date('Thursday 21:00'),
'beta_9' => $date('Friday 13:00'),
'rc_gtb' => $date('Monday 21:00'),
'rc' => $date('Tuesday'),
'release' => $date($release->setTimezone(new \DateTimeZone('UTC'))),
];
} else {
$schedule = [
'nightly_start' => $this->version === '117.0' ? $date('+1 day') : $date($nightly),
'nightly_start' => $date($nightly),
'qa_request_deadline' => $date('Friday'),
'qa_feature_done_1' => $date('Friday +1 week 21:00'),
'qa_feature_done_2' => $date($nightly->modify('+' . ($x - 2) . ' weeks')->modify('Wednesday 21:00')),
Expand All @@ -146,17 +122,17 @@ public function getSchedule(string $pd_url = 'https://product-details.mozilla.or
default => $date('Monday'),
},
'beta_1' => $date('Monday'),
'beta_2' => $date('Tuesday 21:00'),
'beta_3' => $date('Thursday 21:00'),
'beta_2' => $date('Wednesday 13:00'),
'beta_3' => $date('Friday 13:00'),
'sumo_1' => $date('Friday 21:00'), // Friday of Beta week 1
'beta_4' => $date('Sunday 21:00'),
'beta_5' => $date('Tuesday 21:00'),
'beta_6' => $date('Thursday 21:00'),
'beta_7' => $date('Sunday 21:00'),
'beta_4' => $date('Monday 13:00'),
'beta_5' => $date('Wednesday 13:00'),
'beta_6' => $date('Friday 13:00'),
'beta_7' => $date('Monday 13:00'),
'sumo_2' => $date('Monday 21:00'), // Monday of Beta Week 3
'beta_8' => $date('Tuesday 21:00'),
'beta_8' => $date('Wednesday 13:00'),
'qa_pre_rc_signoff' => $date('Wednesday 14:00'),
'beta_9' => $date('Thursday 21:00'),
'beta_9' => $date('Friday 13:00'),
'rc_gtb' => $date('Monday 21:00'),
'rc' => $date('Tuesday'),
'release' => $date($release->setTimezone(new \DateTimeZone('UTC'))),
Expand Down Expand Up @@ -203,23 +179,23 @@ public static function getNiceLabel(string $version, string $label, bool $short=
'string_freeze' => 'String Freeze' . ($short ? '' : ' starts'),
'merge_day' => 'Merge day',
'beta_1' => ($short ? '' : 'Firefox ') . $short_version . ' b1 GTB',
'beta_2' => ($short ? '' : 'Firefox ') . $short_version . ' b2' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_3' => ($short ? '' : 'Firefox ') . $short_version . ' b3' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_2' => ($short ? '' : 'Firefox ') . $short_version . ' b2' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_3' => ($short ? '' : 'Firefox ') . $short_version . ' b3' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'sumo_1' => 'SUMO deadline',
'beta_4' => ($short ? '' : 'Firefox ') . $short_version . ' b4' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_5' => ($short ? '' : 'Firefox ') . $short_version . ' b5' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_6' => ($short ? '' : 'Firefox ') . $short_version . ' b6' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_7' => ($short ? '' : 'Firefox ') . $short_version . ' b7' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_4' => ($short ? '' : 'Firefox ') . $short_version . ' b4' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_5' => ($short ? '' : 'Firefox ') . $short_version . ' b5' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_6' => ($short ? '' : 'Firefox ') . $short_version . ' b6' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_7' => ($short ? '' : 'Firefox ') . $short_version . ' b7' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'sumo_2' => 'SUMO content localization starts',
'beta_8' => ($short ? '' : 'Firefox ') . $short_version . ' b8' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_8' => ($short ? '' : 'Firefox ') . $short_version . ' b8' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'qa_pre_rc_signoff' => $short_version . ' QA sign off',
'beta_9' => ($short ? '' : 'Firefox ') . $short_version . ' b9' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_10' => ($short ? '' : 'Firefox ') . $short_version . ' b10' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_11' => ($short ? '' : 'Firefox ') . $short_version . ' b11' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_12' => ($short ? '' : 'Firefox ') . $short_version . ' b12' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_13' => ($short ? '' : 'Firefox ') . $short_version . ' b13' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_14' => ($short ? '' : 'Firefox ') . $short_version . ' b14' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_15' => ($short ? '' : 'Firefox ') . $short_version . ' b15' . ($short ? ' GTB' : ' (GTB: 21:00 UTC)'),
'beta_9' => ($short ? '' : 'Firefox ') . $short_version . ' b9' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_10' => ($short ? '' : 'Firefox ') . $short_version . ' b10' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_11' => ($short ? '' : 'Firefox ') . $short_version . ' b11' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_12' => ($short ? '' : 'Firefox ') . $short_version . ' b12' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_13' => ($short ? '' : 'Firefox ') . $short_version . ' b13' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_14' => ($short ? '' : 'Firefox ') . $short_version . ' b14' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'beta_15' => ($short ? '' : 'Firefox ') . $short_version . ' b15' . ($short ? ' GTB' : ' (GTB: 13:00 UTC)'),
'rc_gtb' => ($short ? '' : 'Firefox ') . $short_version . ' go to Build',
'rc' => ($short ? '' : 'Firefox ') . 'RC',
'release' => ($short ? '' : 'Firefox ') . $short_version . ($short ? ' Release' : ' go-live @ 6AM PT'),
Expand Down
28 changes: 14 additions & 14 deletions app/models/ics_release_schedule.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,23 +23,23 @@
'string_freeze' => 'String Freeze starts',
'merge_day' => 'Merge day',
'beta_1' => 'Firefox ' . $releases['version'] . 'b1',
'beta_2' => 'Firefox ' . $releases['version'] . 'b2 (GTB: 21:00 UTC)',
'beta_3' => 'Firefox ' . $releases['version'] . 'b3 (GTB: 21:00 UTC)',
'beta_2' => 'Firefox ' . $releases['version'] . 'b2 (GTB: 13:00 UTC)',
'beta_3' => 'Firefox ' . $releases['version'] . 'b3 (GTB: 13:00 UTC)',
'sumo_1' => 'User affecting changes provided to SUMO',
'beta_4' => 'Firefox ' . $releases['version'] . 'b4 (GTB: 21:00 UTC)',
'beta_5' => 'Firefox ' . $releases['version'] . 'b5 (GTB: 21:00 UTC)',
'beta_6' => 'Firefox ' . $releases['version'] . 'b6 (GTB: 21:00 UTC)',
'beta_7' => 'Firefox ' . $releases['version'] . 'b7 (GTB: 21:00 UTC)',
'beta_4' => 'Firefox ' . $releases['version'] . 'b4 (GTB: 13:00 UTC)',
'beta_5' => 'Firefox ' . $releases['version'] . 'b5 (GTB: 13:00 UTC)',
'beta_6' => 'Firefox ' . $releases['version'] . 'b6 (GTB: 13:00 UTC)',
'beta_7' => 'Firefox ' . $releases['version'] . 'b7 (GTB: 13:00 UTC)',
'sumo_2' => 'SUMO content localization starts',
'beta_8' => 'Firefox ' . $releases['version'] . 'b8 (GTB: 21:00 UTC)',
'beta_8' => 'Firefox ' . $releases['version'] . 'b8 (GTB: 13:00 UTC)',
'qa_pre_rc_signoff' => 'QA pre-release sign-off',
'beta_9' => 'Firefox ' . $releases['version'] . 'b9 (GTB: 21:00 UTC)',
'beta_10' => 'Firefox ' . $releases['version'] . 'b10 (GTB: 21:00 UTC)',
'beta_11' => 'Firefox ' . $releases['version'] . 'b11 (GTB: 21:00 UTC)',
'beta_12' => 'Firefox ' . $releases['version'] . 'b12 (GTB: 21:00 UTC)',
'beta_13' => 'Firefox ' . $releases['version'] . 'b13 (GTB: 21:00 UTC)',
'beta_14' => 'Firefox ' . $releases['version'] . 'b14 (GTB: 21:00 UTC)',
'beta_15' => 'Firefox ' . $releases['version'] . 'b15 (GTB: 21:00 UTC)',
'beta_9' => 'Firefox ' . $releases['version'] . 'b9 (GTB: 13:00 UTC)',
'beta_10' => 'Firefox ' . $releases['version'] . 'b10 (GTB: 13:00 UTC)',
'beta_11' => 'Firefox ' . $releases['version'] . 'b11 (GTB: 13:00 UTC)',
'beta_12' => 'Firefox ' . $releases['version'] . 'b12 (GTB: 13:00 UTC)',
'beta_13' => 'Firefox ' . $releases['version'] . 'b13 (GTB: 13:00 UTC)',
'beta_14' => 'Firefox ' . $releases['version'] . 'b14 (GTB: 13:00 UTC)',
'beta_15' => 'Firefox ' . $releases['version'] . 'b15 (GTB: 13:00 UTC)',
'rc_gtb' => 'Firefox ' . $short_version . ' go to Build',
'rc' => 'RC',
'release' => 'Firefox ' . $short_version . ' go-live @ 6am PT',
Expand Down
28 changes: 14 additions & 14 deletions app/views/templates/future_release.html.twig
Original file line number Diff line number Diff line change
Expand Up @@ -188,23 +188,23 @@
string_freeze: 'In order to ensure that our localizers have adequate time to translate strings, please make sure that all string changes have landed by end of day.',
merge_day: 'This is the day in the release cycle when we merge mozilla-central into mozilla-beta. This is the end of the development cycle for Firefox ' ~ release ~ ' and the beginning of our Beta stabilization cycle.',
beta_1: 'Built manually just after the merge. It is rolled out to 25% of our beta population. Some experimental features are still activated to watch their behavior on a wider population. These experimental features will be deactivated mid-cycle. Uplift requests are open.',
beta_2: 'First automated beta of the cycle. It is rolled out to 50% of our beta population. Build starts at 21:00 UTC. <br>Stabilization work via uplifts.',
beta_3: 'Beta rollout bumped to 100% provided stability is good. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_2: 'First automated beta of the cycle. It is rolled out to 50% of our beta population. Build starts at 13:00 UTC. <br>Stabilization work via uplifts.',
beta_3: 'Beta rollout bumped to 100% provided stability is good. Build starts at 13:00 UTC. Stabilization work via uplifts.',
sumo_1: 'User affecting changes were identified and provided to the support.mozilla.org team. The support content for this release can now be created and will be translated before RC week.',
beta_4: 'Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_5: 'Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_6: 'On a regular 4 weeks beta cycle, Beta 6 is the last beta with experimental features still activated. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_7: 'Experimental features are no longer activated at compile time. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_8: 'Last week of the beta cycle. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_4: 'Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_5: 'Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_6: 'On a regular 4 weeks beta cycle, Beta 6 is the last beta with experimental features still activated. Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_7: 'Experimental features are no longer activated at compile time. Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_8: 'Last week of the beta cycle. Build starts at 13:00 UTC. Stabilization work via uplifts.',
qa_pre_rc_signoff: 'A week before the final sign-off, QA shares preliminary test reports for each feature riding the train. This pre-release sign-off can be <abbr title="No quality concerns">Green</abbr>, <abbr title="Moderate quality concerns">Yellow</abbr> or <abbr title="Severe quality concerns">Red</abbr>.',
beta_9: 'On a regular 4 weeks beta cycle, this is the last beta and thus the end of beta uplifts. Build starts at 21:00 UTC.',
beta_9: 'On a regular 4 weeks beta cycle, this is the last beta and thus the end of beta uplifts. Build starts at 13:00 UTC.',
sumo_2: 'New content on support.mozilla.org team is finalized, uploaded to the server and provided to our localization teams internationally.',
beta_10: 'Extra beta usually due to a longer beta cycle. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_11: 'Extra beta usually due to a longer beta cycle. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_12: 'Extra beta usually due to a longer beta cycle. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_13: 'Extra beta usually due to a longer beta cycle. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_14: 'Extra beta usually due to a longer beta cycle. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_15: 'Extra beta usually due to a longer beta cycle. Build starts at 21:00 UTC. Stabilization work via uplifts.',
beta_10: 'Extra beta usually due to a longer beta cycle. Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_11: 'Extra beta usually due to a longer beta cycle. Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_12: 'Extra beta usually due to a longer beta cycle. Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_13: 'Extra beta usually due to a longer beta cycle. Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_14: 'Extra beta usually due to a longer beta cycle. Build starts at 13:00 UTC. Stabilization work via uplifts.',
beta_15: 'Extra beta usually due to a longer beta cycle. Build starts at 13:00 UTC. Stabilization work via uplifts.',
rc_gtb: 'We merge our mozilla-beta repository to mozilla-release and close mozilla-beta until the next merge day. We then build our Release Candidate from mozilla-release. This is the build we intend to ship a week later unless we need to build a second Release Candidate to fix a major quality or business critical issue.',
rc: 'Our Release Candidate is shipped to all of our beta population.',
release: 'We ship Firefox ' ~ release ~ ' at ' ~ date(cycle_dates.release)|format_date(pattern='HH:mm', locale='en') ~ ' UTC (6AM PST) at 25% rollout.',
Expand Down

0 comments on commit b628862

Please sign in to comment.