Programmation d'une fonction
Découvrez comment programmer une fonction avec le service des fonctions pour OCI.
Pour les préalables et plus d'informations, voir Fonctions de programmation.
- Lorsque vous utilisez la console pour programmer des fonctions, vous pouvez créer un nouveau programme de ressources dans le planificateur de ressources et ajouter une fonction au programme de ressources à l'aide des éléments suivants : - Pages de la console du service des fonctions pour OCI
- Pages de console du planificateur de ressources
 - Notez que si vous voulez modifier ou supprimer un programme de ressources existant ou supprimer une fonction d'un programme de ressources, vous devez utiliser les pages de la console du programmateur de ressources (pour plus d'informations, voir Gestion des programmes dans la documentation du programmateur de ressources). - Pour programmer une fonction à l'aide des pages de la console du service des fonctions pour OCI afin de créer une programmation dans le programmateur de ressources : - Dans la page de liste Applications, sélectionnez l'application qui contient la fonction avec laquelle vous voulez travailler. Si vous avez besoin d'aide pour trouver la page de liste ou l'application, voir Liste des applications.
- 
Sélectionnez l'onglet Fonctions. La page de liste Fonctions s'ouvre. Toutes les fonctions de l'application sélectionnée sont affichées dans un tableau. 
- Sélectionnez le nom de la fonction à programmer, puis sélectionnez Programmes pour afficher la page Programmes de la fonction.Tous les programmes existants dans le compartiment courant auquel la fonction a déjà été ajoutée sont affichés. 
- Dans la page Programmations de la console du service des fonctions pour OCI, sélectionnez Ajouter une programmation pour ajouter la fonction à une programmation.Vous pouvez ajouter la fonction à un nouveau programme que vous créez (comme décrit dans cette section), ou ajouter la fonction à un programme existant que vous (ou quelqu'un d'autre) avez déjà créé. 
- Sélectionnez Créer un nouveau programme et spécifiez les détails suivants :- Nom : Nom de votre choix pour le nouveau programme de ressources. Évitez d'entrer des informations confidentielles.
- Description : (Facultatif) Description significative du nouveau programme de ressources.
- compartiment : compartiment dans lequel créer le nouveau programme de ressources.
 
- 
Indiquez comment vous souhaitez entrer les détails de l'échéancier en sélectionnant l'une des options suivantes : - Interface de formulaire : Sélectionnez cette option pour définir la programmation à l'aide des champs de l'interface utilisateur.
- Expression Cron : Sélectionnez cette option pour définir la programmation en entrant une expression Cron.
 
- Si vous avez sélectionné Interface de formulaire pour définir le programme, utilisez le champ Intervalle pour sélectionner l'intervalle de temps du programme et spécifiez d'autres détails appropriés pour l'intervalle de temps comme suit :- Une fois : Entrez l'heure et la date UTC à laquelle le calendrier doit commencer.
- Horaire : Entrez la fréquence à laquelle le calendrier doit être répété (1 = toutes les heures, 2 = toutes les deux heures, 3 = toutes les trois heures), l'heure et la date UTC à laquelle le calendrier doit commencer et (facultatif) la date à laquelle le calendrier doit se terminer.
- Quotidien : Entrez la fréquence de répétition de l'horaire (1 = tous les jours, 2 = tous les deux jours, 3 = tous les trois jours), l'heure et la date UTC à laquelle l'horaire doit commencer et (facultatif) la date à laquelle l'horaire doit se terminer.
- Hebdomadaire : Entrez la fréquence à laquelle le programme doit se répéter (1 = chaque semaine, 2 = toutes les deux semaines, 3 = toutes les trois semaines), les jours de la semaine où le programme doit exécuter la fonction, l'heure UTC et la date à laquelle le programme doit commencer, et (facultatif) la date à laquelle le programme doit se terminer.
- Mensuel : Entrez la fréquence à laquelle le programme doit se répéter (1 = tous les mois, 2 = tous les deux mois, 3 = tous les trois mois), les jours du mois où le programme doit exécuter la fonction, l'heure UTC et la date à laquelle le programme doit commencer, et (facultatif) la date à laquelle le programme doit se terminer.
 Le champ Sommaire affiche une version textuelle du programme que vous entrez. 
- Si vous avez sélectionné Expression Cron pour définir le programme, entrez les détails suivants :- Expression Cron : Entrez une expression Cron valide pour définir l'intervalle de programmation. Par exemple :- Pour définir le calendrier d'exécution de la fonction chaque semaine à 13:30 UTC les lundi, mardi, mercredi, jeudi et vendredi, entrez :30 13 * * mon-fri
- Pour définir le programme d'exécution de la fonction toutes les 2 heures le 15e jour de chaque mois, entrez :0 */2 15 * *
 
