SigmaOrigo.PublishAgent 1.0.0

Prefix Reserved
dotnet tool install --global SigmaOrigo.PublishAgent --version 1.0.0                
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local SigmaOrigo.PublishAgent --version 1.0.0                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=SigmaOrigo.PublishAgent&version=1.0.0                
nuke :add-package SigmaOrigo.PublishAgent --version 1.0.0                

This package provides a .NET tool (publish-agent) and is part of the Sigma Origo Diagnostics Agent SDK.

Use this tool to publish diagnostics agent packages to an Origo tenant.

Install tool

 > dotnet tool install --global SigmaOrigo.PublishAgent

Command line usage

Description:
  Publishes a diagnostics agent package to an Origo tenant

Usage:
  publish-agent <source> [options]

Arguments:
  <source>  Path or URL to the ZIP archive that contains the agent to be published

Options:
  --host <host>   Specifies the DNS host name of the target Origo tenant
  --key <key>     Specifies the API key that shall be used when publishing
  --debug         Write debug output to console
  --version       Show version information
  -?, -h, --help  Show help and usage information

Publish an agent package using default host and API key

 > publish-agent MyAgent.zip

This command will publish the specified agent package to the default tenant using the default API key.

If this is the first time you run this command you will be asked to enter a target host name and API key. Those inputs will then be saved for automatic use later.

Publish an agent to an explicit tenant using the default API key

 > publish-agent MyAgent.zip --host myhost.example.com

This command will publish the specified agent package to the tenant that is provisioned on the specified host using the default API key for that host.

If this is the first time you publish to that host you will be asked to enter an API key. That key will then be saved for automatic use later.

Publish an agent to an explicit tenant using an explicit API key

 > publish-agent MyAgent.zip --host myhost.example.com --key SECRET-KEY-HERE

This command will publish the specified agent package to the specified host using the specified API key.

Package format

Agents must be packaged into a ZIP archive and must contain a file named manifest.json (in the root directory of the package) with the following structure:

{
	"id": "MY_AGENT",
	"version": "1.0.0-preview.1",
	"executable": "my-agent.exe",
	"swdl": true
}

The id property

This property shall contain a unique identifier of the agent to be published.

An agent identifier must be at least 3 and at most 50 characters long and can only contain ASCII letters (a-z and A-Z), digits (0-9), underscore (_), period (.) and dash (-)

Notice: Agent identifiers can use both upper and lower case letters, but we consider agent identifiers that only differ by casing to be the same.

The version property

This property shall contain a string that is unique for the version of the agent to be published.

The version string can take one of the following forms:

Format Description
1.0.0 Major.Minor.Patch
1.0.0.0 Major.Minor.Patch.Build
1.0.0-preview.2 Major.Minor.Patch-Preview
1.0.0.0-preview.2 Major.Minor.Patch.Build-Preview

Notice: Numbers in the version string must be greater than or equal to 0 and less than or equal to 99999.

The executable property

This property shall contain the name of the agent executable file. It must end with .exe (case insensitive) and must refer to a file in the ZIP archive. It may contain slashes (/) to refer to a file in a subdirectory.

The swdl property

Must have the boolean true value to indicate that the agent is capable of running software download (SWDL) operations.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
1.0.0 284 9/4/2023
1.0.0-preview.4 78 9/3/2023
1.0.0-preview.3 90 8/28/2023
1.0.0-preview.1 80 8/28/2023