Create a CI job that automates the creation of integration MRs

MR: ci: Automate integration MRs creation (!91 - closed)

Description

As a VSCode Fork maintainer, I want to test that newer versions of VSCode don't break the Web IDE or Workspaces. Therefore, I want to perform exploratory testing in both projects with a development build of the new version of the VSCode Fork.

Context

The workspaces-tools project generates a Docker container image that is used by Remote development Workspaces to initialize and start VSCode Server. This project depends on the build artifacts produced by VSCode Fork repository. If we are upgrading VSCode Fork to a newer version of the VSCode upstream project, we need to test how the new version integrates with Workspaces.

To run this test, we need to produce a development image of workspaces-tools, that in turn, uses a development artifact of the VSCode Fork. Currently, in the VSCode Fork package registry, we only publish packages that are tagged as dev releases. We need to make the CI job that publishes this packages available in Merge Requests. We also need to differentiate the development packages produced by Merge Requests from the production packages produced when releasing a new production version.

Acceptance Criteria

  • Publish a development artifact of the VSCode Fork from a Merge Request that upgrades the VSCode Fork.
  • Create a create-integration-merge-requests job that authors two merge requests:
    • An MR in the Web IDE project that is used to perform exploratory testing of the development build of the new version of VSCode.
    • An MR in the Workspaces Tools that is used to perform exploratory testing of the development build of the new version of VSCode.
Edited by Enrique Alcántara