Update PG Deployment with new fields (#12187)

* Added 5 missing field options

* Missing apostrophe

* Change extensions label

* Update volume size descriptions

* Change volume size labels

* Reorder required tools

* Reorder required tools

* Argument fixes

* Removed tabs

* Rearrange option order

* Rearrange option order

* Rearrange option order VS

* Added validation to fields. VS accepts only integer and appends Gi

* Changed Dusky deployment title

* Removed text validation for VS and Mem. Changed to Number field type

* Min set to 1 for VS and Mem

* Min set to 1 for Cores

* Memory limit must be at least 256Mi

* the casing of 'preview' should remain consistent

* Removed empty line
This commit is contained in:
nasc17
2020-09-15 12:43:12 -07:00
committed by GitHub
parent 0be5f67621
commit caeb33248e
3 changed files with 72 additions and 7 deletions

View File

@@ -133,6 +133,11 @@
"source": [
"server_group_workers = os.environ[\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_WORKERS\"]\n",
"server_group_port = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_PORT\")\n",
"server_group_engine_version = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_ENGINE_VERSION\")\n",
"server_group_extensions = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_EXTENSIONS\")\n",
"server_group_volume_size_data = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_VOLUME_SIZE_DATA\")\n",
"server_group_volume_size_logs = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_VOLUME_SIZE_LOGS\")\n",
"server_group_volume_size_backups = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_VOLUME_SIZE_BACKUPS\")\n",
"server_group_cores_request = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_CORES_REQUEST\")\n",
"server_group_cores_limit = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_CORES_LIMIT\")\n",
"server_group_memory_request = os.environ.get(\"AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_MEMORY_REQUEST\")\n",
@@ -161,13 +166,18 @@
"\n",
"workers_option = f' -w {server_group_workers}' if server_group_workers else \"\"\n",
"port_option = f' --port \"{server_group_port}\"' if server_group_port else \"\"\n",
"engine_version_option = f' -ev {server_group_engine_version}' if server_group_engine_version else \"\"\n",
"extensions_option = f' --extensions \"{server_group_extensions}\"' if server_group_extensions else \"\"\n",
"volume_size_data_option = f' -vsd {server_group_volume_size_data}Gi' if server_group_volume_size_data else \"\"\n",
"volume_size_logs_option = f' -vsl {server_group_volume_size_logs}Gi' if server_group_volume_size_logs else \"\"\n",
"volume_size_backups_option = f' -vsb {server_group_volume_size_backups}Gi' if server_group_volume_size_backups else \"\"\n",
"cores_request_option = f' -cr \"{server_group_cores_request}\"' if server_group_cores_request else \"\"\n",
"cores_limit_option = f' -cl \"{server_group_cores_limit}\"' if server_group_cores_limit else \"\"\n",
"memory_request_option = f' -mr \"{server_group_memory_request}Mi\"' if server_group_memory_request else \"\"\n",
"memory_limit_option = f' -ml \"{server_group_memory_limit}Mi\"' if server_group_memory_limit else \"\"\n",
"\n",
"os.environ[\"AZDATA_PASSWORD\"] = postgres_password\n",
"cmd = f'azdata arc postgres server create -n {server_group_name} -scd {postgres_storage_class_data} -scl {postgres_storage_class_logs} -scb {postgres_storage_class_backups}{workers_option}{port_option}{cores_request_option}{cores_limit_option}{memory_request_option}{memory_limit_option}'\n",
"cmd = f'azdata arc postgres server create -n {server_group_name} -scd {postgres_storage_class_data} -scl {postgres_storage_class_logs} -scb {postgres_storage_class_backups}{workers_option}{port_option}{engine_version_option}{extensions_option}{volume_size_data_option}{volume_size_logs_option}{volume_size_backups_option}{cores_request_option}{cores_limit_option}{memory_request_option}{memory_limit_option}'\n",
"out=run_command()"
],
"metadata": {

View File

@@ -745,6 +745,24 @@
"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.storage.title%",
"fields": [
{
"label": "%arc.storage-class.data.label%",
"description": "%arc.postgres.storage-class.data.description%",
@@ -752,6 +770,14 @@
"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%",
@@ -759,12 +785,28 @@
"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
}
]
},
@@ -773,27 +815,29 @@
"fields": [
{
"label": "%arc.postgres.server.group.cores.request%",
"description": "%arc.postgres.server.group.cores.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_CORES_REQUEST",
"type": "number",
"min": 0
"min": 1
},
{
"label": "%arc.postgres.server.group.cores.limit%",
"description": "%arc.postgres.server.group.cores.description%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_CORES_LIMIT",
"type": "number",
"min": 0
"min": 1
},
{
"label": "%arc.postgres.server.group.memory.request%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_MEMORY_REQUEST",
"type": "number",
"min": 0
"min": 256
},
{
"label": "%arc.postgres.server.group.memory.limit%",
"variableName": "AZDATA_NB_VAR_POSTGRES_SERVER_GROUP_MEMORY_LIMIT",
"type": "number",
"min": 0
"min": 256
}
]
}
@@ -803,7 +847,7 @@
},
"requiredTools": [
{
"name": "azure-cli"
"name": "kubectl"
},
{
"name": "azdata",

View File

@@ -70,7 +70,7 @@
"resource.type.arc.sql.display.name": "Azure SQL managed instance - Azure Arc (preview)",
"resource.type.arc.postgres.display.name": "PostgreSQL server groups - Azure Arc (preview)",
"resource.type.arc.postgres.display.name": "PostgreSQL Hyperscale server groups - Azure Arc (preview)",
"resource.type.arc.sql.description": "Managed SQL Instance service for app developers in a customer-managed environment",
"resource.type.arc.postgres.description": "Deploy PostgreSQL server groups into an Azure Arc environment",
"resource.type.picker.display.name": "Resource Type",
@@ -100,12 +100,23 @@
"arc.postgres.new.dialog.title": "Deploy a PostgreSQL server group on Azure Arc (preview)",
"arc.postgres.settings.section.title": "PostgreSQL server group settings",
"arc.postgres.settings.resource.title": "PostgreSQL server group resource settings",
"arc.postgres.settings.storage.title": "PostgreSQL server group storage settings",
"arc.postgres.server.group.name": "Server group name",
"arc.postgres.server.group.name.validation.description": "Server group name must consist of lower case alphanumeric characters or '-', start with a letter, end with an alphanumeric character, and be 10 characters or fewer in length.",
"arc.postgres.server.group.workers": "Number of workers",
"arc.postgres.server.group.port": "Port",
"arc.postgres.server.group.engine.version": "Engine Version",
"arc.postgres.server.group.extensions.label": "Extensions",
"arc.postgres.server.group.extensions.description": "A comma-separated list of the Postgres extensions that should be loaded on startup. Please refer to the postgres documentation for supported values.",
"arc.postgres.server.group.volume.size.data.label": "Volume Size GB (Data)",
"arc.postgres.server.group.volume.size.data.description": "Volume size for the storage class to be used for data",
"arc.postgres.server.group.volume.size.logs.label": "Volume Size GB (Logs)",
"arc.postgres.server.group.volume.size.logs.description": "Volume size for the storage class to be used for logs",
"arc.postgres.server.group.volume.size.backups.label": "Volume Size GB (Backups)",
"arc.postgres.server.group.volume.size.backups.description": "Volume size for the storage class to be used for backups",
"arc.postgres.server.group.cores.request": "Min CPU cores (per node) to reserve",
"arc.postgres.server.group.cores.limit": "Max CPU cores (per node) to allow",
"arc.postgres.server.group.cores.description": "Fractional cores are supported",
"arc.postgres.server.group.memory.request": "Min memory MB (per node) to reserve",
"arc.postgres.server.group.memory.limit": "Max memory MB (per node) to allow",
"arc.agreement": "I accept {0}, {1} and {2}.",