Skip to content

Commit 63f6cfa

Browse files
authored
Merge pull request #17504 from chugugrace/cicd
standalone SSIS DevOps Tools
2 parents 7d393a0 + a309566 commit 63f6cfa

5 files changed

Lines changed: 144 additions & 1 deletion

File tree

6.36 KB
Loading
3.65 KB
Loading

docs/integration-services/devops/ssis-devops-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ms.technology: integration-services
1010
author: chugugrace
1111
ms.author: chugu
1212
---
13-
# SQL Server Integration Services (SSIS) DevOps Tools
13+
# SQL Server Integration Services (SSIS) DevOps Tools Azure DevOps extension
1414

1515
[SSIS DevOps Tools](https://marketplace.visualstudio.com/items?itemName=SSIS.ssis-devops-tools) extension is available in **Azure DevOps** Marketplace.
1616

Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
---
2+
title: "Standalone SQL Server Integration Services (SSIS) DevOps Tools | Microsoft Docs"
3+
description: Learn how to build SSIS CICD with standalone SSIS DevOps Tools.
4+
ms.date: "10/16/2020"
5+
ms.topic: conceptual
6+
ms.prod: sql
7+
ms.prod_service: "integration-services"
8+
ms.custom: ""
9+
ms.technology: integration-services
10+
author: chugugrace
11+
ms.author: chugu
12+
---
13+
# Standalone SQL Server Integration Service (SSIS) DevOps Tools (Preview)
14+
15+
Standalone **SSIS DevOps Tools** provide a set of executables to do SSIS CICD tasks. Without the dependency on the installation of Visual Studio or SSIS runtime, these executables can be easily integrated with any CICD platform. The executables provided are:
16+
17+
- SSISBuild.exe: build SSIS projects in project deployment model or package deployment model.
18+
- SSISDeploy.exe: deploy ISPAC files to SSIS catalog, or DTSX files and their dependencies to file system.
19+
20+
## Installation
21+
22+
.NET framework 4.6.2 or higher is required.
23+
24+
Download the latest installer from [download center](https://aka.ms/AA9xp65), then install via wizard or command line:
25+
26+
- Install via wizard
27+
28+
Double-click the .exe file to install, then specify a folder to extract the executables and dependency files.
29+
30+
![Installation location](media/installation-location.png)
31+
32+
- Install via command line
33+
34+
```
35+
SSISDevOpsTools.exe /Q /C /T:<full path>
36+
```
37+
38+
![Installation command ine](media/installation-command-line.png)
39+
40+
41+
## SSISBuild.exe
42+
43+
**Syntax**
44+
45+
```
46+
SSISBuild.exe -project|-p:<dtproj file path> [-configuration|-c:<configuration name>] [-projectPassword|-pp:<project password>] [-stripSensitive|-ss] [-output|-o:<output path>] [-log|-l:<log level>[;<log path>]] [-quiet|-q] [-help|-h|-?]
47+
```
48+
49+
**Parameters**
50+
51+
|Parameter|Description|
52+
|---------|---------|
53+
|-project \|-p:\<dtproj file path>|File path of the dtproj file to be built.|
54+
|-configuration\|-c:\<configuration name>|Name of the project configuration to be used for build. If not supplied, it defaults to the first defined project configuration in the dtproj file.|
55+
|-projectPassword\|-pp:\<project password>|Password of the SSIS project and its packages. This argument is only valid when the protection level of the SSIS project and packages is EncryptSensitiveWithPassword or EncryptAllWithPassword. For package deployment model, all packages must share the same password specified by this argument.|
56+
|-stripSensitive\|-ss|Convert the protection level of the SSIS project to DontSaveSensitve. When protection level is EncryptSensitiveWithPassword or EncryptAllWithPassword, the argument -projectPassword must be correctly set. This option is only valid for project deployment model.|
57+
|-output\|-o:\<output path>|Output path of the build artifact. The value of this argument will overwrite the default output path in the project configuration.|
58+
|-log\|-l:\<log level>[;\<log path>]|Log related settings. <li>log level: Only logs with equal or higher logging level will be written to the log file. There are four logging levels (from low to high): DIAG, INFO, WRN, ERR. The default logging level is INFO if it's not specified. <li> log path: Path of the file to persist logs. Log file will not be generated if the path is not specified.|
59+
|-quiet\|-q|Do not display any logs to the standard output.|
60+
|-help\|-h\|-?|Show detailed usage information of this command-line utility.|
61+
62+
**Examples**
63+
64+
- Build a dtproj with the first defined project configuration, not encrypted with password:
65+
```
66+
SSISBuild.exe -p:"C:\projects\demo\demo.dtproj"
67+
```
68+
69+
- Build a dtproj with configuration "DevConfiguration", encrypted with password, and output the build artifacts to a specific folder:
70+
```
71+
SSISBuild.exe -p:C:\projects\demo\demo.dtproj -c:DevConfiguration -pp:encryptionpassword -o:D:\folder
72+
```
73+
74+
- Build a dtproj with configuration "DevConfiguration", encrypted with password, striping its sensitive data, and log level DIAG:
75+
```
76+
SSISBuild.exe -p:C:\projects\demo\demo.dtproj -c:DevConfiguration -pp:encryptionpassword -ss -l:diag
77+
```
78+
79+
## SSISDeploy.exe
80+
81+
**Syntax**
82+
83+
```
84+
SSISDeploy.exe -source|-s:<source path> -destination|-d:<type>;<path>[;server] [-authType|-at:<auth type name>] [-connectionStringSuffix|-css:<connection string suffix>] [-projectPassword|-pp:<project password>] [-username|-u:<username>] [-password|-p:<password>] [-log|-l:<log level>[;<log path>]] [-quiet|-q] [-help|-h|-?]
85+
```
86+
87+
**Parameters**
88+
89+
|Parameter|Description|
90+
|---------|---------|
91+
|-source\|-s:\<source path>|Local file path of artifacts to be deployed. Path of folder, ISPAC, DTSX, SSISDeploymentManfiest are allowed.|
92+
|-destination\|-d:\<type>;\<path>[;server]|Destination type, path of the destination folder, and server name of the SSIS catalog where the source file will be deployed to. Currently we support following two destination types: <li> *CATALOG*: deploy single or multiple ISPAC files to the specified SSIS catalog. The path of CATALOG destination should be in such format: <br> /SSISDB/\<folder name>[/\<project name>] <br> The optional <project name> is only valid when the source specifies a single ISPAC file path. Server name must be specified for CATALOG destination. <li> *FILE*: deploy SSIS packages or files specified in a single or multiple SSISDeploymentManifest files to the specified path of the file system. The path of FILE destination can be a local folder path or a network folder path in such format: <br>\\\\\<machine name>\\\<folder name>[\\\<sub folder name>\...]|
93+
|-authType\|-at:\<auth type name>|Authentication type to access SQL Server. Mandatory for CATALOG destination. Following types are supported: <li> WIN: Windows Authentication <li> SQL: SQL Server Authentication <li> ADPWD: Active Directory - Password <li> ADINT: Active Directory - Integrated|
94+
|-connectionStringSuffix\|-css:\<connection string suffix> |Suffix of the connection string, which is used to connect to the SSIS catalog.|
95+
|-projectPassword\|-pp:\<project password> |Password to decrypt the ISPAC or DTSX files.|
96+
|-username\|-u:\<username> |Username to access the specified SSIS catalog or file system. Prefix with domain name is allowed for file system access.|
97+
|-password\|-p:\<password> |Password to access the specified SSIS catalog or file system.|
98+
|-log\|-l:\<log level>[;\<log path>] |Log related settings for running this utility. <li> log level: Only logs with equal or higher logging level will be written to the log file. There are four logging levels (from low to high): DIAG, INFO, WRN, ERR. The default logging level is INFO if it's not specified. <li> log path: Path of the file to persist logs. Log file will not be generated if the path is not specified.|
99+
|-quiet\|-q |Do not display logs to the standard output.|
100+
|-help\|-h\|-? |Show detailed usage information of this command-line utility.|
101+
102+
**Examples**
103+
104+
- Deploy a single ISPAC not encrypted with password to SSIS catalog with Windows authentication.
105+
```
106+
SSISDeploy.exe -s:D:\myfolder\demo.ispac -d:catalog;/SSISDB/destfolder;myssisserver -at:win
107+
```
108+
109+
- Deploy a single ISPAC encrypted with password to SSIS catalog with SQL authentication, and rename the project name.
110+
```
111+
SSISDeploy.exe -s:D:\myfolder\test.ispac -d:catalog;/SSISDB/folder/testproj;myssisserver -at:sql -u:sqlusername -p:sqlpassword -pp:encryptionpassword
112+
```
113+
114+
- Deploy ISPAC files from a folder that are encrypted with a same password to SSIS catalog with Windows authentication, and append TrustServerCertificate=True to the connection string.
115+
```
116+
SSISDeploy.exe -s:D:\myfolder -d:catalog;/SSISDB/folder;myssisserver -at:win -css:TrustServerCertificate=True -pp:encryptionpassword
117+
```
118+
119+
- Deploy a single SSISDeploymentManifest and its associated files to Azure file share.
120+
```
121+
SSISDeploy.exe -s:D:\myfolder\mypackage.SSISDeploymentManifest -d:file;\\myssisshare.file.core.windows.net\destfolder -u:Azure\myssisshare -p:storagekey
122+
```
123+
124+
- Deploy a folder of DTSX files to on-premises file system.
125+
```
126+
SSISDeploy.exe -s:D:\myfolder -d:file;\\myssisshare\destfolder
127+
```
128+
129+
## Release notes
130+
131+
### Version 0.1.0 Preview
132+
133+
Release Date: October 16, 2020
134+
135+
Initial preview release of standalone SSIS DevOps Tools.
136+
137+
## Next steps
138+
139+
- Get [standalone SSIS DevOps Tools](https://aka.ms/AA9xp65)
140+
- If you have questions, visit [Q&A](https://marketplace.visualstudio.com/items?itemName=SSIS.ssis-devops-tools&ssr=false#qna)

docs/integration-services/toc.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,9 @@
8484
href: ../integration-services/integration-services-ssis-projects-and-solutions.md
8585
- name: SSIS DevOps
8686
href: ../integration-services/devops/ssis-devops-overview.md
87+
items:
88+
- name: Standalone SSIS DevOps Tools
89+
href: ../integration-services/devops/ssis-devops-standalone.md
8790
- name: User interface
8891
href: ../integration-services/integration-services-user-interface.md
8992
items:

0 commit comments

Comments
 (0)