From ac46263d530ef85bae2d611e77ae63f2797897f4 Mon Sep 17 00:00:00 2001 From: Yandong Zhang Date: Fri, 17 Aug 2018 14:52:37 +0800 Subject: [PATCH 1/3] Add two API-s to integration runtime --- .../stable/2018-06-01/datafactory.json | 122 ++++++++++++++++++ .../examples/IntegrationRuntimeNodes_Get.json | 42 ++++++ ...ntimes_CreateLinkedIntegrationRuntime.json | 94 ++++++++++++++ 3 files changed, 258 insertions(+) create mode 100644 specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimeNodes_Get.json create mode 100644 specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index ae4c17c24a76..37081cdccf7a 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -1113,7 +1113,107 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/integrationRuntimes/{integrationRuntimeName}/linkedIntegrationRuntime": { + "post": { + "tags": [ + "integrationRuntimes" + ], + "operationId": "IntegrationRuntimes_CreateLinkedIntegrationRuntime", + "x-ms-examples": { + "IntegrationRuntimes_CreateLinkedIntegrationRuntime": { + "$ref": "./examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json" + } + }, + "description": "Create a linked integration runtime entry in a shared integration runtime.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/factoryName" + }, + { + "$ref": "#/parameters/integrationRuntimeName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "CreateLinkedIntegrationRuntimeRequest", + "description": "The linked integration runtime properties.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CreateLinkedIntegrationRuntimeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeStatusResponse" + } + }, + "default": { + "description": "An error response received from the Azure Data Factory service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/integrationRuntimes/{integrationRuntimeName}/nodes/{nodeName}": { + "get": { + "tags": [ + "integrationRuntimeNodes" + ], + "operationId": "IntegrationRuntimeNodes_Get", + "x-ms-examples": { + "IntegrationRuntimeNodes_Get": { + "$ref": "./examples/IntegrationRuntimeNodes_Get.json" + } + }, + "description": "Gets a self-hosted integration runtime node.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/factoryName" + }, + { + "$ref": "#/parameters/integrationRuntimeName" + }, + { + "$ref": "#/parameters/nodeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./entityTypes/IntegrationRuntime.json#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "default": { + "description": "An error response received from the Azure Data Factory service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, "delete": { "tags": [ "integrationRuntimeNodes" @@ -2783,6 +2883,28 @@ "factoryName" ] }, + "CreateLinkedIntegrationRuntimeRequest": { + "description": "The linked integration runtime information.", + "type": "object", + "properties": { + "name": { + "description": "The name of the linked integration runtime.", + "type": "string" + }, + "subscriptionId": { + "description": "The subscription ID for which the linked integration runtime belong to.", + "type": "string" + }, + "dataFactoryName": { + "description": "The name of the data factory for which the linked integration runtime belong to.", + "type": "string" + }, + "dataFactoryLocation": { + "description": "The location of the data factory for which the linked integration runtime belong to.", + "type": "string" + } + } + }, "LinkedServiceListResponse": { "description": "A list of linked service resources.", "type": "object", diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimeNodes_Get.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimeNodes_Get.json new file mode 100644 index 000000000000..f4a230fc01d7 --- /dev/null +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimeNodes_Get.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "factoryName": "exampleFactoryName", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "headers": { + "Date": "Fri, 17 Aug 2018 06:31:04 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "1c8b259a-c6e6-48aa-8121-05b3b3b782aa", + "x-ms-correlation-request-id": "1c8b259a-c6e6-48aa-8121-05b3b3b782aa" + }, + "body": { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6743.6", + "registerTime": "2018-08-17T03:44:55.8012825Z", + "lastConnectTime": "2018-08-17T06:30:46.6262976Z", + "lastStartTime": "2018-08-17T03:45:30.8499851Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "maxConcurrentJobs": 20 + } + } + } +} \ No newline at end of file diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json new file mode 100644 index 000000000000..364ddbc9efdc --- /dev/null +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "factoryName": "exampleFactoryName", + "integrationRuntimeName": "exampleIntegrationRuntime", + "createLinkedIntegrationRuntimeRequest": { + "name": "bfa92911-9fb6-4fbe-8f23-beae87bc1c83", + "subscriptionId": "061774c7-4b5a-4159-a55b-365581830283", + "dataFactoryName": "e9955d6d-56ea-4be3-841c-52a12c1a9981", + "dataFactoryLocation": "West US" + }, + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "headers": { + "Date": "Fri, 17 Aug 2018 06:31:03 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "f9a67067-62f3-43ce-b891-2ccb3de4a15f", + "x-ms-correlation-request-id": "f9a67067-62f3-43ce-b891-2ccb3de4a15f" + }, + "body": { + "name": "exampleIntegrationRuntime", + "properties": { + "dataFactoryName": "exampleFactoryName", + "state": "Online", + "type": "SelfHosted", + "typeProperties": { + "autoUpdate": "On", + "nodeCommunicationChannelEncryptionMode": "None", + "taskQueueId": "823da112-f2d9-426b-a0d8-5f361b94f72a", + "version": "3.8.6743.6", + "nodes": [ + { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6743.6", + "registerTime": "2018-08-17T03:44:55.8012825Z", + "lastConnectTime": "2018-08-17T06:30:46.6262976Z", + "lastStartTime": "2018-08-17T03:45:30.8499851Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "maxConcurrentJobs": 20 + } + ], + "scheduledUpdateDate": "2018-08-20T00:00:00Z", + "updateDelayOffset": "PT19H", + "localTimeZoneOffset": "PT8H", + "serviceUrls": [ + "wu.frontend.int.clouddatahub-int.net", + "*.servicebus.windows.net" + ], + "links": [ + { + "id": "46873b96-d86d-4203-bef7-60e6bef8678b", + "name": "bfa92911-9fb6-4fbe-8f23-beae87bc1c83", + "subscriptionId": "061774c7-4b5a-4159-a55b-365581830283", + "dataFactoryName": "e9955d6d-56ea-4be3-841c-52a12c1a9981", + "dataFactoryLocation": "West US", + "createTime": "2018-08-17T06:31:04.0617928Z" + } + ], + "versionStatus": "UpdateAvailable", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "pushedVersion": "3.9.6774.1", + "latestVersion": "3.9.6774.1", + "autoUpdateETA": "2018-08-20T19:00:00Z", + "state": "Online", + "createTime": "2018-08-17T03:43:25.7055573Z", + "key": "***" + } + } + } + } + } +} \ No newline at end of file From 43e82243c77750188200ef16df385cecd49ff652 Mon Sep 17 00:00:00 2001 From: Yandong Zhang Date: Tue, 21 Aug 2018 11:23:07 +0800 Subject: [PATCH 2/3] Fixed model validation error for the new APIs --- .../stable/2018-06-01/datafactory.json | 2 +- .../stable/2018-06-01/entityTypes/IntegrationRuntime.json | 7 +++++++ ...IntegrationRuntimes_CreateLinkedIntegrationRuntime.json | 6 +----- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index 37081cdccf7a..4b0bf73d7e4f 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -1142,7 +1142,7 @@ "$ref": "#/parameters/api-version" }, { - "name": "CreateLinkedIntegrationRuntimeRequest", + "name": "createLinkedIntegrationRuntimeRequest", "description": "The linked integration runtime properties.", "in": "body", "required": true, diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json index 42ee80c8959d..4efad3ae9660 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/entityTypes/IntegrationRuntime.json @@ -625,6 +625,12 @@ "description": "The latest version on download center.", "type": "string", "readOnly": true + }, + "autoUpdateETA": { + "description": "The estimated time when the self-hosted integration runtime will be updated.", + "type": "string", + "format": "date-time", + "readOnly": true } } }, @@ -761,6 +767,7 @@ "description": "The result of the last integration runtime node update.", "type": "string", "enum": [ + "None", "Succeed", "Fail" ], diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json index 364ddbc9efdc..c0156b47ab3b 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/IntegrationRuntimes_CreateLinkedIntegrationRuntime.json @@ -29,7 +29,6 @@ "type": "SelfHosted", "typeProperties": { "autoUpdate": "On", - "nodeCommunicationChannelEncryptionMode": "None", "taskQueueId": "823da112-f2d9-426b-a0d8-5f361b94f72a", "version": "3.8.6743.6", "nodes": [ @@ -64,7 +63,6 @@ ], "links": [ { - "id": "46873b96-d86d-4203-bef7-60e6bef8678b", "name": "bfa92911-9fb6-4fbe-8f23-beae87bc1c83", "subscriptionId": "061774c7-4b5a-4159-a55b-365581830283", "dataFactoryName": "e9955d6d-56ea-4be3-841c-52a12c1a9981", @@ -83,9 +81,7 @@ "pushedVersion": "3.9.6774.1", "latestVersion": "3.9.6774.1", "autoUpdateETA": "2018-08-20T19:00:00Z", - "state": "Online", - "createTime": "2018-08-17T03:43:25.7055573Z", - "key": "***" + "createTime": "2018-08-17T03:43:25.7055573Z" } } } From 5c8e79e5018783b5e2c0c119c72cd64dc0194fba Mon Sep 17 00:00:00 2001 From: Yandong Zhang Date: Wed, 22 Aug 2018 09:47:45 +0800 Subject: [PATCH 3/3] Improve the properties description per to review comments --- .../stable/2018-06-01/datafactory.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index 4b0bf73d7e4f..dac8a05b8175 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -2892,15 +2892,15 @@ "type": "string" }, "subscriptionId": { - "description": "The subscription ID for which the linked integration runtime belong to.", + "description": "The ID of the subscription that the linked integration runtime belongs to.", "type": "string" }, "dataFactoryName": { - "description": "The name of the data factory for which the linked integration runtime belong to.", + "description": "The name of the data factory that the linked integration runtime belongs to.", "type": "string" }, "dataFactoryLocation": { - "description": "The location of the data factory for which the linked integration runtime belong to.", + "description": "The location of the data factory that the linked integration runtime belongs to.", "type": "string" } }