- Pour définir le calendrier d'exécution de la fonction chaque semaine à 13:30 UTC les lundi, mardi, mercredi, jeudi et vendredi, entrez :
- Heure : Entrez l'heure UTC à laquelle le programme doit commencer.
- Date de début : Entrez la date à laquelle le calendrier doit commencer.
- Date de fin : (Facultatif) Entrez la date à laquelle le calendrier doit se terminer.
 Pour plus d'informations sur les expressions Cron, voir Utilisation d'une expression Cron dans la documentation sur le programmateur de ressources. 
- Expression Cron : Entrez une expression Cron valide pour définir l'intervalle de programmation. Par exemple :
- (Facultatif) Pour transmettre des arguments et des valeurs à la fonction, sélectionnez l'option Add invocation payload (Ajouter les données utiles d'appel) et entrez les arguments et les valeurs dans le format attendu par la fonction. Si la fonction attend des arguments et des valeurs dans le format JSON, utilisez un format JSON valide.
- (Facultatif) Pour appliquer des marqueurs à la ressource, sélectionnez Ajouter un marqueur. Si vous avez l'autorisation de créer une ressource, vous avez également l'autorisation d'appliquer des marqueurs à structure libre à cette ressource. Pour appliquer un marqueur défini, vous devez être autorisé à utiliser l'espace de noms de marqueur. Pour plus d'informations sur le marquage, voir Marqueurs de ressource. Si vous ne savez pas si vous devez appliquer des marqueurs, ignorez cette option ou demandez à un administrateur. Vous pouvez appliquer des marqueurs plus tard.
- 
Sélectionnez Créer pour créer le programme et y ajouter la fonction. Le nouveau programme de ressources est affiché dans la page Programmations de la fonction dans la console du service des fonctions pour OCI. Après avoir créé le programme de ressources et y avoir ajouté une fonction, vous devez créer à la fois un groupe dynamique avec une règle qui inclut l'OCID du programme de ressources et un énoncé de politique qui accorde au groupe dynamique l'accès à la fonction : 
- Sélectionnez le programme de ressources pour afficher ses détails dans la console du programmateur de ressources et copiez l'OCID du programme. Par exemple, ocid1.resourceschedule.oc1.phx.amaaaaaa3______owq.
- Créez un groupe dynamique en suivant les instructions dans Pour créer un groupe dynamique, donnez un nom au groupe dynamique (par exemple, resource-scheduler-prod-dynamic-group) et spécifiez une règle pour le groupe dynamique comme suit :ALL {resource.type='resourceschedule', resource.id='<resource-schedule-OCID>'}où <resource-schedule-OCID>est l'OCID du programme de ressources que vous avez copié précédemment. Par exemple :ALL {resource.type='resourceschedule', resource.id='ocid1.resourceschedule.oc1.phx.amaaaaaa3______owq'}
- Créez une politique pour accorder au nouveau groupe dynamique l'accès aux fonctions du service des fonctions pour OCI en suivant les instructions sous Pour créer une politique, donnez un nom à la politique (par exemple, resource-scheduler-prod-dyn-grp-policy) et spécifiez un énoncé de politique similaire à ce qui suit :Allow dynamic-group <dynamic-group-name> to manage functions-family in tenancyoù <dynamic-group-name>est le nom du groupe dynamique que vous avez créé à l'étape précédente. Par exemple :Allow dynamic-group resource-scheduler-prod-dynamic-group to manage functions-family in tenancy
 - La fonction est maintenant appelée en fonction de la planification des ressources que vous avez définie. - Pour programmer une fonction à l'aide des pages de la console du programmateur de ressources afin de créer une programmation dans le programmateur de ressources : - Connectez-vous à la console en tant que développeur de fonctions.
