Création de notre function app
Après la théorie, la pratique ! Connectez vous au portail Azure, cliquez sur « Create a resource » et recherchez « Function App ». Cliquez sur Create.
Renseignez les informations nécessaires et créez la ressource.
![](https://gw-flamant.dev/wp-content/uploads/2020/09/image-2.png)
Pour le moment, nous avons juste créé la ressource qui va contenir nos functions. Cliquez sur « Functions » dans le menu contextuel de gauche. C’est ici que nous créerons notre function.
Création du blob storage
Cliquez sur « Create a resource » et cherchez « Storage account »
Puis configurez la ressource. Pour les tests, pensez à passer le blob access tier à « cool ». En effet, en « hot », la donnée sera accessible plus rapidement. On l’utilise quand les données sont souvent utilisées ! En cool c’est l’inverse. Vous vous doutez sûrement que le prix n’est pas le même…
Cliquez sur « Review + Create » et créez la ressource. Une fosi déployée, accédez à la ressource. Dans la barre qui se situe à gauche, cliquez sur « Containers » puis sur « + Containers » pour créer le container qui va contenir notre fameux fichier texte !
Nommez votre container « text-files« . Définissez son niveau d’accès. Je choisi « Private » pour mon test. Si vous voulez en savoir plus sur le « Public access level », n’hésitez pas à consulter la documentation ici.
Félicitations ! Vous venez de créer un « container », qui va contenir le fameux fichier texte que nous allons analyser !
Création de la ressource SendGrid
Dernière étape avant de passer au vif du sujet. C’est cette configuration qui nous permettra d’envoyer un e-mail.
De la même manière que pour le storage account, recherchez cette fois-ci « SendGrid Account ». Comme d’habitude, cliquez sur « Add », renseignez les informations demandées, Review + Create… Pensez à valider votre adresse e-mail auprès de SendGrid.
Lorsque la ressource SendGrid sera disponible, dans « overview », cliquez sur « Sender Identity ».
Cliquez sur « Create a Single Sender » puis renseignez les informations demandées. Enfin, cliquez sur « create ». Il est nécessaire de valider l’adresse e-mail utilisée par le « sender ».
![](https://gw-flamant.dev/wp-content/uploads/2020/11/tempsnip-1.png)
![](https://gw-flamant.dev/wp-content/uploads/2020/11/tempsnip-2.png)
Rendez-vous maintenant sur le « Dashboard » de Sengrid (disponible via le menu à gauche). Cliquez ensuite sur « Start » dans la section « Integrate using our Web API or SMTP Relay ».
Sélectionnez Web API.
Sélectionnez Node.JS.
Créez ensuite une « api key ». Notez bien la clé générée car elle nous servira dans l’article suivant !
Création et test de la configuration
Ça y est, nous y sommes enfin. Toutes les ressources nécessaires au projet sont là. Il est temps de créer et d’implémenter notre AZURE FUNCTION !
Rendez-vous sur votre ressource Function App créée précédemment. Dans le menu de gauche, cliquez sur Functions puis sur « Add ».
Une fenêtre va s’ouvrir et nous demander quel type de trigger nous voulons utiliser. Dans notre cas, nous allons utiliser un « Azure Blob Storage Trigger ».
Petite parenthèse, pour ceux qui l’ont oublié, voici un rappel de l’implémentation désirée : choix technique.
Renseignez le nom de la fonction puis le chemin qui sera surveillé dans votre blob storage. Souvenez vous, nous avons créé le container « text-files ». Ajoutez « /{name} » derrière le nom du container. Vous pouvez vous servir de ce paramètre pour filtrer. On aurait pu mettre « /{name}.pdf » pour déclencher uniquement sur un fichier pdf !
Appuyez sur le bouton « new » et sélectionnez le compte blob que l’on a créé pour créer un lien vers notre storage. Enfin, appuyez sur le bouton « Create Function » pour finaliser.
Patientez un peu le temps que la function soit crée puis, dans le menu de gauche, cliquez sur « Code + Test ». C’est ici que se trouve le code qui sera déclenché lorsqu’un nouveau fichier sera déposé.
![](https://gw-flamant.dev/wp-content/uploads/2020/11/tempsnip-6.png)
Testons ce code tout de suite. Ouvrez un nouvel onglet et rendez-vous dans votre « storage account » puis sélectionnez votre container. Celui que nous avons créé plus haut (text-files).
Cliquez sur « upload ». Dans la fenêtre contextuelle qui s’est ouverte, sélectionnez un fichier à upload puis cliquez sur « upload ». Personnellement, j’ai créé un fichier « test.txt » contenant « BONJOUR ».
Retournez sur l’onglet de votre function et cliquez sur « logs » en bas de l’écran. Super, notre fichier a bien été détecté !
Il arrive que les logs ne s’affichent pas forcément bien après un certains temps ou si il y a beaucoup de logs. N’hésitez pas à refresh la page si les logs ne s’affichent pas et relancez le test.
Maintenant que nous savons que ça fonctionne, il est temps de passer à l’implémentation dans le troisième et dernier chapitre de ce tutoriel !