Skip to main content
OnCommand Workflow Automation 5.0
Une version plus récente de ce produit est disponible.
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Instructions pour les variables

Contributeurs

Avant de créer une commande ou un type de source de données, vous devez connaître les instructions relatives aux variables PowerShell et Perl dans OnCommand Workflow Automation (WFA).

Variables PowerShell

Directives Exemple

Pour les paramètres d'entrée de script :

  • Utilisez le cas de Pascal.

  • Ne pas utiliser de trait de soulignement.

  • N'utilisez pas d'abréviations.

$VolumeName

$AutoDeleteOptions

$Size

Pour les variables internes de script :

  • Utiliser l'étui Camel.

  • Ne pas utiliser de trait de soulignement.

  • N'utilisez pas d'abréviations.

$newVolume

$qtreeName

$time

Pour les fonctions :

  • Utilisez le cas de Pascal.

  • Ne pas utiliser de trait de soulignement.

  • N'utilisez pas d'abréviations.

GetVolumeSize

Les noms de variables ne sont pas sensibles à la casse. Cependant, pour améliorer la lisibilité, vous ne devez pas utiliser une majuscule différente pour le même nom.

$variable est identique à $Variable.

Les noms de variables doivent être en anglais brut et doivent être liés à la fonctionnalité du script.

Utiliser $name et non $a.

Déclarez explicitement le type de données pour chaque variable.

taille [int]

N'utilisez pas de caractères spéciaux (! @ # & % , .) et espaces.

Aucune

N'utilisez pas de mots clés réservés PowerShell.

Aucune

Regroupez les paramètres d'entrée en plaçant les paramètres obligatoires d'abord suivis des paramètres facultatifs.

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

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

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

Commenter toutes les variables d'entrée à l'aide de l'annotation HelpMessage avec un message d'aide significatif.

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

N'utilisez pas « Filer » comme nom de variable ; utilisez plutôt « Array ».

Aucune

Utilisez l'annotation ValidateSet dans les cas où l'argument obtient des valeurs énumérées. Ceci se traduit automatiquement par le type de données Enum pour le paramètre.

[parameter(Mandatory=$false,HelpMessage="Volume state")]
[ValidateSet("online","offline","restricted")]
[string]$State

Ajoutez un alias à un paramètre qui se termine par “_Capacity” pour indiquer que le paramètre est de type de capacité.

La commande « Create Volume » utilise les alias comme suit :

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

Ajoutez un alias à un paramètre qui se termine par “_Password” pour indiquer que le paramètre est de type mot de passe.

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
)

Variables Perl

Directives Exemple

Pour les paramètres d'entrée de script :

  • Utilisez le cas de Pascal.

  • Ne pas utiliser de trait de soulignement.

  • N'utilisez pas d'abréviations.

$VolumeName

$AutoDeleteOptions

$Size

N'utilisez pas d'abréviations pour les variables internes de script.

$new_volume

$qtree_name

$time

N'utilisez pas d'abréviations pour les fonctions.

get_volume_size

Les noms de variables sont sensibles à la casse. Pour améliorer la lisibilité, vous ne devez pas utiliser de majuscules différentes pour le même nom.

$variable n'est pas identique à $Variable.

Les noms de variables doivent être en anglais brut et doivent être liés à la fonctionnalité du script.

Utiliser $name et non $a.

Regroupez les paramètres d'entrée en plaçant d'abord les paramètres obligatoires, puis les paramètres facultatifs.

Aucune

Dans la fonction GetOptions, déclarez explicitement le type de données de chaque variable pour les paramètres d'entrée.

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

N'utilisez pas « Filer » comme nom de variable ; utilisez plutôt « Array ».

Aucune

Perl n'inclut pas le ValidateSet annotation des valeurs énumérées. Utilisez des déclarations explicites « si » pour les cas où l'argument obtient des valeurs énumérées.

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

$SpaceGuaranteeeq'volume'

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

Toutes les commandes Perl WFA doivent utiliser le pragma "dit" pour décourager l'utilisation de constructions dangereuses pour les variables, les références et les sous-routines.

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

Toutes les commandes Perl WFA doivent utiliser les modules Perl suivants :

  • Getopt

    Ceci est utilisé pour spécifier les paramètres d'entrée.

  • Util. Wutil

    Cette fonction est utilisée pour les fonctions d'utilitaire fournies pour la journalisation des commandes, la génération de rapports sur la progression des commandes, la connexion aux contrôleurs de matrice, etc.

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