Ajout d'une phase de shell
La phase de shell vous permet d'exécuter des commandes personnalisées dans le pipeline de déploiement. Cette phase peut être ajoutée à tout moment au pipeline de déploiement.
Vous devez préparer un fichier YAML de spécification de commande contenant toutes les étapes à exécuter lors du déploiement. La spécification de commande est exécutée sur un hôte d'instance de conteneur dans le compartiment et le sous-réseau sélectionnés de la location. Vous avez la possibilité de choisir une autre configuration d'instance avant le déploiement. Reportez-vous à Détails de l'exécution de l'image de conteneur de shell. Lorsque vous exécutez le pipeline de déploiement, vous pouvez voir l'exécution des étapes définies dans la spécification de commande dans la sortie et les journaux du pipeline. Pour voir la syntaxe et un exemple de la spécification de commande, reportez-vous à la section Spécification de commande.
Principaux avantages de l'ajout d'une phase de shell
- Automatisez les déploiements vers les plates-formes OCI telles que le maillage de services et les instances de conteneur à l'aide de l'interface de ligne de commande OCI et d'autres outils préinstallés. Reportez-vous à Détails de l'exécution de l'image de conteneur de shell.
L'interface de ligne de commande OCI est préauthentifiée de sorte à utiliser le principal de ressource de pipeline afin d'accéder aux ressources OCI.
- Exécutez une migration de schéma de base de données à l'aide d'outils de ligne de commande tels qu'Oracle SQL Developer Command Line (SQLcl).
- Utilisez tous les paramètres de pipeline en les référençant dans la spécification. Remplacez également les paramètres et les variables lors de l'exécution du déploiement.
- Effectuez des tests d'intégration sur les artefacts avant de les déployer vers l'environnement de production.
- Personnalisez le workflow DevOps. Par exemple, vous pouvez attendre que certaines ressources soient prêtes avant que le pipeline ne déploie des ressources supplémentaires.
Avant de créer le pipeline, vous devez disposer d'un projet DevOps et d'un artefact de spécification de commande. Les artefacts peuvent être définis de façon incorporée ou se trouver dans Artifact Registry.
- Ouvrez le menu de navigation et cliquez sur Services de développeur. Sous DevOps, cliquez sur Projets.
- Sélectionnez un projet et cliquez sur Créer un pipeline.
- Entrez le nom et la description du pipeline. L'ajout d'une description est facultatif.
- Pour Type de pipeline, sélectionnez Créer un pipeline de déploiement.
- Cliquez sur Créer un pipeline.
- Pour ajouter une phase au nouveau pipeline, cliquez sur l'icône + et sélectionnez Ajouter une phase.
- Sélectionnez Intégrations : shell, puis cliquez sur Suivant.
- Entrez le nom de la phase et éventuellement une description.
- Cliquez sur Sélectionner un artefact, puis sélectionnez l'artefact de spécification de commande à déployer.
-
Sélectionnez le compartiment pour créer l'instance de conteneur dans laquelle est exécutée la spécification.
Vous pouvez conserver le compartiment par défaut qui est affiché.
- Sélectionnez un domaine de disponibilité.
-
Choisissez une forme pour l'instance de conteneur parmi les options indiquées. Vous pouvez également sélectionner le nombre d'OCPU et la quantité de mémoire pour l'instance.
L'instance de conteneur (selon la forme de calcul sélectionnée) vous est facturée lors du déploiement en fonction du modèle de tarification des instances de conteneur. Reportez-vous à Tarification des instances de conteneur.
-
Sélectionnez un réseau cloud virtuel et un sous-réseau régional dans la location. Vous pouvez sélectionner un sous-réseau public ou privé.
Lors de l'exécution de la commande, une carte d'interface réseau virtuelle est créée dans le sous-réseau sélectionné. Assurez-vous que le sous-réseau dispose d'un chemin réseau vers OCI Container Registry. Si une commande doit gérer d'autres ressources OCI, elle doit également être gérée pour garantir que le chemin réseau et la stratégie sont configurés correctement.
- (Facultatif) Pour restreindre l'accès à votre réseau cloud virtuel, vous pouvez sélectionner des groupes de sécurité réseau dans ce dernier.
- (Facultatif) Saisissez une valeur de délai d'expiration (en secondes) pour la phase.
-
- (Facultatif) Pour ajouter des balises au pipeline, cliquez sur Afficher les options de balisage. Le balisage est un système de métadonnées permettant d'organiser et de suivre les ressources dans la location.
Si vous êtes autorisé à créer une ressource, vous disposez également des droits d'accès nécessaires pour lui ajouter des balises à format libre.
Pour ajouter une balise définie, vous devez disposer des droits d'accès permettant d'utiliser l'espace de noms de balise.
Pour plus d'informations, reportez-vous à Balises de ressource.
- Pour ajouter la phase au pipeline, cliquez sur Ajouter.
Un aperçu de phase fournit un cliché de la configuration.
Ajoutez d'autres phases au pipeline de façon séquentielle ou en parallèle, si nécessaire. Pour déployer la sortie de build vers l'environnement cible, exécutez le pipeline de déploiement. Pour déclencher automatiquement un déploiement à partir du pipeline de build, vous pouvez ajouter une étape de déclenchement de déploiement au pipeline de build.
Pour créer un pipeline de déploiement, exécutez la commande
create
:oci devops deploy-pipeline create --project-id
Pour créer une phase de shell, exécutez la commande
create-shell-stage
:oci devops deploy-stage create-shell-stage
Paramètres requis pour la commande
create-shell-stage
:--pipeline-id
--stage-predecessor-collection
--command-spec-artifact-id
--container-config
Afin d'obtenir toutes les commandes pour
deploy-pipeline
etdeploy-stage
, exécutez la commande suivante :oci devops deploy-pipeline -h
oci devops deploy-stage -h
Pour obtenir l'aide relative à la commande
create-shell-stage
, exécutez la commande suivante :oci devops deploy-stage create-shell-stage -h
Pour créer un pipeline de déploiement, utilisez l'opération
CreateDeployPipeline
.Pour ajouter une phase de shell au pipeline, utilisez l'opération
CreateDeployStage
. Pour l'attributdeployStageType
, indiquez la valeurSHELL
.