A Python package for validating SQL Server Integration Services (SSIS) projects. It can be used as a part of Continuous Integration pipeline.
The module works by parsing the XML content of SSIS Projects and Packages while handling all the rough edges. It identifies the configurations of the projects and validates whether they meet the specifications.
This Python application is written for Python 3.7+.
This package is available on PyPi package repository. You can install it like below:
pip install ssis_validator
Specify one or multiple --project
arguments and provide the full path to the SSIS Projects that you want to validate.
ssis_validator --project Project_1 --project Project_2
Specify --repository
optional argument along with one --project
argument passing the Git repository hosting multiple SSIS Projects. The validator only checks SSIS projects that are staged.
ssis_validator --project Project_1 --repository
The following validation criteria are currently checked. The current version has the accepted specifications hard-coded. The next version will parameterize all of them in a configuration file.
- Project Server Version:
SQLServer2014
,SQLServer2016
- Project Protection Level:
EncryptSensitiveWithPassword
- Packages Presence in Project:
True
- Linkage of Packages:
True
- Project Deployment Model:
Project
- Package Last Modified Visual Studio Version:
SSIS_2016
- Package Protection Level:
EncryptSensitiveWithPassword
- (Optional) PragmaticWorks BIxPress Server Name:
server_name
- (Optional) PragmaticWorks BIxPress Continue Execution on Error:
True
- (Optional) PragmaticWorks BIxPress Reporting of Error on Failure:
False
See an area for improvement, please open an issue or send a PR.
- mypy type hints
- add configuration file