Skip to content

Commit 34a1e89

Browse files
authored
Merge pull request #88391 from swinarko/patch-48
Update how-to-invoke-ssis-package-ssis-activity.md
2 parents c900013 + d449a1c commit 34a1e89

File tree

1 file changed

+104
-23
lines changed

1 file changed

+104
-23
lines changed

articles/data-factory/how-to-invoke-ssis-package-ssis-activity.md

Lines changed: 104 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.workload: data-services
88
ms.tgt_pltfrm:
99
ms.devlang: powershell
1010
ms.topic: conceptual
11-
ms.date: 07/01/2019
11+
ms.date: 09/13/2019
1212
author: swinarko
1313
ms.author: sawinark
1414
ms.reviewer: douglasl
@@ -47,8 +47,8 @@ In this step, you use ADF UI/app to create a pipeline. You add an Execute SSIS P
4747

4848
4. On the **Settings** tab for Execute SSIS Package activity, select an Azure-SSIS IR where you want to run your package. If your package uses Windows authentication to access data stores, e.g. SQL Servers/file shares on premises, Azure Files, etc., check the **Windows authentication** checkbox and enter the values for your package execution credentials (**Domain**/**Username**/**Password**). Alternatively, you can use secrets stored in your Azure Key Vault (AKV) as their values. To do so, click on the **AZURE KEY VAULT** checkbox next to the relevant credential, select/edit your existing AKV linked service or create a new one, and then select the secret name/version for your credential value. When you create/edit your AKV linked service, you can select/edit your existing AKV or create a new one, but please grant ADF managed identity access to your AKV if you have not done so already. You can also enter your secrets directly in the following format: `<AKV linked service name>/<secret name>/<secret version>`. If your package needs 32-bit runtime to run, check the **32-Bit runtime** checkbox.
4949

