Using Python agent - Command Reference

 

Passing Parameters as Environment Variables

All of the below sl-python CLI parameters can be passed as an environment variable by prepending SL_ to them.

For example,

  • the param buildname would be set with SL_BUILDNAME

  • the param buildsessionid would be set with SL_BUILDSESSIONID

  • the param proxy would be set with SL_PROXY

Generating a session ID

Standard Session ID

sl-python config {--token <token> | --tokenfile <file>} --appname <appname> --branchname <branch> --buildname <build> --workspacepath <path> [--include <include>] [--exclude <exclude>] [--buildsessionid <buildsessionid>] [--proxy <proxy>] [--help]

Parameter

Description

Parameter

Description

token

Access token generated from the Sealights server

tokenfile

Path to file containing access token generated from the SeaLights server

appname

Name of the application

branchname

The source branch of the application

buildname

The build label of the current build

workspacepath

Path to the workspace where the source code exists

include

Include only files whose paths match one of these patterns.
Accepts shell-style wildcards, which must be quoted.
If you want to provide multiple patterns, please use a comma between each quoted pattern. For example, "pattern1", "pattern2".

exclude

Omit files whose paths match one of these patterns.
Accepts shell-style wildcards, which must be quoted.
If you want to provide multiple patterns, please use a comma between each quoted pattern. For example, "pattern1", "pattern2".

buildsessionid

Optional: A user provided session ID (case-sensitive)

proxy

Address of proxy to run connection through

help

Show Help message and exit.

Pull Request Session ID

sl-python prConfig {--token <token> | --tokenfile <file>} --appname <appname> --targetbranch <branch> --latestcommit <commit_sha> --pullrequestnumber <number> --repourl <url> --workspacepath <path> [--include <include>] [--exclude <exclude>] [--buildsessionid <buildsessionid>] [--proxy <proxy>] [--help]

Parameter

Description

Parameter

Description

token

Access token generated from the Sealights server

tokenfile

Path to file containing access token generated from the SeaLights server

appname

Name of the application

targetbranch

The branch to which this PR will be merged into (already reported to SeaLights)

latestcommit

The full SHA of the last commit made to the Pull Request

pullrequestnumber

he number assigned to the Pull Request from the source control

repourl

The pull request URL for the PR to be scanned, up until the section before the pullRequestNumber value

workspacepath

Path to the workspace where the source code exists

include

Include only files whose paths match one of these patterns.
Accepts shell-style wildcards, which must be quoted.

exclude

Omit files whose paths match one of these patterns.
Accepts shell-style wildcards, which must be quoted.

buildsessionid

Optional: A user provided session ID (case-sensitive)

proxy

Address of proxy to run connection through

help

Show Help message and exit.

Scanning a build

sl-python scan {--token <token> | --tokenfile <file>} {--buildsessionid <id> | --buildsessionidfile <file>} --scm {git|none} [--scmBaseUrl <url> --scmProvider {github|gitlab|bitbucket} [--scmVersion <version>] [--proxy <proxy>] [--help]

Parameter

Description

Parameter

Description

token

Access token generated from the SeaLights server

tokenfile

Path to file containing access token generated from the SeaLights server

buildsessionid

Session ID of configuration created

buildsessionidfile

Path to file containing the Session ID of configuration created

scm

Source control used

Current options are: git, none

scmprovider

The provider name of your Source Control Management (SCM) tool.
Values: Github, Bitbucket and Gitlab (Default is Github)

scmbaseurl

The URL to the repository which contains the code.

If not provided, the url of the remote GIT origin will be used

Example: https://my.bitbucket.com/projects/ABCD/repos/XYZ/browse/A1

scmversion

The version of your Source Control Management (SCM) tool. If left blank, cloud version is assumed. Otherwise, specify the version of your on-premise server.

proxy

Address of proxy to run connection through

help

Show Help message and exit.

Running backend server

Parameter

Description

Parameter

Description

token

Access token generated from the SeaLights server

tokenfile

Path to file containing access token generated from the SeaLights server

buildsessionid

Session ID of configuration created

buildsessionidfile

Path to file containing the Session ID of configuration created

cov-report

Path to generate XML coverage report

per-test

Collect coverage per test (Default: false)

interval

Interval in milliseconds to send data

labid

Unique ID for a set of test labs in case multiple labs are running simultaneously (case-sensitive)

proxy

Address of proxy to run connection through

help

Show Help message and exit.

args...

Extra arguments for running the application server

Test Listener

Starting a test stage

Parameter

Description

Parameter

Description

token

Access token generated from the SeaLights server

tokenfile

Path to file containing access token generated from the SeaLights server

buildsessionid

Session ID of configuration created

buildsessionidfile

Path to file containing the Session ID of configuration created

teststage

Name of the test stage

labid

Unique ID for a set of test labs in case multiple labs are running simultaneously

proxy

Address of proxy to run connection through

Upload report files

Report files must be JUnit style XML reports

Parameter

Description

Parameter

Description

token

Access token generated from the SeaLights server

tokenfile

Path to file containing access token generated from the SeaLights server

buildsessionid

Session ID of configuration created

buildsessionidfile

Path to file containing the Session ID of configuration created

reportfile

Path to report file. This argument can be declared multiple times in order to upload multiple files.

reportfilesfolder

Path to folder that contains nothing but report files. All files in folder will be uploaded.
This argument can be declared multiple times in order to upload multiple files from multiple folders containing report files.

Note: all files in the folder will be uploaded

hasmorerequests

Set to ‘True’ if test results contains multiple reports (Default: ‘False’).

labid

Unique ID for a set of test labs in case multiple labs are running simultaneously (case-sensitive)

source

The reports provider. If not set, the default will be 'Junit xml report'.

type

Name of testing framework type. The report type. If not set, the default will be 'JunitReport'

  • JUnitReport - For uploading JUnit test report files

  • commitLog - For uploading git style commit logs

proxy

Address of proxy to run connection through

help

Show Help message and exit.

Ending a test stage

Parameter

Description

Parameter

Description

token

Access token generated from the SeaLights server

tokenfile

Path to file containing access token generated from the SeaLights server

buildsessionid

Session ID of configuration created

buildsessionidfile

Path to file containing the Session ID of configuration created

labid

Unique ID for a set of test labs in case multiple labs are running simultaneously

proxy

Address of proxy to run connection through

help

Show Help message and exit.

Running Tests via pytest, unittest, unit2 or nose

These commands will be documented soon, please refer to their --help option via the command below

Logging

Enabling logging in Python is done using by setting the SL_DEBUG environment variable to “true”.

Messages will be written to stdout and the file, sealights-python-agent.log