Command Line Interface

Integrate SnowConvert for Greenplum into your CI/CD process with the CLI version of the tool

This is a deprecated version of the SnowConvert documentation, please visit the official site HERE.

Quick start

To execute a conversion with the SnowConvert CLI you have to have an active license. If you already have a license for the UI you should be able to reuse the same license key. In the section below we show how to install a license key.

There are several Command Line Arguments documented below, but the main ones are -i for the input folder and -o for the output folder.

Install a license

To install a license key just execute SnowConvert CLI program with the -l argument and the license key.

$: snowct -l 137c88fg-a91a-4v55-yabd-601e383d45ce

Check license status

To know the status of the license just execute SnowConvert CLI program with just the -l and no other arguments.

$: snowct -l

Migrate a folder

To migrate a folder just execute SnowConvert CLI program with the -i <INPUT FOLDER> and -o <OUTPUT FOLDER> arguments.

$: snowct -i ~/Documents/Workspace/Code -o ~/Documents/Workspace/Output

CLI Arguments

Basic Conversion

-i, --input <PATH> (Required)

The path to the folder or file containing the input source code.

-o, --output <PATH> (Required)

The path to the output folder where the converted code and reports will be stored.

-a, --assessmentmode

Flag to indicate whether or not to generate only Assessments files. By default, it's set to FALSE.

-e, --encoding <CODE PAGE>

The encoding code page number used for parsing the source files. We only accept encodings supported by .NET Core. Here are the ones supported at the moment:

Code Page


Display Name






Unicode (Big endian)



Unicode (UTF-32)



Unicode (UTF-32 Big endian)






Western European (ISO)



Unicode (UTF-7). Not available in .NET 5



Unicode (UTF-8). Default encoding

-m, --comments

Flag to indicate if user wants to comment nodes that have missing dependencies.

Object Name Customization

-s, --customschema <SCHEMA_NAME>

String value specifying the custom schema name to apply. If not specified, either PUBLIC or the original database name will be used. Example: DB1.MyCustomSchema.Table1.

If you provide this parameter with a schema named NONE --customschema none, the converted code will keep the original schema defined in the source code.

-d, --database <DB_NAME>

String value specifying the custom database name to apply. Example: MyCustomDB.PUBLIC.Table1.


This flag must be used in conjunction with the -d or -s parameters. When used, it preserves the existing name qualification from the input code when previous parameters are used. Let's take a look at this example where -s newSchema was included:

SELECT * FROM mySchema.myObject;

The same applies to databases.

License and Help

-l, --license [<LICENSE_KEY>]

Shows the license information. If it's followed by a license key, it will attempt to download and install such a license. For example:

  • Showing license status snowct -l

  • Installing a license snowct -l 12345-ASDFG-67890


Show license terms information.


Display the help information.

Other features


Flag to indicate whether EWIs comments (Errors, Warnings, and Issues) will be generated on the converted code. Default is false.


Flag to indicate the path where the additional translation rules are located.

Last updated