Internal releases - Dedicated: Adapt tenant model schema to accept internal packages

Context

Part of Implement the changes necessary for dedicated to deploy internal packages . This issue focuses on the changes required for Tenant Model Schema

The adaption of Dedicated includes three parts for tenant-model-schema, Instrumentor and Switchboard.

flowchart RL
    A[Switchboard] -->|Define parameters and trigger| B[Instrumentor]
    B -->|Use schema| C[tenant-model-schema]

Proposal

Tenant Model Schema has a change process listed in: https://gitlab.com/gitlab-com/gl-infra/gitlab-dedicated/tenant-model-schema#change-process

We could potentially change Instrumentor and Switchboard in parallel but it's safer if we change the schema model first

        "gitlab_version": {
          "type": "string",
          "pattern": "^[0-9]{1,2}\\.[0-9]{1,2}\\.[0-9]{1,2}$"
        },
        "prerelease_version": {
          "oneOf": [
            {
              "type": "string",
              "pattern": "^[0-9]{1,2}\\.[0-9]{1,2}\\.[0-9]{12}-[0-9a-f]{11}\\.[0-9a-f]{11}$",
              "description": "A tagged pre-release version to install from the pre_release repo on packages.gitlab.com and images on dev.gitlab.org.  Must match the major/minor version of gitlab_version. Incompatible with `enable_fips`"
            },
            {
              "type": "string",
              "pattern": "^[0-9]{1,2}\\.[0-9]{1,2}\\.[0-9]{1,2}$",
              "description": "A simple pre-release version to install from the pre_release repo on packages.gitlab.com and images on dev.gitlab.org.  Must match the major/minor version of gitlab_version. Incompatible with `enable_fips`"
            }
          ]
        },

https://gitlab.com/gitlab-com/gl-infra/gitlab-dedicated/tenant-model-schema/-/blob/main/json-schemas/tenant-model.json?ref_type=heads#L250-267

We must maintain backward compatibility so these changes should be an addition to what's already there.

Important points to consider

Exit Criteria

  • Tenant schema model adapted to accept the new notation.
  • Dedicated team reviews this change.
Edited by Dat Tang