Appeler une fonction

Cette étape appelle une fonction Oracle Cloud Infrastructure (OCI). L'étape Appel de fonction peut être utilisée pour exécuter du code ou une logique personnalisée sans serveur. Par exemple, vous pouvez écrire une fonction qui valide votre application dans l'environnement intermédiaire et, en cas de réussite, déployer l'application dans l'environnement de production.

Avant de commencer, vous devez définir un pipeline de déploiement et créer une fonction qui est appelée lors de l'exécution du pipeline.

    1. Ouvrez le menu de navigation et cliquez sur Services de développement. Sous DevOps, cliquez sur Projets.
    2. Sélectionnez un projet et un pipeline associé.
    3. Pour ajouter l'étape d'intégration séquentiellement ou en parallèle, cliquez sur l'icône + et sélectionnez Ajouter une étape.
    4. Sélectionnez Intégrations : Appeler la fonction, puis cliquez sur Suivant.
    5. Entrez un nom et une description pour l'étape. L'ajout d'une description est facultatif.
    6. Pour Environnement, sélectionnez une fonction existante à appeler.

      Le champ Nom de la fonction en lecture seule affiche la fonction appelée dans le pipeline.

    7. (Facultatif) Pour sélectionner et ajouter des artefacts à l'étape, cliquez sur Sélectionner un artefact.

      Sélectionnez une ressource d'artefact existante dans votre projet DevOps. L'artefact doit être un fichier de type générique (universel). Les paramètres de l'artefact doivent être au format JSON et peuvent comporter des paramètres fictifs. Vous devez cocher la case Autoriser le paramétrage lors de la configuration de la ressource d'artefact DevOps afin de remplacer les paramètres fictifs par la valeur d'argument lors du déploiement. Pour plus d'informations, voir Configuration des paramètres.

      Voici un exemple de contenu d'artefact générique pour transmettre deux paramètres définis par l'utilisateur et leurs valeurs :
      • Paramètres : test_name, app_version
      • Valeurs : {"test_name":"verify_production", "app_version":"${app_version}"}
    8. Pour Mode d'exécution d'étape, sélectionnez l'exécution asynchrone ou synchrone.

      Si vous sélectionnez Exécuter de manière asynchrone, le service appelle la fonction mais n'attend pas qu'elle se termine. Lorsque vous sélectionnez Exécuter de manière synchrone, le service appelle la fonction et attend qu'elle se termine.

    9. Cochez cette case pour désactiver ou activer la validation.

      Si la validation est activée, le service vérifie la valeur retournée par la fonction. La valeur retournée est un littéral de chaîne UTF-8, true ou false. Si la valeur retournée est true, l'étape est marquée comme Réussite. Sinon, elle est marquée comme échec.

      Si la validation est désactivée, le service ne vérifie pas la valeur retournée.

      La validation n'est effectuée que si vous avez sélectionné l'option "Exécuter de manière synchronisée" pour le mode d'exécution de l'étape.

    10. (Facultatif) Pour ajouter des marqueurs au pipeline, cliquez sur Afficher les options de marquage. Le marquage est un système de métadonnées qui vous permet d'organiser les ressources de votre location et d'en assurer le suivi.

      Si vous êtes autorisé à créer une ressource, vous êtes également autorisé à ajouter des marqueurs à structure libre à cette ressource.

      Pour ajouter un marqueur défini, vous devez être autorisé à utiliser l'espace de noms de marqueur.

      Pour plus d'informations, voir Marqueurs de ressource.

    11. Pour ajouter l'étape d'intégration au pipeline, cliquez sur Ajouter.
    Pour déployer la sortie de la compilation dans l'environnement cible, exécutez le pipeline de déploiement.

    Pour déclencher automatiquement un déploiement à partir du pipeline de création, vous pouvez ajouter une étape Déclencher le déploiement au pipeline de création.

  • Pour appeler une fonction dans le pipeline, exécutez la commande create-invoke-function-stage :

    oci devops deploy-stage create-invoke-function-stage

    Paramètres requis pour la commande create-invoke-function-stage :

    • --function-environment-id
    • --is-async
    • --is-validation-enabled
    • --pipeline-id
    • --stage-predecessor-collection

    Pour afficher toutes les commandes pour deploy-pipeline et deploy-stage :

    oci devops deploy-pipeline -h
    oci devops deploy-stage -h

    Pour obtenir de l'aide sur la commande create-invoke-function-stage :

    oci devops deploy-stage create-invoke-function-stage -h
  • Pour appeler une fonction dans le pipeline, utilisez l'opération CreateDeployStage. Pour l'attribut deployStageType, spécifiez la valeur INVOKE_FUNCTION.