50-
For **Package location**, select **SSISDB**, **File System (Package)**, or **File System (Project)**. If you select **SSISDB** as your package location, which is automatically selected if your Azure-SSIS IR was provisioned with SSIS catalog (SSISDB) hosted by Azure SQL Database server/Managed Instance, you need to specify your package to run that has been deployed into SSISDB. If your Azure-SSIS IR is running and the **Manual entries** checkbox is unchecked, you can browse and select your existing folders/projects/packages/environments from SSISDB. Click the **Refresh** button to fetch your newly added folders/projects/packages/environments from SSISDB, so they are available for browsing and selection.
51-
50+
For **Package location**, select **SSISDB**, **File System (Package)**, or **File System (Project)**. If you select **SSISDB** as your package location, which is automatically selected if your Azure-SSIS IR was provisioned with SSIS catalog (SSISDB) hosted by Azure SQL Database server/Managed Instance, you need to specify your package to run that has been deployed into SSISDB. If your Azure-SSIS IR is running and the **Manual entries** checkbox is unchecked, you can browse and select your existing folders/projects/packages/environments from SSISDB. Click the **Refresh** button to fetch your newly added folders/projects/packages/environments from SSISDB, so they are available for browsing and selection. To browse/select the environments for your package executions, you must configure your projects beforehand to add those environments as references from the same folders under SSISDB. For more info, see [Creating/mapping SSIS environments](https://docs.microsoft.com/sql/integration-services/create-and-map-a-server-environment?view=sql-server-2014).
51+
5252
For **Logging level**, select a predefined scope of logging for your package execution. Check the **Customized** checkbox, if you want to enter your customized logging name instead.
5353

5454
![Set properties on the Settings tab - Automatic](media/how-to-invoke-ssis-package-ssis-activity/ssis-activity-settings.png)
@@ -156,42 +156,43 @@ In this step, you create a pipeline with an Execute SSIS Package activity. The a
156156
1. Create a JSON file named **RunSSISPackagePipeline.json** in the **C:\ADF\RunSSISPackage** folder with content similar to the following example:
157157

158158
> [!IMPORTANT]
159-
> Replace object names, descriptions, and paths, property and parameter values, passwords, and other variable values before saving the file.
159+
> Replace object names/descriptions/paths, property/parameter values, passwords, and other variable values before saving the file.
160160
161161
```json
162162
{
163163
"name": "RunSSISPackagePipeline",
164164
"properties": {
165165
"activities": [{
166-
"name": "mySSISActivity",
166+
"name": "MySSISActivity",
167167
"description": "My SSIS package/activity description",
168168
"type": "ExecuteSSISPackage",
169169
"typeProperties": {
170170
"connectVia": {
171-
"referenceName": "myAzureSSISIR",
171+
"referenceName": "MyAzureSSISIR",
172172
"type": "IntegrationRuntimeReference"
173173
},
174174
"executionCredential": {
175-
"domain": "MyDomain",
176-
"userName": "MyUsername",
175+
"domain": "MyExecutionDomain",
176+
"username": "MyExecutionUsername",
177177
"password": {
178178
"type": "SecureString",
179-
"value": "**********"
179+
"value": "MyExecutionPassword"
180180
}
181181
},
182182
"runtime": "x64",
183183
"loggingLevel": "Basic",
184184
"packageLocation": {
185-
"packagePath": "FolderName/ProjectName/PackageName.dtsx"
185+
"packagePath": "MyFolder/MyProject/MyPackage.dtsx",
186+
"type": "SSISDB"
186187
},
187-
"environmentPath": "FolderName/EnvironmentName",
188+
"environmentPath": "MyFolder/MyEnvironment",
188189
"projectParameters": {
189190
"project_param_1": {
190191
"value": "123"
191192
},
192193
"project_param_2": {
193194
"value": {
194-
"value": "@pipeline().parameters.MyPipelineParameter",
195+
"value": "@pipeline().parameters.MyProjectParameter",
195196
"type": "Expression"
196197
}
197198
}
@@ -207,40 +208,40 @@ In this step, you create a pipeline with an Execute SSIS Package activity. The a
207208
"referenceName": "myAKV",
208209
"type": "LinkedServiceReference"
209210
},
210-
"secretName": "MySecret"
211+
"secretName": "MyPackageParameter"
211212
}
212213
}
213214
},
214215
"projectConnectionManagers": {
215216
"MyAdonetCM": {
216-
"userName": {
217-
"value": "sa"
217+
"username": {
218+
"value": "MyConnectionUsername"
218219
},
219-
"passWord": {
220+
"password": {
220221
"value": {
221222
"type": "SecureString",
222-
"value": "abc"
223+
"value": "MyConnectionPassword"
223224
}
224225
}
225226
}
226227
},
227228
"packageConnectionManagers": {
228229
"MyOledbCM": {
229-
"userName": {
230+
"username": {
230231
"value": {
231-
"value": "@pipeline().parameters.MyUsername",
232+
"value": "@pipeline().parameters.MyConnectionUsername",
232233
"type": "Expression"
233234
}
234235
},
235-
"passWord": {
236+
"password": {
236237
"value": {
237238
"type": "AzureKeyVaultSecret",
238239
"store": {
239240
"referenceName": "myAKV",
240241
"type": "LinkedServiceReference"
241242
},
242-
"secretName": "MyPassword",
243-
"secretVersion": "3a1b74e361bf4ef4a00e47053b872149"
243+
"secretName": "MyConnectionPassword",
244+
"secretVersion": "MyConnectionPasswordVersion"
244245
}
245246
}
246247
}
@@ -262,6 +263,86 @@ In this step, you create a pipeline with an Execute SSIS Package activity. The a
262263
}
263264
```
264265

266+
To execute packages stored in file systems/file shares/Azure Files, you can enter the values for your package/log location properties as follows.
267+
268+
```json
269+
{
270+
{
271+
{
272+
{
273+
"packageLocation": {
274+
"packagePath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyPackage.dtsx",
275+
"type": "File",
276+
"typeProperties": {
277+
"packagePassword": {
278+
"type": "SecureString",
279+
"value": "MyEncryptionPassword"
280+
},
281+
"accessCredential": {
282+
"domain": "Azure",
283+
"username": "MyStorageAccount",
284+
"password": {
285+
"type": "SecureString",
286+
"value": "MyAccountKey"
287+
}
288+
}
289+
}
290+
},
291+
"logLocation": {
292+
"logPath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyLogFolder",
293+
"type": "File",
294+
"typeProperties": {
295+
"accessCredential": {
296+
"domain": "Azure",
297+
"username": "MyStorageAccount",
298+
"password": {
299+
"type": "AzureKeyVaultSecret",
300+
"store": {
301+
"referenceName": "myAKV",
302+
"type": "LinkedServiceReference"
303+
},
304+
"secretName": "MyAccountKey"
305+
}
306+
}
307+
}
308+
}
309+
}
310+
}
311+
}
312+
}
313+
```
314+
315+
To execute packages within projects stored in file systems/file shares/Azure Files, you can enter the values for your package location property as follows.
316+
317+
```json
318+
{
319+
{
320+
{
321+
{
322+
"packageLocation": {
323+
"packagePath": "//MyStorageAccount.file.core.windows.net/MyFileShare/MyProject.ispac:MyPackage.dtsx",
324+
"type": "File",
325+
"typeProperties": {
326+
"packagePassword": {
327+
"type": "SecureString",
328+
"value": "MyEncryptionPassword"
329+
},
330+
"accessCredential": {
331+
"domain": "Azure",
332+
"userName": "MyStorageAccount",
333+
"password": {
334+
"type": "SecureString",
335+
"value": "MyAccountKey"
336+
}
337+
}
338+
}
339+
}
340+
}
341+
}
342+
}
343+
}
344+
```
345+
265346
2. In Azure PowerShell, switch to the `C:\ADF\RunSSISPackage` folder.
266347

267348
3. To create the pipeline **RunSSISPackagePipeline**, run the **Set-AzDataFactoryV2Pipeline** cmdlet.
@@ -385,4 +466,4 @@ In the previous step, you ran the pipeline on-demand. You can also create a sche
385466

386467
## Next steps
387468
See the following blog post:
388-
- [Modernize and extend your ETL/ELT workflows with SSIS activities in ADF pipelines](https://blogs.msdn.microsoft.com/ssis/2018/05/23/modernize-and-extend-your-etlelt-workflows-with-ssis-activities-in-adf-pipelines/)
469+
- [Modernize and extend your ETL/ELT workflows with SSIS activities in ADF pipelines](https://techcommunity.microsoft.com/t5/SQL-Server-Integration-Services/Modernize-and-Extend-Your-ETL-ELT-Workflows-with-SSIS-Activities/ba-p/388370)

0 commit comments

Comments
 (0)