Logicbase has a Command Line Utility (CLU), ".\Altiris\Workflow\Tools\LBUtil.exe", which can be leveraged to interact with the Logicbase server. Usage of this utility is as follows:
LogicBase Studio Command Line Utility v Version 2007.0.3 build number 1314
To use the clu, you must invoke it with parameters. There are several uses for the clu.
Validate LogicBase projects
Build LogicBase projects
Deploy LogicBase projects
Most clu actions require a project parameter. LButil -project location -validate
-convertstorage
Converts the data from old message style to new message style
-version
Version takes no parameters.
-sign
Use sign with with a directory name, where project is located.
-sign directoryname
-writeRootDirToFile
WriteRootDirToFile Action is used to write the root LogicBase path in file 'LogicBase_ToolCLI_RootDir' or specified file in system temporary folder.
usage: -writeRootDirToFile [<file name>]
-repointlibstosearchpaths
Repoints libraries to search paths.
-repointlibstospecifiedpaths
Repoints libraries to specified path.
usage: -repointlibstospecifiedpaths <path>;<path>;<path>
-refreshlibsfromsearchpaths
Updates libraries with libraries from search paths. This task DOES NOT repoint original resource paths.
-refreshlibsfromspecifiedpaths
Updates libraries with libraries from specified path. This task DOES NOT repoint original resource paths.
usage : -refreshlibsfromspecifiedpaths <path>;<path>;<path>
-refreshlibsfromprojectpaths
Updates libraries with libraries from original resource paths. You may want to do repoints before running this task.
-validate
Validate takes the project to validate as a parameter. It will process this project and report any validity problems. Validate uses the output mechanism of the command line utility.
if the -verbose parameter is sent in, it will also print off any details
if the -treatWarningMessagesAsFatal parameter is sent in, warning validations will stop validation
-build
Use the build action as follows: -build to-location.
-build c:\temp\myProjectName.zip will create a deployable package.
-build c:\temp\myProjectName will create a fully expanded deployment image.
-build myProjectName will create a deployment image in your default deploy directory.
-updateversion
Updates version of project to same version as tool. generally want to do this following a library refresh.
-deployInstaller
Use deploy with one of the following parameters.
-deployInstaller - main argument to specify the full path to the installer
Optional parameters:
-productName - installer product name
-version - installer product version
-publisher - installer product publisher
-site - installer product site
-instdir - installation directory where to install product
-lbpath - the root directory where LogicBase installed
-desktopshortcut - if true creates desktop shortcut
-startmenushortcut - if true creates start menu shortcut
-grantaspnet - if true grants APSNET user full access
-includecustomlibs - if true includes custom libraries
-outputscript - if true outputs installer sources
-CreateProjectPackage
Create project package and put it in a specified directory. Usage:
lbutil -project <project path> -createProjectPackage <package path>
-includeCustomLibraries <true|false> -exludeCoreLibraries <true|false> -exludeLibrariesInSearchPath <true|false>
-RunTests
Run project tests by names or all tests if empty parameter.
Usage LBUtil -runTests <test name 1; test name 2...>
-deployProjectAsExe
Deploy Decision project as executable file. Usage:
lbutil -project <project path> -deployProjectAsExe <output path>
-smppack
Create an SMP Solution Pack and put it in a specified directory.
* Any parameter value with spaces must be double quoted.
Usage:
lbutil -smppack
-project <project path>
-vdir <virtual directory>
-targetdirectory <directory where files are created>
-deletetargetdirectory <true|false>
-autodeploy <true|false>
-ismodifiable <true|false>
-path <path installer puts workflow zip - %smpdir%\MyNsSolution\MyProj_WorkflowFiles.zip>
-projectnotes <project notes>
-tags <repo tags comma seperated>
-createitemaction <true|false>
-itemactionname <name of item action>
-entrypoint <entry point name>
-actionmulti <true|false>
-isspcaction <true|false>
-useprojectid <true|false>
-pseudotranslation <true|false>
For product dependencies use the following syntax:
-pd:<groupguid>:<productguid> <minversion>:<maxversion>
OR
-pd:<groupguid>:<productguid> <minversion> (for unlimited maxversion)
examples:
-pd:b0b71962-5bd1-487e-b1ca-1d48373ca4e7:a4f8a274-8a81-4bdd-9c88-ec5c6a65dffd 5.0.6.8:9.0.2.6
-pd:b0b71962-5bd1-487e-b1ca-1d48373ca4e7:a4f8a274-8a81-4bdd-9c88-ec5c6a65dffd 5.0.6.8
Group is an arbitrary guid that groups different versions of the same product. A group must have the same product guid and only one version in the group needs to match to for the dependency to be met. If multiple version of the same product are required each version should have a unique group id.
-InstallCustomLibs
installs custom library from a specified directory. Usage:
LBUtil -InstallCustomLibs -fromDir <dir> [-warn] [-stopServer]
-fromDir Directory containing the libraries to install
-MoveFilesIntoPlatform
Copies files from one directory to another under LogicBase shared. Usage:
LBUtil -MoveFilesIntoPlatform -fromDir <dir> -searchString <logicbase*.dll> -dirUnderShared <logicbaselib> [-warn] [-stopServer]
-fromDir Source directory (from which files to be copied)
-searchString File mask, specifies which files to be copied
-dirUnderShared Destination directory (under Shared directory)
-warn Prompt to overwrite existing files
-stopServer Stop server before copying ans start it after
-Log
-log <message> -level <level>
level: {debug, error, fatal, info, warn}
-PublishToEnsembleForms
lbutil -publishToEnsembleForms <project path> -formName <form name>-description <description> -categoryName <category name> -virtualDir <virtual directory>-viewInWindow <true|false> -withChrome -isWebPart -width <width> -height <height>
-AddExchangeConfiguration
lbutil -addExchangeConfiguration <Exchange Name> -owningConfigurationId <Owning Configuration Name> -isTemplateConfiguration-isExternalConfiguration -messageKeyGenerationStrategy <Guid | Sequence | TimeStamp> -autoSyncTables -cachingExchangeQueueName <"ExchangeName-QueueName"> -connectionString <Connection string to SQL Server database> -storeTypeMapping
-Server
lbutil -server <nickname> -ipAddress <ipAddress | hostname> -addRole <role name> -isDefault <true | false> -portNumber <number>
-SetToolPreferences
lbutil -setToolPreferences -debuggingWebServer <IIS | InternalWebServer>
-smpcheckoutprj
lbutil -smpcheckoutprj -prjVersion versionGuidOfProject -baseDir destinationForProject
Optional parameters:
-hostname hostname
-session smpUserSessionId
-deploysmprepoprj
lbutil -deploysmprepoprj -prjVersion versionGuidOfProject
Optional Pamaters
-hostname hostname
-session smpUserSessionId
-virtDir virtualDirectoryName
-resultfile filePath
For Project Properties:
-P:propertyname propertyvalue
-smpdeploypkgprj
lbutil -smpdeploypkgprj -session smpUserSessionId -projectPath tempDirForUnpacking -resultfile tempFileForDeployResults -virtDir virtualDirectoryOfProject