- Ouvrez le menu de navigation et sélectionnez Gouvernance et administration. Sous Programmateur de ressources, sélectionnez Programmations.
- Sélectionnez la région que vous utilisez avec le service des fonctions pour OCI. Nous vous recommandons d'utiliser la même région que le registre Docker spécifié dans le contexte de l'interface de ligne de commande Fn Project. Voir Création d'un contexte d'interface de ligne de commande Fn Project pour se connecter à Oracle Cloud Infrastructure. 
- Dans la page Programmes de la console du programmateur de ressources, sélectionnez Créer un programme pour créer un nouveau programme de ressources.
- Dans la page Informations de base, spécifiez les valeurs suivantes pour le programme de ressources :- Nom du programme : Nom de votre choix pour le programme de ressources. Évitez d'entrer des informations confidentielles.
- Description du programme : (Facultatif) Description significative du programme de ressources.
- Action à exécuter : Sélectionnez Démarrer.
- compartiment : compartiment dans lequel créer le programme de ressources.
- Afficher les options avancées : Sélectionnez cette option pour appliquer des marqueurs à la ressource. Si vous êtes autorisé à créer une ressource, vous disposez également des autorisations nécessaires pour appliquer des marqueurs à structure libre à cette ressource. Pour appliquer un marqueur défini, vous devez être autorisé à utiliser l'espace de noms de marqueur. Pour plus d'informations sur le marquage, voir Marqueurs de ressource. Si vous ne savez pas si vous devez appliquer des marqueurs, ignorez cette option ou demandez à un administrateur. Vous pouvez appliquer des marqueurs plus tard.
 
- Sélectionnez Suivant.
- Dans la page Ressources, sélectionnez la fonction à programmer comme suit :- Dans les options Méthode de sélection des ressources, sélectionnez l'option Statique - Appliquer le programme à des ressources spécifiques.
- Dans la zone Rechercher et filtrer, utilisez le filtre par défaut (Tout le compartiment) pour rechercher des ressources dans tous les compartiments, ou sélectionnez Compartiment pour sélectionner un compartiment spécifique dans lequel rechercher des ressources.
- Dans la zone Rechercher et filtrer, sélectionnez Type de ressource.
- Sélectionnez FunctionsFunction dans la liste des types de ressource (désélectionnez tous les autres types de ressource sélectionnés), puis sélectionnez Appliquer.Les fonctions du compartiment que vous avez sélectionné s'affichent. 
- Sélectionnez la fonction à programmer.
 
- Sélectionnez Suivant.
- Dans la page Programmation, spécifiez quand et à quelle fréquence vous voulez que la fonction s'exécute, et quand le programme de ressources doit commencer et se terminer.Pour plus d'informations sur la configuration d'un programme de ressources, voir Ajout d'informations sur le programme. 
- Sélectionnez Suivant.
- Dans la page Vérifier, confirmez les informations que vous avez entrées et sélectionnez Créer un programme pour programmer la fonction.Le nouveau programme de ressources est affiché dans la page Programmations de la console du programmateur de ressources. Après avoir créé le programme de ressources et y avoir ajouté une fonction, vous devez créer à la fois un groupe dynamique avec une règle qui inclut l'OCID du programme de ressources et un énoncé de politique qui accorde au groupe dynamique l'accès à la fonction : 
- Sélectionnez le programme de ressources pour afficher ses détails et copiez l'OCID du programme. Par exemple, ocid1.resourceschedule.oc1.phx.amaaaaaa3______owq.
- Créez un groupe dynamique en suivant les instructions dans Pour créer un groupe dynamique, donnez un nom au groupe dynamique (par exemple, resource-scheduler-prod-dynamic-group) et spécifiez une règle pour le groupe dynamique comme suit :ALL {resource.type='resourceschedule', resource.id='<resource-schedule-OCID>'}où <resource-schedule-OCID>est l'OCID du programme de ressources que vous avez copié précédemment. Par exemple :ALL {resource.type='resourceschedule', resource.id='ocid1.resourceschedule.oc1.phx.amaaaaaa3______owq'}
- Créez une politique pour accorder au nouveau groupe dynamique l'accès aux fonctions du service des fonctions pour OCI en suivant les instructions sous Pour créer une politique, donnez un nom à la politique (par exemple, resource-scheduler-prod-dyn-grp-policy) et spécifiez un énoncé de politique similaire à ce qui suit :Allow dynamic-group <dynamic-group-name> to manage functions-family in tenancyoù <dynamic-group-name>est le nom du groupe dynamique que vous avez créé à l'étape précédente. Par exemple :Allow dynamic-group resource-scheduler-prod-dynamic-group to manage functions-family in tenancy
 - La fonction est maintenant appelée en fonction de la planification des ressources que vous avez définie. 
- Utilisez la commande resource-scheduler schedule create du programmateur de ressources et les paramètres requis pour programmer une fonction. - Pour plus d'informations, voir Création de programmes - Pour la liste complète des indicateurs et options de variable des commandes de l'interface de ligne de commande OCI, voir Informations de référence sur la ligne de commande. 
- Utilisez l'API du programmateur de ressources CreateSchedule pour programmer une fonction.