Files
azuredatastudio/extensions/arc/package.json
Charles Gagnon 2bc6a0cd01 VS Code merge to df8fe74bd55313de0dd2303bc47a4aab0ca56b0e (#17979)
* Merge from vscode 504f934659740e9d41501cad9f162b54d7745ad9

* delete unused folders

* distro

* Bump build node version

* update chokidar

* FIx hygiene errors

* distro

* Fix extension lint issues

* Remove strict-vscode

* Add copyright header exemptions

* Bump vscode-extension-telemetry to fix webpacking issue with zone.js

* distro

* Fix failing tests (revert marked.js back to current one until we decide to update)

* Skip searchmodel test

* Fix mac build

* temp debug script loading

* Try disabling coverage

* log error too

* Revert "log error too"

This reverts commit af0183e5d4ab458fdf44b88fbfab9908d090526f.

* Revert "temp debug script loading"

This reverts commit 3d687d541c76db2c5b55626c78ae448d3c25089c.

* Add comments explaining coverage disabling

* Fix ansi_up loading issue

* Merge latest from ads

* Use newer option

* Fix compile

* add debug logging warn

* Always log stack

* log more

* undo debug

* Update to use correct base path (+cleanup)

* distro

* fix compile errors

* Remove strict-vscode

* Fix sql editors not showing

* Show db dropdown input & fix styling

* Fix more info in gallery

* Fix gallery asset requests

* Delete unused workflow

* Fix tapable resolutions for smoke test compile error

* Fix smoke compile

* Disable crash reporting

* Disable interactive

Co-authored-by: ADS Merger <karlb@microsoft.com>
2022-01-06 09:06:56 -08:00

1435 lines
61 KiB
JSON

{
"name": "arc",
"displayName": "%arc.displayName%",
"description": "%arc.description%",
"version": "0.11.0",
"publisher": "Microsoft",
"preview": true,
"license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt",
"icon": "images/extension.png",
"engines": {
"vscode": "*",
"azdata": ">=1.32.0"
},
"activationEvents": [
"onCommand:arc.connectToController",
"onCommand:arc.createController",
"onCommand:azdata.resource.deploy",
"onView:azureArc"
],
"extensionDependencies": [
"Microsoft.azcli",
"Microsoft.resource-deployment"
],
"capabilities": {
"virtualWorkspaces": false,
"untrustedWorkspaces": {
"supported": true
}
},
"repository": {
"type": "git",
"url": "https://github.com/Microsoft/azuredatastudio.git"
},
"forceReload": true,
"main": "./out/extension",
"contributes": {
"dataExplorer": {
"azureArc": [
{
"id": "azureArc",
"name": "%arc.view.title%"
}
]
},
"commands": [
{
"command": "arc.openDashboard",
"title": "%arc.openDashboard%"
},
{
"command": "arc.createController",
"title": "%command.createController.title%",
"icon": "$(add)"
},
{
"command": "arc.connectToController",
"title": "%command.connectToController.title%",
"icon": "$(disconnect)"
},
{
"command": "arc.removeController",
"title": "%command.removeController.title%"
},
{
"command": "arc.refresh",
"title": "%command.refresh.title%"
},
{
"command": "arc.editConnection",
"title": "%command.editConnection.title%"
}
],
"menus": {
"commandPalette": [
{
"command": "arc.openDashboard",
"when": "false"
},
{
"command": "arc.removeController",
"when": "false"
},
{
"command": "arc.refresh",
"when": "false"
},
{
"command": "arc.editConnection",
"when": "false"
}
],
"view/title": [
{
"command": "arc.createController",
"when": "view == azureArc",
"group": "navigation@1"
},
{
"command": "arc.connectToController",
"when": "view == azureArc",
"group": "navigation@2"
}
],
"view/item/context": [
{
"command": "arc.openDashboard",
"when": "view == azureArc && viewItem",
"group": "navigation@1"
},
{
"command": "arc.editConnection",
"when": "view == azureArc && viewItem == dataControllers",
"group": "navigation@2"
},
{
"command": "arc.refresh",
"when": "view == azureArc && viewItem == dataControllers",
"group": "navigation@3"
},
{
"command": "arc.removeController",
"when": "view == azureArc && viewItem == dataControllers",
"group": "navigation@4"
}
]
},
"viewsWelcome": [
{
"view": "azureArc",
"contents": "%arc.view.welcome.connect%",
"when": "arc.loaded"
},
{
"view": "azureArc",
"contents": "%arc.view.welcome.loading%",
"when": "!arc.loaded"
}
],
"resourceDeploymentTypes": [
{
"name": "arc-controller",
"displayName": "%resource.type.azure.arc.display.name%",
"description": "%resource.type.azure.arc.description%",
"platforms": "*",
"icon": "./images/data_controller.svg",
"tags": [
"Hybrid",
"SQL Server",
"PostgreSQL"
],
"providers": [
{
"name": "arc-controller",
"notebookWizard": {
"notebook": "./notebooks/arcDeployment/deploy.arc.data.controller.ipynb",
"type": "new-arc-control-plane",
"doneAction": {
"label": "%deploy.done.action%"
},
"scriptAction": {
"label": "%deploy.script.action%"
},
"codeCellInsertionPosition": 5,
"title": "%arc.data.controller.new.wizard.title%",
"name": "arc.data.controller.new.wizard",
"labelPosition": "left",
"generateSummaryPage": false,
"pages": [
{
"title": "%arc.data.controller.select.cluster.title%",
"sections": [
{
"fields": [
{
"type": "kube_cluster_context_picker",
"label": "%arc.data.controller.kube.cluster.context%",
"required": true,
"inputWidth": "350px",
"variableName": "AZDATA_NB_VAR_ARC_CLUSTER_CONTEXT",
"configFileVariableName": "AZDATA_NB_VAR_ARC_CONFIG_FILE"
}
]
}
]
},
{
"title": "%arc.data.controller.cluster.config.profile.title%",
"sections": [
{
"fields": [
{
"type": "options",
"label": "%arc.data.controller.cluster.config.profile%",
"required": true,
"variableName": "AZDATA_NB_VAR_ARC_PROFILE",
"editable": false,
"options": {
"source": {
"providerId": "azcli.arc.controller.config.profiles",
"loadingText": "%arc.data.controller.cluster.config.profile.loading%",
"loadingCompletedText": "%arc.data.controller.cluster.config.profile.loadingcompleted%"
},
"defaultValue": "azure-arc-aks-default-storage",
"optionsType": "radio"
}
}
]
}
]
},
{
"title": "%arc.data.controller.create.azureconfig.title%",
"sections": [
{
"title": "%arc.data.controller.project.details.title%",
"fields": [
{
"type": "readonly_text",
"label": "%arc.data.controller.project.details.description%",
"labelWidth": "600px"
},
{
"type": "azure_account",
"required": true,
"subscriptionVariableName": "AZDATA_NB_VAR_ARC_SUBSCRIPTION",
"resourceGroupVariableName": "AZDATA_NB_VAR_ARC_RESOURCE_GROUP"
},
{
"type": "azure_locations",
"label": "%arc.data.controller.location%",
"defaultValue": "eastus",
"required": true,
"locationVariableName": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_LOCATION",
"locations": [
"australiaeast",
"centralus",
"eastus",
"eastus2",
"francecentral",
"japaneast",
"koreacentral",
"northeurope",
"southeastasia",
"uksouth",
"westeurope",
"westus2"
]
}
]
}
]
},
{
"title": "%arc.data.controller.create.controllerconfig.title%",
"sections": [
{
"title": "%arc.data.controller.details.title%",
"fields": [
{
"type": "readonly_text",
"label": "%arc.data.controller.details.description%",
"labelWidth": "600px"
},
{
"type": "options",
"label": "%arc.data.controller.connectivity.mode%",
"required": true,
"variableName": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_CONNECTIVITY_MODE",
"options": {
"values": [
"Indirect",
"Direct"
],
"defaultValue": "Indirect",
"optionsType": "radio"
}
},
{
"type": "text",
"label": "%arc.data.controller.namespace%",
"validations": [
{
"type": "regex_match",
"regex": "^[a-z0-9]([-a-z0-9]{0,61}[a-z0-9])?$",
"description": "%arc.data.controller.namespace.validation.description%"
}
],
"defaultValue": "arc",
"required": true,
"variableName": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_NAMESPACE",
"enabled": {
"target": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_CONNECTIVITY_MODE",
"value": "Indirect"
}
},
{
"type": "text",
"label": "%arc.data.controller.name%",
"validations": [
{
"type": "regex_match",
"regex": "^[a-z0-9]([-.a-z0-9]{0,251}[a-z0-9])?$",
"description": "%arc.data.controller.name.validation.description%"
}
],
"defaultValue": "arc-dc",
"required": true,
"variableName": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_NAME"
},
{
"label": "%arc.storage-class.dc.label%",
"description": "%arc.sql.storage-class.dc.description%",
"variableName": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_STORAGE_CLASS",
"type": "kube_storage_class",
"required": true
},
{
"type": "options",
"label": "%arc.data.controller.infrastructure%",
"defaultValue": "azure",
"required": true,
"variableName": "AZDATA_NB_VAR_ARC_INFRASTRUCTURE",
"options": [
"azure",
"gcp",
"aws",
"alibaba",
"onpremises",
"other"
]
},
{
"type": "text",
"label": "%arc.data.controller.custom.location%",
"description": "%arc.data.controller.custom.location.description%",
"required": true,
"variableName": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_CUSTOM_LOCATION",
"enabled": {
"target": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_CONNECTIVITY_MODE",
"value": "Direct"
}
},
{
"type": "checkbox",
"label": "%arc.data.controller.auto.upload.metrics%",
"variableName": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_AUTO_UPLOAD_METRICS",
"description": "%arc.data.controller.auto.upload.metrics.description%",
"defaultValue": false,
"enabled": {
"target": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_CONNECTIVITY_MODE",
"value": "Direct"
}
},
{
"type": "checkbox",
"label": "%arc.data.controller.auto.upload.logs%",
"variableName": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_AUTO_UPLOAD_LOGS",
"description": "%arc.data.controller.auto.upload.logs.description%",
"defaultValue": false,
"enabled": {
"target": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_CONNECTIVITY_MODE",
"value": "Direct"
}
}
]
},
{
"title": "%arc.data.controller.metrics.and.logs.dashboard.credentials.title%",
"fields": [
{
"label": "%arc.data.controller.metrics.and.logs.dashboard.credentials.username%",
"description": "%arc.data.controller.metrics.and.logs.dashboard.credentials.username.description%",
"variableName": "AZDATA_NB_VAR_ARC_ADMIN_USERNAME",
"type": "text",
"required": true,
"defaultValue": "",
"enabled": true
},
{
"label": "%arc.data.controller.metrics.and.logs.dashboard.credentials.password%",
"description": "%arc.data.controller.metrics.and.logs.dashboard.credentials.password.description%",
"variableName": "AZDATA_NB_VAR_ARC_ADMIN_PASSWORD",
"type": "sql_password",
"userName": "arcadmin",
"confirmationRequired": true,
"confirmationLabel": "%arc.data.controller.metrics.and.logs.dashboard.credentials.confirm.password%",
"defaultValue": "",
"required": true
}
]
}
]
},
{
"title": "%arc.data.controller.create.summary.title%",
"isSummaryPage": true,
"fieldHeight": "16px",
"sections": [
{
"title": "",
"collapsible": false,
"fieldWidth": "200px",
"fieldHeight": "14px",
"spaceBetweenFields": 0,
"rows": [
{
"items": [
{
"items": [
{
"label": "%arc.data.controller.summary.arc.data.controller%",
"type": "readonly_text",
"enabled": true,
"labelWidth": "185px"
}
]
},
{
"items": [
{
"label": "%arc.data.controller.summary.estimated.cost.per.month%",
"type": "readonly_text",
"enabled": true,
"labelWidth": "190px",
"labelCSSStyles": {
"fontWeight": "Bold"
}
}
]
}
]
},
{
"items": [
{
"items": [
{
"label": "%arc.data.controller.summary.arc.by.microsoft%",
"type": "readonly_text",
"labelWidth": "185px"
}
]
},
{
"items": [
{
"label": "%arc.data.controller.summary.free%",
"type": "readonly_text",
"enabled": true,
"defaultValue": "",
"labelWidth": "100px"
}
]
}
]
},
{
"items": [
{
"items": [
{
"label": "{0}",
"type": "readonly_text",
"enabled": true,
"labelWidth": "69px",
"links": [
{
"text": "%arc.data.controller.summary.arc.terms.of.use%",
"url": "https://go.microsoft.com/fwlink/?linkid=2045708"
}
]
},
{
"label": "|",
"type": "readonly_text",
"enabled": true,
"defaultValue": "",
"labelWidth": "4px",
"fieldWidth": "6px"
},
{
"label": "{0}",
"type": "readonly_text",
"enabled": true,
"labelWidth": "100px",
"links": [
{
"text": "%arc.data.controller.summary.arc.terms.privacy.policy%",
"url": "https://go.microsoft.com/fwlink/?linkid=512132"
}
]
}
]
}
]
}
]
},
{
"title": "%arc.data.controller.summary.terms%",
"fieldHeight": "88px",
"fields": [
{
"label": "%arc.data.controller.summary.terms.description%",
"type": "readonly_text",
"enabled": true,
"labelWidth": "750px",
"links": [
{
"text": "%arc.data.controller.summary.terms.link.text%",
"url": "https://go.microsoft.com/fwlink/?linkid=2045624"
}
]
}
]
},
{
"title": "%arc.data.controller.summary.kubernetes%",
"fields": [
{
"label": "%arc.data.controller.summary.kube.config.file.path%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_CONFIG_FILE)"
},
{
"label": "%arc.data.controller.summary.cluster.context%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_CLUSTER_CONTEXT)"
},
{
"label": "%arc.data.controller.summary.profile%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_PROFILE)"
},
{
"label": "%arc.data.controller.summary.username%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_ADMIN_USERNAME)"
}
]
},
{
"title": "%arc.data.controller.summary.azure%",
"fields": [
{
"label": "%arc.data.controller.summary.subscription%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_SUBSCRIPTION)",
"inputWidth": "600"
},
{
"label": "%arc.data.controller.summary.resource.group%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_RESOURCE_GROUP)"
},
{
"label": "%arc.data.controller.summary.location%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_DATA_CONTROLLER_LOCATION)"
}
]
},
{
"title": "%arc.data.controller.summary.controller%",
"fields": [
{
"label": "%arc.data.controller.summary.data.controller.namespace%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_DATA_CONTROLLER_NAMESPACE)"
},
{
"label": "%arc.data.controller.summary.data.controller.name%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_DATA_CONTROLLER_NAME)"
},
{
"label": "%arc.data.controller.summary.data.controller.infrastructure%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "$(AZDATA_NB_VAR_ARC_INFRASTRUCTURE)"
}
]
}
]
}
]
},
"requiredTools": [
{
"name": "kubectl"
},
{
"name": "azure-cli"
}
],
"when": true
}
]
},
{
"name": "arc-postgres",
"displayName": "%resource.type.arc.postgres.display.name%",
"description": "%resource.type.arc.postgres.description%",
"platforms": "*",
"icon": "./images/postgres.svg",
"tags": [
"Hybrid",
"PostgreSQL"
],
"providers": [
{
"name": "arc-postgres",
"notebookWizard": {
"notebook": "./notebooks/arcDeployment/deploy.postgres.existing.arc.ipynb",
"doneAction": {
"label": "%deploy.done.action%"
},
"scriptAction": {
"label": "%deploy.script.action%"
},
"codeCellInsertionPosition": 5,
"title": "%arc.postgres.wizard.title%",
"name": "arc.postgres.wizard",
"labelPosition": "left",
"generateSummaryPage": false,
"pages": [
{
"title": "%arc.postgres.wizard.page1.title%",
"labelWidth": "205px",
"inputWidth": "280px",
"sections": [
{
"title": "%arc.postgres.settings.section.title%",
"fields": [
{
"label": "%arc.controller%",
"variableName": "CONTROLLER_NAME",
"type": "options",
"editable": false,
"required": true,
"options": {
"source": {
"providerId": "arc.controllers",
"variableNames": {
"namespace": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_NAMESPACE",
"kubeConfig": "AZDATA_NB_VAR_CONTROLLER_KUBECONFIG",
"clusterContext": "AZDATA_NB_VAR_CONTROLLER_KUBECTL_CONTEXT"
}
},
"optionsType": "dropdown"
}
},
{
"label": "%arc.postgres.server.group.name%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_NAME",
"type": "text",
"description": "%arc.postgres.server.group.name.validation.description%",
"validations": [
{
"type": "regex_match",
"regex": "^[a-z]([-a-z0-9]{0,9}[a-z0-9])?$",
"description": "%arc.postgres.server.group.name.validation.description%"
}
],
"required": true
},
{
"label": "%arc.password%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_PASSWORD",
"type": "password",
"confirmationRequired": true,
"confirmationLabel": "%arc.confirm.password%",
"defaultValue": "",
"required": true
},
{
"label": "%arc.postgres.server.group.workers.label%",
"description": "%arc.postgres.server.group.workers.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS",
"type": "number",
"validations": [
{
"type": "is_integer",
"description": "%should.be.integer%"
},
{
"type": "!=",
"target": "1",
"description": "%worker.node.count.should.not.be.one%"
}
],
"defaultValue": "2",
"min": 0
},
{
"label": "%arc.postgres.server.group.port%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_PORT",
"type": "number",
"validations": [
{
"type": "is_integer",
"description": "%should.be.integer%"
}
],
"defaultValue": "5432",
"min": 1,
"max": 65535
},
{
"label": "%arc.postgres.server.group.engine.version%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_ENGINE_VERSION",
"type": "options",
"options": [
"11",
"12"
],
"defaultValue": "12"
},
{
"label": "%arc.postgres.server.group.extensions.label%",
"description": "%arc.postgres.server.group.extensions.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_EXTENSIONS",
"type": "text"
}
]
},
{
"title": "%arc.postgres.settings.resource.worker.title%",
"fields": [
{
"label": "%arc.postgres.server.group.workers.cores.request.label%",
"description": "%arc.postgres.server.group.workers.cores.request.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS_CORES_REQUEST",
"type": "number",
"min": 1,
"validations": [
{
"type": "<=",
"target": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS_CORES_LIMIT",
"description": "%requested.cores.less.than.or.equal.to.cores.limit%"
}
]
},
{
"label": "%arc.postgres.server.group.workers.cores.limit.label%",
"description": "%arc.postgres.server.group.workers.cores.limit.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS_CORES_LIMIT",
"type": "number",
"min": 1,
"validations": [
{
"type": ">=",
"target": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS_CORES_REQUEST",
"description": "%cores.limit.greater.than.or.equal.to.requested.cores%"
}
]
},
{
"label": "%arc.postgres.server.group.workers.memory.request.label%",
"description": "%arc.postgres.server.group.workers.memory.request.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS_MEMORY_REQUEST",
"type": "number",
"min": 0.25,
"validations": [
{
"type": "<=",
"target": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS_MEMORY_LIMIT",
"description": "%requested.memory.less.than.or.equal.to.memory.limit%"
}
]
},
{
"label": "%arc.postgres.server.group.workers.memory.limit.label%",
"description": "%arc.postgres.server.group.workers.memory.limit.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS_MEMORY_LIMIT",
"type": "number",
"min": 0.25,
"validations": [
{
"type": ">=",
"target": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS_MEMORY_REQUEST",
"description": "%memory.limit.greater.than.or.equal.to.requested.memory%"
}
]
}
]
},
{
"title": "%arc.postgres.settings.resource.coordinator.title%",
"fields": [
{
"label": "%arc.postgres.server.group.coordinator.cores.request.label%",
"description": "%arc.postgres.server.group.coordinator.cores.request.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_COORDINATOR_CORES_REQUEST",
"type": "number",
"min": 1,
"validations": [
{
"type": "<=",
"target": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_COORDINATOR_CORES_LIMIT",
"description": "%requested.cores.less.than.or.equal.to.cores.limit%"
}
]
},
{
"label": "%arc.postgres.server.group.coordinator.cores.limit.label%",
"description": "%arc.postgres.server.group.coordinator.cores.limit.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_COORDINATOR_CORES_LIMIT",
"type": "number",
"min": 1,
"validations": [
{
"type": ">=",
"target": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_COORDINATOR_CORES_REQUEST",
"description": "%cores.limit.greater.than.or.equal.to.requested.cores%"
}
]
},
{
"label": "%arc.postgres.server.group.coordinator.memory.request.label%",
"description": "%arc.postgres.server.group.coordinator.memory.request.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_COORDINATOR_MEMORY_REQUEST",
"type": "number",
"min": 0.25,
"validations": [
{
"type": "<=",
"target": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_COORDINATOR_MEMORY_LIMIT",
"description": "%requested.memory.less.than.or.equal.to.memory.limit%"
}
]
},
{
"label": "%arc.postgres.server.group.coordinator.memory.limit.label%",
"description": "%arc.postgres.server.group.coordinator.memory.limit.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_COORDINATOR_MEMORY_LIMIT",
"type": "number",
"min": 0.25,
"validations": [
{
"type": ">=",
"target": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_COORDINATOR_MEMORY_REQUEST",
"description": "%memory.limit.greater.than.or.equal.to.requested.memory%"
}
]
}
]
},
{
"title": "%arc.postgres.settings.storage.title%",
"fields": [
{
"label": "%arc.storage-class.data.label%",
"description": "%arc.postgres.storage-class.data.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_STORAGE_CLASS_DATA",
"type": "kube_storage_class",
"required": true
},
{
"label": "%arc.postgres.server.group.volume.size.data.label%",
"description": "%arc.postgres.server.group.volume.size.data.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_VOLUME_SIZE_DATA",
"type": "number",
"defaultValue": "5",
"min": 1
},
{
"label": "%arc.storage-class.logs.label%",
"description": "%arc.postgres.storage-class.logs.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_STORAGE_CLASS_LOGS",
"type": "kube_storage_class",
"required": true
},
{
"label": "%arc.postgres.server.group.volume.size.logs.label%",
"description": "%arc.postgres.server.group.volume.size.logs.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_VOLUME_SIZE_LOGS",
"type": "number",
"defaultValue": "5",
"min": 1
},
{
"label": "%arc.storage-class.backups.label%",
"description": "%arc.postgres.storage-class.backups.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_STORAGE_CLASS_BACKUPS",
"type": "kube_storage_class",
"required": true
},
{
"label": "%arc.postgres.server.group.volume.size.backups.label%",
"description": "%arc.postgres.server.group.volume.size.backups.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_VOLUME_SIZE_BACKUPS",
"type": "number",
"defaultValue": "5",
"min": 1
}
]
}
]
}
]
},
"requiredTools": [
{
"name": "kubectl"
},
{
"name": "azure-cli"
}
],
"when": "true"
}
],
"agreements": [
{
"template": "%arc.agreement%",
"links": [
{
"text": "%microsoft.agreement.privacy.statement%",
"url": "https://go.microsoft.com/fwlink/?LinkId=853010"
},
{
"text": "%arc.agreement.postgres.terms.conditions%",
"url": "https://go.microsoft.com/fwlink/?linkid=2045708"
}
],
"when": "true"
}
]
}
],
"resourceDeploymentSubTypes": [
{
"resourceName": "azure-sql-mi",
"options": [
{
"name": "mi-type",
"values": [
{
"name": "arc-mi",
"displayName": "%resource.type.arc.sql.display.name%"
}
]
}
],
"tags": [
"Hybrid",
"SQL Server"
],
"provider": {
"name": "azure-sql-mi_arc-mi",
"notebookWizard": {
"notebook": "./notebooks/arcDeployment/deploy.sql.existing.arc.ipynb",
"doneAction": {
"label": "%deploy.done.action%"
},
"scriptAction": {
"label": "%deploy.script.action%"
},
"codeCellInsertionPosition": 5,
"title": "%arc.sql.wizard.title%",
"name": "arc.sql.wizard",
"labelPosition": "left",
"generateSummaryPage": false,
"pages": [
{
"title": "%arc.sql.wizard.page1.title%",
"labelWidth": "190px",
"inputWidth": "280px",
"sections": [
{
"title": "%arc.sql.connection.settings.section.title%",
"fields": [
{
"label": "%arc.controller%",
"variableName": "CONTROLLER_NAME",
"type": "options",
"editable": false,
"required": true,
"options": {
"source": {
"providerId": "arc.controllers",
"variableNames": {
"namespace": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_NAMESPACE",
"kubeConfig": "AZDATA_NB_VAR_CONTROLLER_KUBECONFIG",
"clusterContext": "AZDATA_NB_VAR_CONTROLLER_KUBECTL_CONTEXT",
"resourceGroup": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_RESOURCE_GROUP",
"connectionMode": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_CONNECTION_MODE",
"location": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_LOCATION",
"customLocation": "AZDATA_NB_VAR_ARC_DATA_CONTROLLER_CUSTOM_LOCATION"
}
},
"optionsType": "dropdown"
}
},
{
"label": "%arc.sql.instance.name%",
"variableName": "AZDATA_NB_VAR_SQL_INSTANCE_NAME",
"type": "text",
"defaultValue": "sqlinstance1",
"required": true,
"validations": [
{
"type": "regex_match",
"regex": "^[a-z]([-a-z0-9]{0,11}[a-z0-9])?$",
"description": "%arc.sql.invalid.instance.name%"
}
]
},
{
"label": "%arc.sql.username%",
"variableName": "AZDATA_NB_VAR_SQL_USERNAME",
"type": "text",
"required": true,
"validations": [
{
"type": "regex_match",
"regex": "^(?!sa$)",
"description": "%arc.sql.invalid.username%"
}
]
},
{
"label": "%arc.password%",
"variableName": "AZDATA_NB_VAR_SQL_PASSWORD",
"type": "sql_password",
"userName": "sa",
"confirmationRequired": true,
"confirmationLabel": "%arc.confirm.password%",
"defaultValue": "",
"required": true
}
]
},
{
"title": "%arc.sql.instance.settings.section.title%",
"fields": [
{
"type": "options",
"label": "%arc.sql.replicas%",
"description": "%arc.sql.high.availability.description%",
"required": true,
"variableName": "AZDATA_NB_VAR_SQL_REPLICAS",
"options": {
"values": [
"%arc.sql.two.replicas%",
"%arc.sql.three.replicas%"
],
"defaultValue": "%arc.sql.two.replicas%",
"optionsType": "radio"
},
"dynamicOptions":
{
"target": "AZDATA_NB_VAR_SQL_SERVICE_TIER",
"alternates": [
{
"selection": "%arc.sql.service.tier.general.purpose%",
"alternateValues": [
"%arc.sql.one.replica%"
],
"defaultValue": "%arc.sql.one.replica%"
}
]
}
},
{
"label": "%arc.storage-class.data.label%",
"description": "%arc.sql.storage-class.data.description%",
"variableName": "AZDATA_NB_VAR_SQL_STORAGE_CLASS_DATA",
"type": "kube_storage_class",
"required": false
},
{
"label": "%arc.sql.volume.size.data.label%",
"description": "%arc.sql.volume.size.data.description%",
"variableName": "AZDATA_NB_VAR_SQL_VOLUME_SIZE_DATA",
"type": "number",
"defaultValue": "5",
"min": 1,
"required": true
},
{
"label": "%arc.storage-class.datalogs.label%",
"description": "%arc.sql.storage-class.datalogs.description%",
"variableName": "AZDATA_NB_VAR_SQL_STORAGE_CLASS_DATALOGS",
"type": "kube_storage_class",
"required": false
},
{
"label": "%arc.sql.volume.size.datalogs.label%",
"description": "%arc.sql.volume.size.datalogs.description%",
"variableName": "AZDATA_NB_VAR_SQL_VOLUME_SIZE_DATALOGS",
"type": "number",
"defaultValue": "5",
"min": 1,
"required": true
},
{
"label": "%arc.storage-class.logs.label%",
"description": "%arc.sql.storage-class.logs.description%",
"variableName": "AZDATA_NB_VAR_SQL_STORAGE_CLASS_LOGS",
"type": "kube_storage_class",
"required": false
},
{
"label": "%arc.sql.volume.size.logs.label%",
"description": "%arc.sql.volume.size.logs.description%",
"variableName": "AZDATA_NB_VAR_SQL_VOLUME_SIZE_LOGS",
"type": "number",
"defaultValue": "5",
"min": 1,
"required": true
},
{
"label": "%arc.storage-class.backups.label%",
"description": "%arc.sql.storage-class.backups.description%",
"variableName": "AZDATA_NB_VAR_SQL_STORAGE_CLASS_BACKUPS",
"type": "kube_storage_class",
"required": false
},
{
"label": "%arc.sql.volume.size.backups.label%",
"description": "%arc.sql.volume.size.backups.description%",
"variableName": "AZDATA_NB_VAR_SQL_VOLUME_SIZE_BACKUPS",
"type": "number",
"defaultValue": "5",
"min": 1,
"required": true
},
{
"label": "%arc.cores-request.label%",
"description": "%arc.sql.cores-request.description%",
"variableName": "AZDATA_NB_VAR_SQL_CORES_REQUEST",
"type": "number",
"min": 1,
"defaultValue": 2,
"required": false,
"validations": [
{
"type": "<=",
"target": "AZDATA_NB_VAR_SQL_CORES_LIMIT",
"description": "%requested.cores.less.than.or.equal.to.cores.limit%"
}
]
},
{
"label": "%arc.cores-limit.label%",
"description": "%arc.sql.cores-limit.description%",
"variableName": "AZDATA_NB_VAR_SQL_CORES_LIMIT",
"type": "number",
"min": 1,
"required": false,
"defaultValue": 4,
"validations": [
{
"type": ">=",
"target": "AZDATA_NB_VAR_SQL_CORES_REQUEST",
"description": "%cores.limit.greater.than.or.equal.to.requested.cores%"
}
]
},
{
"label": "%arc.memory-request.label%",
"description": "%arc.sql.memory-request.description%",
"variableName": "AZDATA_NB_VAR_SQL_MEMORY_REQUEST",
"type": "number",
"min": 2,
"defaultValue": 4,
"required": false,
"validations": [
{
"type": "<=",
"target": "AZDATA_NB_VAR_SQL_MEMORY_LIMIT",
"description": "%requested.memory.less.than.or.equal.to.memory.limit%"
}
]
},
{
"label": "%arc.memory-limit.label%",
"description": "%arc.sql.memory-limit.description%",
"variableName": "AZDATA_NB_VAR_SQL_MEMORY_LIMIT",
"type": "number",
"min": 2,
"defaultValue": 8,
"required": false,
"validations": [
{
"type": ">=",
"target": "AZDATA_NB_VAR_SQL_MEMORY_REQUEST",
"description": "%memory.limit.greater.than.or.equal.to.requested.memory%"
}
]
},
{
"type": "options",
"label": "%arc.sql.service.tier.label%",
"variableName": "AZDATA_NB_VAR_SQL_SERVICE_TIER",
"description": "%arc.sql.service.tier.description%",
"required": true,
"options": {
"values": [
"%arc.sql.service.tier.business.critical%",
"%arc.sql.service.tier.general.purpose%"
],
"defaultValue": "%arc.sql.service.tier.business.critical%",
"optionsType": "radio"
}
},
{
"type": "checkbox",
"label": "%arc.sql.dev.use.label%",
"variableName": "AZDATA_NB_VAR_SQL_DEV_USE",
"description": "%arc.sql.dev.use.description%",
"defaultValue": false
},
{
"type": "checkbox",
"label": "%arc.sql.license.type.label%",
"variableName": "AZDATA_NB_VAR_SQL_LICENSE_TYPE",
"description": "%arc.sql.license.type.description%",
"defaultValue": false
}
]
},
{
"title": "%arc.sql.instance.retention.policy.title%",
"fields": [
{
"type": "readonly_text",
"label": "%arc.sql.pitr.retention.description%",
"labelWidth": "600px",
"enabled": true,
"fieldHeight": "10px",
"links": [
{
"text": "%arc.agreement.sql.help.text.learn.more%",
"url": "https://docs.microsoft.com/azure/azure-arc/data/point-in-time-restore"
}
]
},
{
"label": "%arc.sql.retention.days.label%",
"description": "%arc.sql.retention.days.description%",
"variableName": "AZDATA_NB_VAR_SQL_RETENTION_DAYS",
"type": "number",
"min": 0,
"max": 35,
"required": false
}
]
},
{
"title": "%arc.sql.cost.summary%",
"fields": [
{
"label": "%arc.sql.cost.summary.additional.charge%",
"type": "readonly_text",
"enabled": true,
"labelWidth": "750px",
"links": [
{
"text": "%arc.sql.cost.summary.pricing.details%",
"url": "https://aka.ms/ArcSQLBilling"
}
]
},
{
"label": "%arc.sql.cost.summary.cost.vcore%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "0.00 USD",
"valueProvider": {
"providerId": "params-to-cost-per-vcore",
"triggerFields": [
"AZDATA_NB_VAR_SQL_DEV_USE",
"AZDATA_NB_VAR_SQL_SERVICE_TIER"
]
}
},
{
"label": "%arc.sql.cost.summary.vcore.limit%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "x 4",
"valueProvider": {
"providerId": "params-to-vcore-limit",
"triggerFields": [
"AZDATA_NB_VAR_SQL_CORES_LIMIT"
]
}
},
{
"label": "%arc.sql.cost.summary.azure.hybrid.benefit.discount%",
"type": "readonly_text",
"isEvaluated": true,
"defaultValue": "- 0",
"valueProvider": {
"providerId": "params-to-hybrid-benefit-discount",
"triggerFields": [
"AZDATA_NB_VAR_SQL_CORES_LIMIT",
"AZDATA_NB_VAR_SQL_DEV_USE",
"AZDATA_NB_VAR_SQL_SERVICE_TIER",
"AZDATA_NB_VAR_SQL_LICENSE_TYPE"
]
}
},
{
"label": "%arc.sql.cost.summary.estimated.cost.per.month%",
"type": "readonly_text",
"defaultValue": "0.00 USD",
"valueProvider": {
"providerId": "params-to-estimated-cost",
"triggerFields": [
"AZDATA_NB_VAR_SQL_REPLICAS",
"AZDATA_NB_VAR_SQL_CORES_LIMIT",
"AZDATA_NB_VAR_SQL_DEV_USE",
"AZDATA_NB_VAR_SQL_SERVICE_TIER",
"AZDATA_NB_VAR_SQL_LICENSE_TYPE"
]
}
}
]
},
{
"title": "%arc.sql.instance.retention.policy.title%",
"fields": [
{
"type": "readonly_text",
"label": "%arc.sql.pitr.retention.description%",
"labelWidth": "600px",
"enabled": true,
"fieldHeight": "10px",
"links": [
{
"text": "%arc.agreement.sql.help.text.learn.more%",
"url": "https://docs.microsoft.com/azure/azure-arc/data/point-in-time-restore"
}
]
},
{
"label": "%arc.sql.retention.days.label%",
"description": "%arc.sql.retention.days.description%",
"variableName": "AZDATA_NB_VAR_SQL_RETENTION_DAYS",
"type": "number",
"min": 1,
"max": 35,
"required": false
}
]
}
]
}
]
},
"requiredTools": [
{
"name": "kubectl"
},
{
"name": "azure-cli"
}
],
"when": "mi-type=arc-mi"
},
"agreement": {
"template": "%arc.agreement%",
"links": [
{
"text": "%microsoft.agreement.privacy.statement%",
"url": "https://go.microsoft.com/fwlink/?LinkId=853010"
},
{
"text": "%arc.agreement.sql.terms.conditions%",
"url": "https://go.microsoft.com/fwlink/?linkid=2045708"
}
],
"when": "mi-type=arc-mi"
},
"helpText": {
"template": "%arc.agreement.sql.help.text%",
"links": [
{
"text": "%arc.agreement.sql.help.text.learn.more%",
"accessibilityInformation": {
"label": "%arc.agreement.sql.help.text.learn.more.ariaLabel%"
},
"url": "https://go.microsoft.com/fwlink/?linkid=2141849"
}
],
"when": "mi-type=arc-mi"
}
}
],
"resourceDeploymentOptionsSources": [
{
"id": "arc.controllers"
}
]
},
"dependencies": {
"uuid": "^8.3.0",
"vscode-nls": "^4.1.2",
"yamljs": "^0.3.0"
},
"devDependencies": {
"@types/mocha": "^5.2.5",
"@types/node": "^12.11.7",
"@types/sinon": "^9.0.4",
"@types/uuid": "^8.3.0",
"@types/yamljs": "^0.2.31",
"@microsoft/azdata-test": "^1.5.1",
"mocha": "^5.2.0",
"mocha-junit-reporter": "^1.17.0",
"mocha-multi-reporters": "^1.1.7",
"should": "^13.2.3",
"sinon": "^9.0.2",
"typemoq": "2.1.0",
"vscodetestcover": "^1.1.0"
},
"__metadata": {
"id": "68",
"publisherDisplayName": "Microsoft",
"publisherId": "Microsoft"
}
}