Skip to content

Commit

Permalink
Typos, licensing and md fixing
Browse files Browse the repository at this point in the history
  • Loading branch information
Mario Majcica committed May 18, 2018
1 parent db12e7b commit 2916d26
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 44 deletions.
83 changes: 44 additions & 39 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,67 +1,70 @@
# Deploy SSIS Task
### Overview

## Overview

This extension will add a Build/Release task in your TFS/VSTS instance that will allow you to deploy Microsoft SQL Server Integration Services packages.
Aside of deploying packages it will also enable you to supply a list in form of an xml or json file in which you will be able to specify the SSIS Environments and environment variables. Optionally, environments can be mapped via the configuration file to your projects.

### Requirements
## Requirements

For this task to run you will need "Microsoft.SqlServer.Smo", "Microsoft.SqlServer.Management.IntegrationServices" and related libraries registered in GAC. This libraries are usually added by installing Microsoft SQL Server Data Tools (SSDT) on your agent server.

### The different parameters of the task are explained below:
The different parameters of the task are explained below:

* **ISPAC file(s)**: Specify the location of your Integration Service packages (ISPAC files). Wildcards can be used. For example, `**\\*.ispac` for all ispac files in all sub folders."
* **Server Name**: Provide the SQL Server name like, machinename\\FabriakmSQL,1433 or localhost or .\\SQL2012R2. Specifying localhost will connect to the Default SQL Server instance on the machine.
* **Authentication**: Select the authentication mode for connecting to the SQL Server. In Windows authentication mode, build service account, is used to connect to the SQL Server. In SQL Server Authentication mode, the SQL login and Password have to be provided in the parameters below.
* **SQL User name**: Provide the SQL login to connect to the SQL Server. The option is only available if SQL Server Authentication mode has been selected.
* **SQL User name**: Provide the SQL login to connect to the SQL Server. The option is only available if SQL Server Authentication mode has been selected.
* **SQL Password**: Provide the Password of the SQL login. The option is only available if SQL Server Authentication mode has been selected.
* **Shared Catalog**: If not selected, prior the deployment of your packages, the catalog will be dropped. If marked as shared (e.g. in case it is used by other applications), the catalog will not be dropped and extra checks will be made during the deployment. In case you marked your catalog as shared but no catalog is present on the server, a new catalog will be created with a catalog password equal to 'P@ssw0rd'
* **Drop project before deploy**: If selected, before deploying your SSIS package, the corresponding project on the server will be dropped. By default is set to true.
* **Catalog Password**: Catalog password protects the database master key that is used for encrypting the catalog data. Save the password in a secure location. It is recommended that you also back up the database master key. This option is only available if Shared Catalog is not set.
* **SSIS folder Name**: Folder name in the SSIS Package Store.
* **Environment configuration file**: Path to the configuration file. Wildcards are not allowed.

### Example of the configuration file
## Example of the configuration file

Following an example of the configuration file.

```
```xml
<?xml version="1.0" encoding="UTF-8" ?>
<environments>
<environment>
<name>MyEnv</name>
<description>My Environments</description>
<ReferenceOnProjects>
<Project Name="BusinessDataVault" />
<Project Name="Configuration" />
</ReferenceOnProjects>
<variables>
<variable>
<name>CLIENTToDropbox</name>
<type>Boolean</type>
<value>1</value>
<sensitive>false</sensitive>
<description></description>
</variable>
<variable>
<name>InitialCatalog</name>
<type>String</type>
<value>DV</value>
<sensitive>false</sensitive>
<description>Initial Catalog</description>
</variable>
<variable>
<name>MaxFilesToLoad</name>
<type>Int32</type>
<value>5</value>
<sensitive>false</sensitive>
<description>Max Files To Load by dispatcher </description>
</variable>
</variables>
</environment>
<environment>
<name>MyEnv</name>
<description>My Environments</description>
<ReferenceOnProjects>
<Project Name="BusinessDataVault" />
<Project Name="Configuration" />
</ReferenceOnProjects>
<variables>
<variable>
<name>CLIENTToDropbox</name>
<type>Boolean</type>
<value>1</value>
<sensitive>false</sensitive>
<description></description>
</variable>
<variable>
<name>InitialCatalog</name>
<type>String</type>
<value>DV</value>
<sensitive>false</sensitive>
<description>Initial Catalog</description>
</variable>
<variable>
<name>MaxFilesToLoad</name>
<type>Int32</type>
<value>5</value>
<sensitive>false</sensitive>
<description>Max Files To Load by dispatcher </description>
</variable>
</variables>
</environment>
</environments>
```

As you can see, you need to define an environment element which contains name and description. In ReferenceOnProjects element you will need to list all of the projects on which the current environment needs to be reference to. Under variables you need to enlist all of the variables that you would like to be added to your environment. Variable elements are following:

* name - The name of the variable
* type - The type of the variable. A string matching any of the enum elements in System.TypeCode
* value - The value of the variable
Expand All @@ -70,7 +73,7 @@ As you can see, you need to define an environment element which contains name an

The same values can be passed in also as a json file with the following structure:

```
```json
[
{
"name": "MyEnv",
Expand Down Expand Up @@ -104,7 +107,9 @@ The same values can be passed in also as a json file with the following structur
```

## Release notes
1.0.4 - Added 'Drop project before deploy' option [#2](https://github.com/mmajcica/DeploySsis/issues/2)

* 1.0.6 - Minor adjustments. No changes to the task.
* 1.0.4 - Added 'Drop project before deploy' option [#2](https://github.com/mmajcica/DeploySsis/issues/2)

## Contributing

Expand Down
4 changes: 2 additions & 2 deletions task/task.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"name": "variables"
}
],
"helpMarkDown": "Deploy SSIS ISPACs on your server togheter with environment variables.",
"helpMarkDown": "Deploy SSIS ISPACs on your server together with environment variables.",
"category": "Deploy",
"visibility": [
"Build",
Expand Down Expand Up @@ -92,7 +92,7 @@
"label": "Shared Catalog",
"required": false,
"defaultValue": "true",
"helpMarkDown": "If catalog is shared, it will not be dropped durig the deployment."
"helpMarkDown": "If catalog is shared, it will not be dropped during the deployment."
},
{
"groupName":"SSIS",
Expand Down
8 changes: 5 additions & 3 deletions vss-extension.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"manifestVersion": 1,
"extensionId": "deploy-ssis",
"name": "Deploy SSIS",
"version": "1.0.5",
"version": "1.0.6",
"publisher": "mmajcica",
"description": "Deploy SSIS packages",
"public": false,
Expand Down Expand Up @@ -51,8 +51,10 @@
],
"content": {
"details": {
"path": "README.md",
"license": { "path": "LICENSE.txt" }
"path": "README.md"
},
"license": {
"path": "LICENSE.txt"
}
},
"files": [
Expand Down

0 comments on commit 2916d26

Please sign in to comment.