snow streamlit deploy¶

Deploys a Streamlit app defined in the project definition file (snowflake.yml). By default, the command uploads environment.yml and any other pages or folders, if present. If you don’t specify a stage name, the streamlit stage is used. If the specified stage does not exist, the command creates it.

Syntax¶

snow streamlit deploy
  --replace
  --open
  --project <project_definition>
  --connection <connection>
  --account <account>
  --user <user>
  --password <password>
  --authenticator <authenticator>
  --private-key-path <private_key_path>
  --database <database>
  --schema <schema>
  --role <role>
  --warehouse <warehouse>
  --temporary-connection
  --mfa-passcode <mfa_passcode>
  --enable-diag
  --diag-log-path <diag_log_path>
  --diag-allowlist-path <diag_allowlist_path>
  --format <format>
  --verbose
  --debug
  --silent
Copy

Arguments¶

None

Options¶

--replace

Replace the Streamlit app if it already exists.

--open

Whether to open the Streamlit app in a browser.

-p, --project TEXT

Path where the Streamlit app project resides. Defaults to current working directory.

--connection, -c, --environment TEXT

Name of the connection, as defined in your config.toml. Default: default.

--account, --accountname TEXT

Name assigned to your Snowflake account. Overrides the value specified for the connection.

--user, --username TEXT

Username to connect to Snowflake. Overrides the value specified for the connection.

--password TEXT

Snowflake password. Overrides the value specified for the connection.

--authenticator TEXT

Snowflake authenticator. Overrides the value specified for the connection.

--private-key-path TEXT

Snowflake private key path. Overrides the value specified for the connection.

--database, --dbname TEXT

Database to use. Overrides the value specified for the connection.

--schema, --schemaname TEXT

Database schema to use. Overrides the value specified for the connection.

--role, --rolename TEXT

Role to use. Overrides the value specified for the connection.

--warehouse TEXT

Warehouse to use. Overrides the value specified for the connection.

--temporary-connection, -x

Uses connection defined with command line parameters, instead of one defined in config.

--mfa-passcode TEXT

Token to use for multi-factor authentication (MFA).

--enable-diag

Run python connector diagnostic test.

--diag-log-path TEXT

Diagnostic report path.

--diag-allowlist-path TEXT

Diagnostic report path to optional allowlist.

--format [TABLE|JSON]

Specifies the output format.

--verbose, -v

Displays log entries for log levels info and higher.

--debug

Displays log entries for log levels debug and higher; debug logs contains additional information.

--silent

Turns off intermediate output to console.

--help

Displays the help text for this command.

Usage notes¶

This command creates a Streamlit app object in the database and a schema configured in the specified connection.

The command uploads local files to a specified stage and creates a Streamlit app using those files. You must specify the main Python file and query warehouse. By default, the command uploads the environment.yml and pages/ folder if present. The Streamlit app is created in the database and schema configured in the specified connection.

If you don’t specify a stage name, the streamlit stage is used. If the specified stage does not exist, the command creates it. You can modify the behavior by using command line options.

Examples¶

snow streamlit deploy demo_app --replace --query-warehouse=xsmall
Copy
Streamlit successfully deployed and available under https://app.snowflake.com/myorg/myacc/#/streamlit-apps/JDOE.PUBLIC.DEMO_APP