Lorsque vous configurez votre pipeline, vous ajoutez des types de tâches spécifiques que le pipeline exécute pour les actions dont vous avez besoin. Chaque type de tâche s'intègre à une autre application et active votre pipeline au cours de la construction, des tests et de la livraison de vos applications.
Pour exécuter votre pipeline, que vous deviez extraire des artefacts d'un référentiel pour le déploiement, exécuter un script distant ou demander l'approbation d'une opération utilisateur à un membre de l'équipe, Code Stream a le type de tâche qu'il vous faut !
Code Stream prend en charge l'annulation d'une exécution de pipeline sur divers types de tâches. Lorsque vous cliquez sur Annuler sur l'exécution d'un pipeline, la tâche, l'étape ou l'intégralité du pipeline passe à l'état d'annulation et annule l'exécution du pipeline.
- Jenkins
- SSH
- PowerShell
- Opération de l'utilisateur
- Pipeline
- Modèle de cloud
- vRO
- POLL
Code Stream ne propage pas le comportement d'annulation aux systèmes tiers pour ces tâches : CI, Intégration personnalisée ou Kubernetes. Code Stream marque la tâche comme annulée et cesse immédiatement d'extraire l'état sans attendre la fin de la tâche. La tâche peut se terminer ou échouer sur le système tiers, mais cesse immédiatement de s'exécuter dans Code Stream lorsque vous cliquez sur Annuler.
Avant d'utiliser une tâche dans votre pipeline, vérifiez que le point de terminaison correspondant est disponible.
Type de tâche | Fonctionnement | Exemples et détails |
---|---|---|
Opération de l'utilisateur | Active une tâche d'opération d'utilisateur qui contrôle le moment où un pipeline s'exécute et doit s'arrêter pour approbation. |
Reportez-vous à la section Comment exécuter un pipeline et afficher les résultats. et Gestion de l'accès et des approbations utilisateur dans Code Stream. |
Condition | Ajoute un point de décision qui détermine si le pipeline continue à s'exécuter, ou s'arrête, en fonction des expressions de condition. Lorsque la condition est true, le pipeline exécute des tâches successives. Lorsqu'elle est false, le pipeline s'arrête. |
Reportez-vous à la section Utilisation des liaisons de variables dans une tâche de condition pour l'exécution ou l'arrêt d'un pipeline dans Code Stream. |
Type de tâche | Fonctionnement | Exemples et détails |
---|---|---|
Modèle de cloud | Déploie un modèle de cloud d'automatisation à partir de GitHub et provisionne une application, puis automatise l'intégration continue et la livraison continue (CICD) de ce modèle de cloud pour votre déploiement. |
Reportez-vous à la section Automatisation de la publication d'une application déployée à partir d'un modèle de cloud YAML dans Code Stream. Les paramètres du modèle de cloud s'affichent lorsque vous sélectionnez Créer ou Mettre à jour, puis sélectionnez Modèle de cloud et Version. Vous pouvez ajouter ces éléments, qui adaptent les liaisons de variables aux zones de texte d'entrée dans la tâche de modèle de cloud :
Lorsque vous utilisez la liaison de variable dans l'entrée, vous devez connaître ces exceptions. Pour les énumérations, vous devez sélectionner une valeur d'énumération à partir d'un ensemble fixe. Pour les valeurs booléennes, vous devez entrer la valeur dans la zone de texte saisie. Le paramètre du modèle de cloud apparaît dans la tâche de modèle de cloud lorsqu'un modèle de cloud de Cloud Assembly inclut des variables d'entrée. Par exemple, si un modèle de cloud dispose d'un type d'entrée |
CI | La tâche CI permet l'intégration continue de votre code dans votre pipeline en extrayant une image de build Docker à partir d'un point de terminaison de registre et en la déployant sur un cluster Kubernetes. La tâche CI affiche 100 lignes du journal en tant que sortie et affiche 500 lignes lorsque vous téléchargez les journaux. Les tâches CI nécessitent les ports éphémères 32768 à 61000. |
Reportez-vous à la section Planification d'une build native CICD dans Code Stream avant d'utiliser le modèle de pipeline intelligent. |
Personnalisé | La tâche personnalisée intègre Code Stream à vos propres outils de générations, de tests et de déploiement. |
Reportez-vous à la section Intégration d'outils de génération, de test et de déploiement propres avec Code Stream. |
Kubernetes | Automatiser le déploiement de vos applications logicielles sur des clusters Kubernetes. |
Reportez-vous à la section Automatisation de la publication d'une application dans Code Stream sur un cluster Kubernetes. |
Pipeline | Imbrique un pipeline dans un pipeline principal. Lorsqu'un pipeline est imbriqué, il se comporte comme une tâche dans le pipeline principal. Dans l'onglet Tâche du pipeline principal, vous pouvez facilement accéder au pipeline imbriqué en cliquant sur le lien y donnant accès. Le pipeline imbriqué s'ouvre dans un nouvel onglet du navigateur. |
Pour rechercher des pipelines imbriqués dans Exécutions, entrez imbriqué dans la zone de recherche. |
Type de tâche | Effets | Exemples et détails |
---|---|---|
Bamboo | Interagit avec un serveur d'intégration continue (CI) Bamboo, qui génère, teste et intègre en permanence des logiciels en préparation du déploiement, et déclenche des builds de code lorsque les développeurs valident les modifications. Il expose les emplacements d'artefact que la build Bamboo produit afin que la tâche puisse générer les paramètres que d'autres tâches utiliseront pour la génération et le déploiement. |
Connectez-vous à un point de terminaison de serveur Bamboo et démarrez un plan de build Bamboo à partir de votre pipeline. |
Jenkins | Déclenche des tâches Jenkins qui génèrent et testent votre code source, exécute des cas de test et peut utiliser des scripts personnalisés. |
Reportez-vous à la section Intégration de Code Stream à Jenkins. |
TFS | Vous permet de connecter votre pipeline à Team Foundation Server pour gérer et appeler des projets de build, y compris des tâches configurées qui génèrent et testent votre code. |
Pour connaître les versions de Team Foundation Server prises en charge par Code Stream, consultez Présentation des points de terminaison dans Code Stream. |
vRO | Étend la capacité de Code Stream en exécutant des workflows prédéfinis ou personnalisés dans vRealize Orchestrator. Code Stream prend en charge l'authentification de base et l'authentification basée sur des jetons pour vRealize Orchestrator. Code Stream utilise le jeton d'API pour authentifier et valider le cluster vRealize Orchestrator. Avec l'authentification par jeton, Code Stream prend en charge les points de terminaison vRealize Orchestrator qui utilisent un proxy d'extensibilité de cloud. Par conséquent, dans Code Stream, vous pouvez déclencher des workflows avec un point de terminaison vRealize Orchestrator qui utilise le proxy d'extensibilité de cloud. |
Reportez-vous à la section Intégration de Code Stream à vRealize Orchestrator. |
Type de tâche | Effets | Exemples et détails |
---|---|---|
REST | Intègre Code Stream à d'autres applications qui utilisent une REST API afin de pouvoir développer et fournir en continu des applications logicielles qui interagissent entre elles. |
Reportez-vous à la section Utilisation d'une REST API pour intégrer Code Stream à d'autres applications. |
Interrogation | Appelle une REST API et l'interroge jusqu'à ce que la tâche de pipeline réponde aux critères de sortie et se termine. Un administrateur Code Stream peut définir le nombre d'interrogations sur un maximum de 10 000. L'intervalle d'interrogation doit être supérieur ou égal à 60 secondes. Lorsque vous cochez la case Continuer en cas d'échec, si le nombre ou l'intervalle dépasse ces valeurs, la tâche d'interrogation continue à s'exécuter.
|
Reportez-vous à la section Utilisation d'une REST API pour intégrer Code Stream à d'autres applications. |
Type de tâche | Fonctionnement | Exemples et détails |
---|---|---|
PowerShell | Avec la tâche PowerShell, Code Stream peut exécuter des commandes de script sur un hôte distant. Par exemple, un script peut automatiser des tâches de test et exécuter des types administratifs de commandes. Le script peut être distant ou défini par l'utilisateur. Il peut se connecter via HTTP ou HTTPS, et peut utiliser TLS. L'hôte Windows doit disposer du service winrm configuré, et winrm doit disposer de MaxShellsPerUser et MaxMemoryPerShellMB configurés. Pour exécuter une tâche PowerShell, vous devez disposer d'une session active sur l'hôte Windows distant. Longueur de la ligne de commande PowerShell Si vous entrez une commande PowerShell en base 64, sachez que vous devez calculer la longueur de la commande globale. Le pipeline Code Stream encode et encapsule une commande PowerShell en base 64 dans une autre commande, ce qui augmente la longueur globale de la commande. La longueur maximale autorisée pour une commande PowerShell winrm est de 8 192 octets. La limite de longueur de la commande est inférieure pour la tâche PowerShell lorsqu'elle est codée et encapsulée. Vous devez donc calculer la longueur de la commande avant d'entrer la commande PowerShell. La limite de longueur de la commande pour la tâche PowerShell Code Stream dépend de la longueur codée en base 64 de la commande d'origine. La longueur de la commande est calculée de la manière suivante.
La longueur de la commande pour Code Stream doit être inférieure à la limite maximale de 8 192. |
Lorsque vous configurez MaxShellsPerUser et MaxMemoryPerShellMB :
Le script écrit la sortie dans un fichier de réponse qu'un autre pipeline peut utiliser. |
SSH | La tâche SSH permet à la tâche de script shell Bash d'exécuter des commandes de script sur un hôte distant. Par exemple, un script peut automatiser des tâches de test et exécuter des types administratifs de commandes. Le script peut être distant ou défini par l'utilisateur. Il peut se connecter via HTTP ou HTTPS, et nécessite une clé privée ou un mot de passe. Le service SSH doit être configuré sur l'hôte Linux et la configuration SSHD de MaxSessions doit être définie sur 50. Si vous exécutez plusieurs tâches SSH simultanément, augmentez
La tâche SSH ne prend pas en charge les clés privées de type OpenSSH. Générez la paire de clés publique/privée à l’aide de l’une des méthodes suivantes :
Note : Vérifiez que la clé générée ne s'affiche pas avec
BEGIN OPENSSH PRIVATE KEY.
Si la clé publique générée est une clé autorisée dans la machine distante, reportez-vous à l'un des articles suivants pour modifier le format privé OpenSSH :
Lors de la configuration de la tâche SSH, la clé privée doit être entrée en texte brut. L'enregistrement de la clé en tant que variable ou entrée modifie le format de la clé et la tâche de pipeline ne parvient pas à s'exécuter. |
Le script peut être distant ou défini par l'utilisateur. Par exemple, un script peut ressembler à ce qui suit : message="Hello World" echo $message Le script écrit la sortie dans un fichier de réponse qu'un autre pipeline peut utiliser. |