Deployment Runner

Mike Mooney edited this page Mar 26, 2015 · 8 revisions

Introduction

The Sriracha deployment runner (sriracha.run.exe) is a command line utility that allows you to run individual deployment tasks as a standalone executable, without having to set up a database or the Sriracha service.

To run the deployment runner, you need to provide a DLL that contains the deployment task logic, and usually a configuration file with the necessary info to execute the deployment task.

The deployment runner is a console application and will stream status messages back to the console as steps of the deployment task are executed. This output can be either text or JSON.

Command Line Reference

sriracha.run.exe --taskBinary [AssemblyPath] --taskName [TaskName] --configFile [ConfigFilePath] --pause [true/false] --outputFormat [text/json] --workingDirectory [WorkingDirectory]

Parameter_Definition_ Description
--taskBinary or -t Required: The location of the assembly that contains the deployment task. If the DLL is not found in the current working directory or specified path, it will look in the same directory as the deployment runner exe
--taskName or -n Required: The name of the deployment task type to execute. If a fully qualified type name with namespace is provided, that type will be used. If no namespace is provided in the type, the assembly will be searched for any type matching that name; If no types or multiple types with that name are are found, and error will be returned
--configFile or -c Optional: The path the JSON configuration file to be provided to the task. The specific content of the file depends on the task. Note: Most tasks require a configuration file.
--pause or -p Optional: Whether to pause at the end of the deployment task and prompt for the user to continue before exiting. Default is false.
--outputPath or -o Optional: The format to be returned to the console, either "text" or "json". Default is "text"
--workingDirectory or -w Optional: The working directory use to execute the deployment task. Default is the current environmental working directory.

JSON Response Format

  • JsonMessage (array)
    • DateTimeUtc
    • LogLevel
    • Message
    • Detail

Example:

{
    "DateTimeUtc" : "2015-03-24T00:57:23.7541091Z",
    "LogLevel" : 2,
    "Message" : "Loading task binary D:\\Projects\\Sriracha2\\DeployTask\\Sriracha.DeployTask.WindowsService\\bin\\Debug\\Sriracha.DeployTask.WindowsService.dll",
    "Detail" : null
}
{
    "DateTimeUtc" : "2015-03-24T00:57:23.9320372Z",
    "LogLevel" : 3,
    "Message" : "Getting type DeployWindowsServiceTask",
    "Detail" : null
}
{
    "DateTimeUtc" : "2015-03-24T00:57:23.9984891Z",
    "LogLevel" : 2,
    "Message" : "Registering assembly types from D:\\Projects\\Sriracha2\\DeployTask\\Sriracha.DeployTask.WindowsService\\bin\\Debug\\Sriracha.DeployTask.WindowsService.dll",
    "Detail" : null
}
{
    "DateTimeUtc" : "2015-03-24T00:57:25.0137069Z",
    "LogLevel" : 2,
    "Message" : "Instantiating type Sriracha.DeployTask.WindowsService.DeployWindowsService.DeployWindowsServiceTask",
    "Detail" : null
}

Available Deployment Tasks