Skip to content

September 2024 Endgame #229337

Closed
Closed

Description

  • 9/23 Code freeze for the endgame
  • 9/27 Endgame done
  • 10/2 Expected release date (this may change)
Monday
  • Pin endgame issue on GitHub @bpasero
  • Run OSS tool @bpasero
  • Update links in the Endgame notebooks to point to new milestone @bpasero
  • Code freeze at 5pm PT, PRs should no longer be accepted to ensure a green build
  • Ensure we have a green build on all platforms at 5pm PT @Tyriar
  • 🔖Ensure all closed feature-requests either have a verification-needed or on-testplan label
  • Create test plan items following the template here by 6pm PT
    • Remind the team that TPIs should be written so that anyone can test. If this is not feasible, then TPI authors should assign specific testers @bpasero
  • Update your availability for testing here - https://tools.code.visualstudio.com/team-manifest team
    • Update availability of testers in vacation (Check OOF section in the Internal Backlog Plan). Double check N/A testers. @bpasero
    • Remind team that in the event of sickness or overload with TPIs, to inform the endgame champ ASAP so items can be reassigned
  • Remind team to go through their fixed issues for the milestone and update repro steps for issues which require more detailed instructions.
  • Set up the endgame retrospective to discuss process improvement
Tuesday
  • Test plan items assigned (using https://tools.code.visualstudio.com/test-plan-items)
    • Run the tool multiple times to balance load if test items come in later and assignments are already made
    • Assigned to you
  • Test build starts at 7am CET
  • Test plan ready by 8am CET
  • Remind the team about the priorities
    • Tuesday should be dedicated exclusively to testing activities. Our goal is to ensure the completion of all Test Plan Items (TPIs) and subsequently proceed with the verification phase. Fixes or commits should be refrained from unless there are exceptional circumstances such as blocked TPIs or build-related issues. On Tuesday Redmond EOD, only blocked TPIs should remain open with a corresponding label blocked and status update comment in the issue.
  • 🔖Testing
  • 🔖Verification needed
  • 🔖Verification (If verification needed is finished)
Wednesday
  • 🔖Testing
    • These remaining TPIs should be the ones that are currently blocked. Discuss during the standup and redistribute assignments based on the TPI owner and the test coverage. For instance, if a TPI is owned by a member from Zurich and has not undergone sufficient testing, it will be reassigned to one of the Zurich team members.
  • Remind team members to triage issues found in testing and assign major issues that they intend to fix to the current milestone. Remind team to move out or close other open issues/PRs on the milestone that they do not intend to fix this milestone.
  • 🔖Verification needed
  • Fixing (self-assigned, milestone assigned)
  • 🔖Verification
  • Message team members as needed to add steps to verification-steps-needed issues @bpasero
Thursday
  • Make sure the insider build is green @bpasero
  • Disable continuous insider builds and announce in #release @bpasero

    📢 Continuous insider builds are now disabled.

  • Fixing (self-assigned, milestone assigned)
    • Increased scrutiny sets in due to testing being completed. Fixes pose a much higher risk
    • Move open issues/PRs to the next month that can be deferred
  • Emphasize to the team that we want to verify as many issues as we can before the branching time, and ping team members as needed to remind them to add steps to verification-steps-needed issues @bpasero
  • 🔖Verification needed
  • 🔖Verification
  • By Friday BOD (Zurich), branch from main and release @bpasero
    • Disable the continuous release by toggling the continuous release button on the top-right corner of the Builds page
    • Branch following repositories to release/<x.y>
      • vscode
      • vscode-distro
      • vscode-dev
    • Localization: Run Update VS Code Branch build with release/* as the VS Code Branch parameter (it's the default so you shouldn't have to change anything)
    • Announce main is open for business and all issues on the current iteration are candidates and that the candidate release process is to be followed.
    • Build and manually release Insider from release/<x.y> branch for Code
    • Build and manually release Insider from release/<x.y> branch for vscode.dev (if there were vscode.dev candidates)
    • Announce in #release @bpasero

      📢 Extension authors ensure all release branch changes have been published to users, manually building and releasing if necessary.

  • Build but don't release a stable build from release/<x.y> branch to ensure stable build is green @bpasero
  • Bump up the version in package.json on main - @bpasero
  • Create next milestone on microsoft/vscode repo and ensure that it has a due date. The created milestone and its due date will be automatically synced across our repos. @bpasero
Friday
Monday
  • Polish release notes @ntrogh
  • Schedule an endgame restrospective with with endgame champion, endgame buddy, and next endgame champion for this week. Retrospective template
  • Decide whether a Patch Tuesday release will happen:
  • Remind the team: if they are going to be OOF for more than five days during the next iteration, assign someone to look out for critical issues in their feature areas and fix them if necessary. This helps with bug identification and fixing for recovery releases. @bpasero
  • Run scripts/test-documentation.sh|bat after compiling the vscode repo, and fix any issues regarding new undocumented colors. Changes made to the vscode-docs repository must be merged to the main branch of that repository for the script to acknowledge them. False positives within the color section in vscode-known-variables.json can be moved under the others section of that file. @bpasero
Monday - Wednesday

Note: The Insiders build needs to be in the wild for 24 hours before we can enter the last phase of the endgame, though the sanity testing step alone can happen earlier if there are no new candidates. @bpasero

Wednesday/Thursday - Expected release day (this may change)
  • Build stable for all platforms @bpasero
  • Build but don't release an insider build based on main for all platforms @bpasero
  • Sanity Testing
    • Windows 64 bit @Tyriar
      • System Installer
      • User Installer
      • Archive
      • Server
      • CLI
    • Windows ARM64 @connor4312
      • System Installer
      • User Installer
      • Archive
      • Server
      • CLI
    • macOS Intel @lramos15
      • Archive
      • Universal Archive
      • Server
      • CLI
    • macOS ARM64 @TylerLeonhardt
      • Archive
      • Universal Archive
      • Server
      • CLI
    • Linux x64
    • Linux Server @rzhao271 (can be tested from any OS with Docker)
      • x64
      • ARM32
      • ARM64
      • x64 Alpine
      • ARM64 Alpine
    • Linux CLI @rzhao271 (can be tested from any OS with Docker)
      • x64
      • ARM32
      • ARM64
      • x64 Alpine
      • ARM64 Alpine
  • Publish website @ntrogh @bpasero
  • Release stable from builds page no later than 11am PT @bpasero
  • Trigger the vscode.dev Deploy pipeline for release/x.y for the prod deployment target. Note that there are four deploy approvals needed - one for overall and one per each of the three service regions @bpasero
    • Request approval from another team member at the necessary step to deploy the vscode.dev build. @bpasero
  • Create an official release @bpasero
    • Create a tag (make sure you pull the release branch first): git tag <x.y.z>
    • Push the tag: git push origin <x.y.z>
    • Create a GitHub release: Open the GitHub tags, and click far right ... > Create Release. Use the correct title and description from our release notes. Also change the relative links for the key highlight list items to absolute links Example
  • X announcement @chrisdias
  • Create and publish next release notes placeholder @ntrogh
  • Enable scheduled insider builds @bpasero
  • Release insiders based on main @bpasero
  • Publish @types/vscode @bpasero
  • Close the milestone on GitHub @bpasero
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Labels

endgame-planVS Code - Next release plan for endgame

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions