

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Commandes
<a name="rule-reference-Commands"></a>

Lorsque vous créez une condition, vous pouvez ajouter la `Commands` règle. Cette section fournit une référence pour les paramètres des règles. Pour plus d'informations sur les règles et conditions, consultez[Comment fonctionnent les conditions scéniques ?](concepts-how-it-works-conditions.md).

Vous pouvez utiliser la `Commands` règle pour créer une condition dans laquelle les commandes réussies répondent aux critères de la règle, tels que le chemin de sortie et de fichier des commandes réussies pour une condition BeforeEntry.

**Note**  
Pour les conditions BeforeEntry configurées avec le résultat **Skip**, seules les règles suivantes sont disponibles : `LambdaInvoke` et`VariableCheck`.

**Topics**
+ [Considérations relatives à la règle des commandes](#rule-reference-Commands-considerations)
+ [Autorisations de politique des rôles de service](#rule-reference-Commands-policy)
+ [Type de règle](#rule-reference-Commands-type)
+ [Paramètres de configuration](#rule-reference-Commands-config)
+ [Exemple de configuration de règles](#rule-reference-Commands-example)
+ [Consultez aussi](#rule-reference-Commands-links)

## Considérations relatives à la règle des commandes
<a name="rule-reference-Commands-considerations"></a>

Les considérations suivantes s'appliquent à la règle Commandes.
+ La règle des commandes utilise CodeBuild des ressources similaires à l' CodeBuild action, tout en autorisant les commandes de l'environnement shell dans une instance de calcul virtuelle sans qu'il soit nécessaire d'associer ou de créer un projet de génération.
**Note**  
L'exécution de la règle des commandes entraînera des frais distincts. AWS CodeBuild
+ Comme la règle Commands CodePipeline utilise CodeBuild des ressources, les builds exécutés par l'action seront attribués aux limites de build de votre compte dans CodeBuild. Les builds exécutés selon la règle Commands seront pris en compte dans les limites de build simultanées configurées pour ce compte.
+ Le délai d'expiration des builds utilisant la règle Commands est de 55 minutes, selon les CodeBuild builds.
+ L'instance de calcul utilise un environnement de construction isolé dans CodeBuild. 
**Note**  
Étant donné que l'environnement de construction isolé est utilisé au niveau du compte, une instance peut être réutilisée pour une autre exécution de pipeline.
+ Tous les formats sont pris en charge, à l'exception des formats multilignes. Vous devez utiliser le format d'une seule ligne lors de la saisie des commandes.
+ Pour cette règle, CodePipeline assumera le rôle de service de pipeline et utilisera ce rôle pour autoriser l'accès aux ressources lors de l'exécution. Il est recommandé de configurer le rôle de service de manière à ce que les autorisations soient limitées au niveau de l'action.
+ Les autorisations ajoutées au rôle CodePipeline de service sont détaillées dans[Ajouter des autorisations au rôle CodePipeline de service](how-to-custom-role.md#how-to-update-role-new-services).
+ Les autorisations nécessaires pour consulter les journaux dans la console sont détaillées dans[Autorisations requises pour consulter les journaux de calcul dans la console](security-iam-permissions-console-logs.md). Dans les exemples d'écrans suivants, utilisez le lien **Journaux** pour afficher les journaux indiquant si une règle de commandes a été utilisée correctement dans les CloudWatch journaux.  
![\[La page d'état d'un pipeline avec la règle Commandes\]](http://docs.aws.amazon.com/fr_fr/codepipeline/latest/userguide/images/commands-rule-status.png)  
![\[La page Logs CloudWatch pour un pipeline avec la règle Commands\]](http://docs.aws.amazon.com/fr_fr/codepipeline/latest/userguide/images/commands-rule-logs.png)
+ Contrairement aux autres actions dans CodePipeline, vous ne définissez pas de champs dans la configuration des actions ; vous définissez les champs de configuration des actions en dehors de la configuration des actions.

## Autorisations de politique des rôles de service
<a name="rule-reference-Commands-policy"></a>

Lors de l' CodePipeline exécution de la règle, CodePipeline crée un groupe de journaux en utilisant le nom du pipeline comme suit. Cela vous permet de limiter les autorisations de journalisation des ressources en utilisant le nom du pipeline.

```
/aws/codepipeline/MyPipelineName
```

Si vous utilisez un rôle de service existant, pour utiliser l'action Commandes, vous devez ajouter les autorisations suivantes pour le rôle de service.
+ journaux : CreateLogGroup
+ journaux : CreateLogStream
+ journaux : PutLogEvents

Dans la déclaration de politique relative aux rôles de service, limitez les autorisations au niveau du pipeline, comme indiqué dans l'exemple suivant.

```
{
    "Effect": "Allow",
    "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents"
    ],
    "Resource": "arn:aws:logs:*:YOUR_AWS_ACCOUNT_ID:log-group:/aws/codepipeline/YOUR_PIPELINE_NAME:*"
}
```

Pour afficher les journaux dans la console à l'aide de la page de dialogue des détails de l'action, l'autorisation d'afficher les journaux doit être ajoutée au rôle de console. Pour plus d'informations, consultez l'exemple de politique d'autorisation de console dans[Autorisations requises pour consulter les journaux de calcul dans la console](security-iam-permissions-console-logs.md).

## Type de règle
<a name="rule-reference-Commands-type"></a>
+ Catégorie : `Rule`
+ Propriétaire : `AWS`
+ Fournisseur : `Commands`
+ Version : `1`

## Paramètres de configuration
<a name="rule-reference-Commands-config"></a>

**Commandes**  
Obligatoire : oui  
Vous pouvez fournir des commandes shell pour que la `Commands` règle s'exécute. Dans la console, les commandes sont entrées sur des lignes séparées. Dans la CLI, les commandes sont entrées sous forme de chaînes distinctes.  
Les formats multilignes ne sont pas pris en charge et un message d'erreur s'affichera. Le format d'une seule ligne doit être utilisé pour saisir des commandes dans le champ **Commandes**.
Les informations suivantes indiquent le calcul par défaut utilisé pour la règle Commands. Pour plus d'informations, consultez la section Référence [des modes et types de calcul de l'environnement](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html) de génération dans le guide de CodeBuild l'utilisateur.  
+ **CodeBuild image : aws/codebuild/amazonlinux 2-x86\$164 standard :** 5.0
+ **Type de calcul :** Linux Small
+ **Valeur ComputeType de l'environnement** : BUILD\$1 \$1SMALL GENERAL1
+ **Valeur du type d'environnement :** LINUX\$1CONTAINER

## Exemple de configuration de règles
<a name="rule-reference-Commands-example"></a>

------
#### [ YAML ]

```
result: FAIL
rules:
- name: CommandsRule
  ruleTypeId:
    category: Rule
    owner: AWS
    provider: Commands
    version: '1'
  configuration: {}
  commands:
  - ls
  - printenv
  inputArtifacts:
  - name: SourceArtifact
  region: us-east-1
```

------
#### [ JSON ]

```
{
    "result": "FAIL",
    "rules": [
        {
            "name": "CommandsRule",
            "ruleTypeId": {
                "category": "Rule",
                "owner": "AWS",
                "provider": "Commands",
                "version": "1"
            },
            "configuration": {},
            "commands": [
                "ls",
                "printenv"
            ],
            "inputArtifacts": [
                {
                    "name": "SourceArtifact"
                }
            ],
            "region": "us-east-1"
        }
    ]
}
```

------

## Consultez aussi
<a name="rule-reference-Commands-links"></a>

Les ressources connexes suivantes peuvent vous aider à utiliser cette règle.
+ Pour plus d'informations sur les règles et conditions, consultez la section [Condition](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_Condition.html) et [RuleExecution](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_RuleExecution.html)le *guide de l'CodePipeline API*. [RuleTypeId](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_RuleTypeId.html)