Table Of Contents

Previous topic

4. Getting started

Next topic

6. AA plugin development

5. pluginv

The pluginv build script is available in the development environment after the environment is set up according to Getting started section. This section lists the main options and tasks provided by the pluginv script.

Every command is to be executed in the virtual environment created by pipenv, that is after pipenv shell is invoked to activate the virtual environment.

5.1. Version information

To get Plugin SDK version and SPS version that first included this SDK, use the commands (New in version 1.2.0)

pluginv version-sdk
pluginv version-sps

Version 1.1.3 Plugin SDK had the command

pluginv -V

5.2. Snapshot build

To build a snapshot version of the plugin, use the command

pluginv dist

which checks the consistency of administrative data for the plugin, add the current time to the version in MANIFEST and create the plugin ZIP package. See the next section for details about the ZIP build.

5.3. Release build

To build a release version of the plugin, use the command

pluginv release

which checks the consistency of administrative data for the plugin and create the plugin ZIP package. The ZIP package creation involves invoking several tools from the pipenv tool chain such as pipenv, virtualenv and pip. During the build a new virtual environment is created in the build directory while the final ZIP package is placed in dist directory. The name of the distributable ZIP package is the name of the plugin plus the version number followed by the zip extension.

5.4. Run unit and integration tests

If you wrote tests for your plugin, you can use the following subcommands to run them. Refer to the Testing section for further information.

With the run-tests subcommand, you can run the tests replaying all the communication using the recorded cassettes, including the keyboard interactive inputs.

pluginv run-tests

With the run-interactive-tests subcommand, you can run the tests while communicating with the real services, not using the cassettes, and asking the user interactively when keyboard input is necessary.

pluginv run-interactive-tests

With the run-recording-tests subcommand, you can record the communication, including the keyboard interactive inputs.

pluginv run-recording-tests

5.5. Run test scenarios

New in version 1.2.0.

If you want to test your AA plugin, use the run-scenario subcommand to run an authentication scenario of your choice. You can list the available scenarios with the --list-scenarios flag, and when you want to run it, can specify the scenario name with the --name parameter. If you don’t specify a name, all the scenarios will run. The --config-file parameter is the name of a pre-written config file the plugin will use. You can also specify target- and gateway username, which you can do with the --target-username and --gateway-username options. It is the gateway username that should be authenticated by the AA plugin, its default is “gatewayuser”.

pluginv run-scenario --name=RdpWithGatewayAuth --config-file=config.ini --run-only-aa-steps