diff --git a/samples/sample-resource-deployment/images/book.svg b/samples/sample-resource-deployment/images/book.svg new file mode 100644 index 0000000000..bae52cfcc8 --- /dev/null +++ b/samples/sample-resource-deployment/images/book.svg @@ -0,0 +1,7 @@ + + Artboard 10 + + + + + diff --git a/samples/sample-resource-deployment/images/book_inverse.svg b/samples/sample-resource-deployment/images/book_inverse.svg new file mode 100644 index 0000000000..464b3d228b --- /dev/null +++ b/samples/sample-resource-deployment/images/book_inverse.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/samples/sample-resource-deployment/images/sqlserver.png b/samples/sample-resource-deployment/images/sqlserver.png new file mode 100644 index 0000000000..d884faa14a Binary files /dev/null and b/samples/sample-resource-deployment/images/sqlserver.png differ diff --git a/samples/sample-resource-deployment/notebooks/deploy-x-data-service-1.ipynb b/samples/sample-resource-deployment/notebooks/deploy-x-data-service-1.ipynb new file mode 100644 index 0000000000..1fd6a3753b --- /dev/null +++ b/samples/sample-resource-deployment/notebooks/deploy-x-data-service-1.ipynb @@ -0,0 +1,48 @@ +{ + "metadata": { + "kernelspec": { + "name": "python3", + "display_name": "Python 3" + }, + "language_info": { + "name": "python", + "version": "3.7.3", + "mimetype": "text/x-python", + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "pygments_lexer": "ipython3", + "nbconvert_exporter": "python", + "file_extension": ".py" + } + }, + "nbformat_minor": 2, + "nbformat": 4, + "cells": [ + { + "cell_type": "markdown", + "source": [ + "Deploy x data service" + ], + "metadata": { + "azdata_cell_guid": "23954d96-3932-4a8e-ab73-da605f99b1a4" + } + }, + { + "cell_type": "code", + "source": [ + "import os;\n", + "print('Welcome')\n", + "print(os.environ[\"AZDATA_NB_VAR_TEXT\"])\n", + "print(os.environ[\"AZDATA_NB_VAR_PASSWORD\"])\n", + "print(os.environ[\"AZDATA_NB_VAR_NUMBER\"])" + ], + "metadata": { + "azdata_cell_guid": "26fa8bc4-4b8e-4c31-ae11-50484821cea8" + }, + "outputs": [], + "execution_count": 2 + } + ] +} \ No newline at end of file diff --git a/samples/sample-resource-deployment/notebooks/deploy-x-data-service-2.ipynb b/samples/sample-resource-deployment/notebooks/deploy-x-data-service-2.ipynb new file mode 100644 index 0000000000..1fd6a3753b --- /dev/null +++ b/samples/sample-resource-deployment/notebooks/deploy-x-data-service-2.ipynb @@ -0,0 +1,48 @@ +{ + "metadata": { + "kernelspec": { + "name": "python3", + "display_name": "Python 3" + }, + "language_info": { + "name": "python", + "version": "3.7.3", + "mimetype": "text/x-python", + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "pygments_lexer": "ipython3", + "nbconvert_exporter": "python", + "file_extension": ".py" + } + }, + "nbformat_minor": 2, + "nbformat": 4, + "cells": [ + { + "cell_type": "markdown", + "source": [ + "Deploy x data service" + ], + "metadata": { + "azdata_cell_guid": "23954d96-3932-4a8e-ab73-da605f99b1a4" + } + }, + { + "cell_type": "code", + "source": [ + "import os;\n", + "print('Welcome')\n", + "print(os.environ[\"AZDATA_NB_VAR_TEXT\"])\n", + "print(os.environ[\"AZDATA_NB_VAR_PASSWORD\"])\n", + "print(os.environ[\"AZDATA_NB_VAR_NUMBER\"])" + ], + "metadata": { + "azdata_cell_guid": "26fa8bc4-4b8e-4c31-ae11-50484821cea8" + }, + "outputs": [], + "execution_count": 2 + } + ] +} \ No newline at end of file diff --git a/samples/sample-resource-deployment/package.json b/samples/sample-resource-deployment/package.json new file mode 100644 index 0000000000..aaa443feb7 --- /dev/null +++ b/samples/sample-resource-deployment/package.json @@ -0,0 +1,173 @@ +{ + "name": "sample-resource-deployment", + "displayName": "%extension-displayName%", + "description": "%extension-description%", + "version": "0.0.1", + "publisher": "Contoso", + "preview": true, + "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/master/LICENSE.txt", + "icon": "images/sqlserver.png", + "aiKey": "AIF-444c3af9-8e69-4462-ab49-4191e6ad1916", + "engines": { + "vscode": "*", + "azdata": ">1.10.0" + }, + "repository": { + "type": "git", + "url": "https://github.com/Microsoft/azuredatastudio.git" + }, + "extensionDependencies": [ + "microsoft.mssql", + "microsoft.notebook", + "microsoft.resource-deployment" + ], + "contributes": { + "resourceDeploymentTypes": [ + { + "name": "x-data-service", + "displayName": "%resource-type-display-name%", + "description": "%resource-type-description%", + "platforms": [ + "darwin", + "win32", + "linux" + ], + "icon": { + "light": "./images/book.svg", + "dark": "./images/book_inverse.svg" + }, + "options": [ + { + "name": "edition", + "displayName": "%option-display-name%", + "values": [ + { + "name": "evaluation", + "displayName": "%option-value-name-1%" + }, + { + "name": "standard", + "displayName": "%option-value-name-2%" + } + ] + } + ], + "providers": [ + { + "dialog": { + "notebook": "%deployment-notebook-1%", + "title": "%dialog-title-1%", + "name": "dialog1", + "tabs": [ + { + "title": "", + "sections": [ + { + "title": "", + "fields": [ + { + "label": "%text-field%", + "variableName": "AZDATA_NB_VAR_TEXT", + "type": "text", + "defaultValue": "abc", + "required": true + }, + { + "label": "%password-field%", + "variableName": "AZDATA_NB_VAR_PASSWORD", + "type": "password", + "confirmationRequired": true, + "confirmationLabel": "%confirm-password%", + "defaultValue": "", + "required": true + }, + { + "label": "%number-field%", + "variableName": "AZDATA_NB_VAR_NUMBER", + "type": "number", + "defaultValue": "100", + "required": true, + "min": 1, + "max": 65535 + } + ] + } + ] + } + ] + }, + "requiredTools": [ + { + "name": "kubectl" + } + ], + "when": "edition=evaluation" + }, + { + "dialog": { + "notebook": "%deployment-notebook-2%", + "title": "%dialog-title-2%", + "name": "dialog2", + "tabs": [ + { + "title": "", + "sections": [ + { + "title": "", + "fields": [ + { + "label": "%text-field%", + "variableName": "AZDATA_NB_VAR_TEXT", + "type": "text", + "defaultValue": "abc", + "required": true + }, + { + "label": "%password-field%", + "variableName": "AZDATA_NB_VAR_PASSWORD", + "type": "password", + "confirmationRequired": true, + "confirmationLabel": "%confirm-password%", + "defaultValue": "", + "required": true + }, + { + "label": "%number-field%", + "variableName": "AZDATA_NB_VAR_NUMBER", + "type": "number", + "defaultValue": "100", + "required": true, + "min": 1, + "max": 65535 + } + ] + } + ] + } + ] + }, + "requiredTools": [ + { + "name": "docker" + } + ], + "when": "edition=standard" + } + ], + "agreement": { + "template": "%agreement%", + "links": [ + { + "text": "%agreement-1-name%", + "url": "https://www.microsoft.com" + }, + { + "text": "%agreement-2-name%", + "url": "https://portal.azure.com" + } + ] + } + } + ] + } +} diff --git a/samples/sample-resource-deployment/package.nls.json b/samples/sample-resource-deployment/package.nls.json new file mode 100644 index 0000000000..fce5465b73 --- /dev/null +++ b/samples/sample-resource-deployment/package.nls.json @@ -0,0 +1,20 @@ +{ + "extension-displayName": "Sample resource deployment extension for Azure Data Studio", + "extension-description": "You can contribute a resource deployment type without any coding", + "resource-type-display-name": "X Data Service", + "resource-type-description": "X Data Service provides a full set of features...", + "option-display-name": "Edition", + "option-value-name-1": "Evaluation", + "option-value-name-2": "Standard", + "dialog-title-1": "Start Evaluation of X Data Service", + "dialog-title-2": "Deploy X Data Service", + "deployment-notebook-1": "./notebooks/deploy-x-data-service-1.ipynb", + "deployment-notebook-2": "./notebooks/deploy-x-data-service-2.ipynb", + "text-field": "text field", + "password-field": "password field", + "number-field": "numeric field", + "confirm-password": "confirm password", + "agreement": "I accept {0} and {1}.", + "agreement-1-name": "Agreement 1", + "agreement-2-name": "Agreement 2" +}