Public/Steps/Get-HDTNoOpStepTemplate.ps1
|
function Get-HDTNoOpStepTemplate { <# .SYNOPSIS The YAML for a new NoOp step. .DESCRIPTION The optional fourth of the step contract. A step type that exports a template can be CREATED; one that exports only Invoke can be run but not created, and Get-HDTStepType reports that as CanAdd. THE LINES ARE A FRAGMENT, NOT A DOCUMENT. What comes back is one list item as it would appear under a sequence's steps:, unindented. The caller - Add-HDTStep - owns the indentation, because only it knows how deep in the group tree the step is landing. NoOp IS THE PLACEHOLDER STEP, so its template is the smallest legal one there is: a name and a type. It carries no message: the step logs its own name when it has none, so a message here would only be the name written twice for an author to keep in step. This is what a new group arrives holding, because this engine has no such thing as an empty group. .PARAMETER Name The step's name. Defaults to the name this type is offered under. .INPUTS None. This command does not accept pipeline input. .OUTPUTS System.String[] - the YAML lines, unindented. .EXAMPLE Get-HDTNoOpStepTemplate .EXAMPLE Get-HDTNoOpStepTemplate -Name 'Placeholder' #> [CmdletBinding()] [OutputType([string[]])] param( [Parameter(Position = 0)] [ValidateNotNullOrEmpty()] [string] $Name = 'Do Nothing' ) Set-StrictMode -Version Latest $ErrorActionPreference = 'Stop' return [string[]] @( ('- name: {0}' -f $Name) ' type: NoOp' ) } |