Skip to main content
OnCommand Workflow Automation 5.1
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Diretrizes para variáveis

Colaboradores

Você deve estar ciente das diretrizes para variáveis PowerShell e Perl no OnCommand Workflow Automation (WFA) ao criar um comando ou um tipo de fonte de dados.

Variáveis do PowerShell

Diretrizes Exemplo

Para parâmetros de entrada de script:

  • Use Pascal Case.

  • Não utilize sublinhados.

  • Não utilize abreviaturas.

$VolumeName

$AutoDeleteOptions

$Size

Para variáveis internas de script:

  • Use Camel Case.

  • Não utilize sublinhados.

  • Não utilize abreviaturas.

$newVolume

$qtreeName

$time

Para funções:

  • Use Pascal Case.

  • Não utilize sublinhados.

  • Não utilize abreviaturas.

GetVolumeSize

Nomes de variáveis não são sensíveis a maiúsculas e minúsculas. No entanto, para melhorar a legibilidade, você não deve usar letras maiúsculas diferentes para o mesmo nome.

$variable é o mesmo que $Variable.

Os nomes das variáveis devem estar em inglês simples e devem estar relacionados à funcionalidade do script.

Use $name e não $a.

Declare o tipo de dados para cada variável, explicitamente.

[string]nome

[int]tamanho

Não use carateres especiais (! a e % , .) e espaços.

Nenhum

Não use palavras-chave reservadas do PowerShell.

Nenhum

Agrupe os parâmetros de entrada colocando os parâmetros obrigatórios primeiro seguidos pelos parâmetros opcionais.

param(
[parameter(Mandatory=$true)]
[string]$Type,

[parameter(Mandatory=$true)]
[string]$Ip,

[parameter(Mandatory=$false)]
[string]$VolumeName
)

Comente todas as variáveis de entrada usando HelpMessage anotação com uma mensagem de ajuda significativa.

[parameter(Mandatory=$false,HelpMessage="LUN to map")]
[string]$LUNName

Não use "'Filer'" como um nome de variável; use "'Array'" em vez disso.

Nenhum

`_ValidateSet_`Use a anotação nos casos em que o argumento obtém valores enumerados. Isso se traduz automaticamente para o tipo de dados Enum para o parâmetro.
[parameter(Mandatory=$false,HelpMessage="Volume state")]
[ValidateSet("online","offline","restricted")]
[string]$State

Adicione um alias a um parâmetro que termine com "'_capacity" para indicar que o parâmetro é do tipo capacidade.

O comando "Create volume" usa aliases da seguinte forma:

[parameter(Mandatory=$false,HelpMessage="Volume increment size in MB")]
[Alias("AutosizeIncrementSize_Capacity")]
[int]$AutosizeIncrementSize

Adicione um alias a um parâmetro que termine com "'_Password" para indicar que o parâmetro é do tipo de senha.

param (
  [parameter(Mandatory=$false, HelpMessage="In order to create an Active Directory machine account for the CIFS server or setup CIFS service for Storage Virtual Machine, you must supply the password of a Windows account with sufficient privileges")]  [Alias("Pwd_Password")]  [string]$ADAdminPassword
)

Variáveis Perl

Diretrizes Exemplo

Para parâmetros de entrada de script:

  • Use Pascal Case.

  • Não utilize sublinhados.

  • Não utilize abreviaturas.

$VolumeName

$AutoDeleteOptions

$Size

Não use abreviações para variáveis internas de script.

$new_volume

$qtree_name

$time

Não utilize abreviaturas para funções.

get_volume_size

Nomes de variáveis são sensíveis a maiúsculas e minúsculas. Para melhorar a legibilidade, você não deve usar letras maiúsculas diferentes para o mesmo nome.

$variable não é o mesmo que $Variable.

Os nomes das variáveis devem estar em inglês simples e devem estar relacionados à funcionalidade do script.

Use $name e não $a.

Agrupe os parâmetros de entrada colocando os parâmetros obrigatórios primeiro, seguidos pelos parâmetros opcionais.

Nenhum

Na função GetOptions, declare explicitamente o tipo de dados de cada variável para parâmetros de entrada.

GetOptions(
	"Name=s"=>\$Name,
	"Size=i"=>\$Size
)

Não use "'Filer'" como um nome de variável; use "'Array'" em vez disso.

Nenhum

Perl não inclui a ValidateSet anotação para valores enumerados. Use declarações explícitas "if" para casos em que argumento obtém valores enumerados.

if
(defined$SpaceGuarantee&&!($SpaceGuaranteeeq'none'

$SpaceGuaranteeeq'volume'

$SpaceGuaranteeeq'file')) { die'Illegal SpaceGuarantee argument: \''.$SpaceGuarantee.'\''; } ----

Todos os comandos Perl WFA devem usar o pragma "strict" para desencorajar o uso de construções inseguras para variáveis, referências e sub-rotinas.

use strict;
# the above is equivalent to
use strictvars;
use strictsubs;
use strictrefs;

Todos os comandos Perl WFA devem usar os seguintes módulos Perl:

  • Getopt

    Isso é usado para especificar parâmetros de entrada.

  • WFAUtil

    Isso é usado para funções de utilitário que são fornecidas para Registro de comandos, relatório do progresso do comando, conexão a controladores de array e assim por diante.

use Getopt::Long;
use NaServer;
use WFAUtil;