Skip to content

Stabilization of Verisioning and Predictable Defaults #520

Closed
@galenatjpl

Description

@galenatjpl
  • Create "24.4-stable" versions of the marketplace items in marketplace_config.yaml
ManagementConsole:
sha: 
release: 24.4-stable

MarketplaceItems:
  - name: unity-cs-monitoring-lambda
    version: 24.4-stable
  - name: unity-apigateway
    version: 24.4-stable
  - name: unity-proxy
    version: 24.4-stable
  - name: unity-ui
    version: 24.4-stable
  • Add new flag to run.sh, where you can specify the config YAML file to use. DOES THIS ALREADY EXIST AS --config-file ?
  • Create "latest" versions for each marketplace folder/item. These would have NO SHA in the JSON.
  • Add a --latest flag. This would be a flag used primarily by U-CS developers that would indicate that each value in the config file should be set to latest. This would result in using a config (dynamically created) that looks like:
ManagementConsole:
sha: 
release: latest

MarketplaceItems:
  - name: unity-cs-monitoring-lambda
    version: latest
  - name: unity-apigateway
    version: latest
  - name: unity-proxy
    version: latest
  - name: unity-ui
    version: latest
  • Add individual override version flags like unity-apigateway-version, unity-proxy-version, etc..
    For example, if passing --unity-proxy-version 25.6 it would result in the following:
    TEMPLATE:
ManagementConsole:
sha: 
release: <MC_VERSION>

MarketplaceItems:
  - name: unity-cs-monitoring-lambda
    version: <MON_VERSION>
  - name: unity-apigateway
    version: <API_VERSION>
  - name: unity-proxy
    version: <PROXY_VERSION>
  - name: unity-ui
    version: <UI_VERSION>

WORKING FILE:

ManagementConsole:
sha: 
release: 24.4-stable

MarketplaceItems:
  - name: unity-cs-monitoring-lambda
    version: 24.4-stable
  - name: unity-apigateway
    version: 24.4-stable
  - name: unity-proxy
    version: 25.6
  - name: unity-ui
    version: 24.4-stable
  • Dynamically construct marketplace_config_working.yaml, which would apply any override version flag values, or simply copy the base config to marketplace_config_working.yaml. This marketplace_config_working.yaml file would be the one ALWAYS used by the run.sh/deploy.sh scripts.

  • Modify marketplace_config.yaml to have all entries reference the "24.4-stable" MP items, which will be the default used, if no "config-file" flag is specified.

  • Modify structure of yaml to include a MC commit or release:

ManagementConsole:
sha: <COMMIT_SHA>
release: <RELEASE_VERSION>

MarketplaceItems:

name: unity-cs-monitoring-lambda
version: 0.1
name: unity-apigateway
version: 0.4
name: unity-proxy
version: 0.14
name: unity-ui
version: 0.8.0
  • if sha exists, then it takes precedent over release. release is the existing mechanism that uses MCVersion variable in the cloudformation template.
  • Modify run.sh to pass new --mc-sha value
  • Modify deploy.sh to accept --mc-sha value
  • Modify deploy.sh to pass --mc-sha to cloudformation alongside the existing MCVersion argument
  • Modify cloudformation template to have shell logic that uses MCSha OR release conditionally, and does a git pull / git checkout appropriately, and run Go code that builds a release locally.

NOTE: the code changes may have to be done in the monorepo. Please confirm with @jimmie

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions