2017-08-16 2 views
2

J'ai une application Web hébergée à l'aide de atlassian Bamboo, qui est exécutée à partir d'un serveur Windows 12. Je veux créer un script python (ou quelque chose de similaire) qui va m'envoyer un email quand ce site tombe en panne. (si le problème est avec le bambou ou le serveur) Mon approche est d'employer le gestionnaire de Web de selenium pour rechercher l'URL du site, et agissez s'il n'a pas chargé ou n'a pas chargé correctement. Mon problème est l'aspect de la notification par email. J'ai essayé d'employer smtp, etc. pour envoyer un email. Cependant, google reconnaît cette approche comme l'accès à l'e-mail à partir d'une application non sécurisée, de sorte qu'il ne passera pas par. Y a-t-il une meilleure approche ou un moyen de rendre le courriel sécurisé? Toute aide serait appréciée. Je vous remercie!Configuration d'alertes par e-mail lorsqu'un site est arrêté

+1

Vous devez entrer dans vos paramètres de confidentialité google et le modifier –

+0

J'ai fait quelque chose de similaire en créant un nouveau compte Gmail pour envoyer les mails. Dans votre script, vous vous connectez ensuite à ce compte et envoyez le courrier en utilisant les serveurs de Google. Comme vous l'avez souligné, vous devez autoriser l'envoi d'e-mails par des applications non sécurisées une fois dans les paramètres du compte. – Endzeit

+0

Cela vous aidera: https://support.google.com/accounts/answer/6010255 –

Répondre

0

Cette question me perturbe beaucoup, pas étonnant je suppose, car je suis facilement confus.

Mettez de côté où l'application est en cours d'exécution - il est déployé quelque part, vous avez une URL pour cela, et vous avez du code webdriver qui frappe le site et vérifie qu'il est en place. Tout ce que vous avez travaillé, vous avez juste besoin d'une notification.

D'une certaine manière, Atlassian Bamboo est impliqué, peut-être déploie-t-il votre application sur un serveur, de sorte que vous disposez déjà d'un outil capable d'exécuter des tâches automatiquement ou à intervalles réguliers. Vous pourriez construire un plan de bambou qui fonctionne selon un calendrier cron, horaire, quotidien, peu importe. Il vérifie votre code webdriver, l'exécute, et si vous pouvez échouer le plan si le site n'est pas en place, vous pouvez utiliser les fonctionnalités de notification intégrées de bamboo. Si vous exécutez votre code webdriver à partir de tests unitaires, votre plan de bambou échouera automatiquement si le test échoue et que vous recevez votre notification.

Je ne pense pas que votre application soit hébergée en utilisant du bambou, c'est une affirmation déroutante. Bamboo est un outil CICD - pas un serveur d'applications - donc j'imagine que Bamboo est utilisé pour déployer l'application sur un serveur séparé. Mais, ce n'est pas vraiment essentiel à l'aspect exécution/notification de sélénium.

0

Heh, c'est tellement facile de réaliser ce que vous cherchez dans Jenkins ... Alors peut-être que dans Bamboo ce n'est pas si complexe? Fondamentalement, vous voulez charger la page avec Python + Webdriver et si elle ne charge pas ou ne charge pas correctement - vous voulez recevoir un email.

Je pense que vous étiez sur la bonne voie avec la configuration de SMTP, je suppose que vous le faisiez en cas d'échec de la construction. Ce qui n'est pas clair, pourquoi vous avez eu des problèmes avec les privacies de Google? Ne pouvez-vous pas utiliser un e-mail externe ([email protected]) et l'utiliser comme expéditeur? Puisque vous serez le propriétaire de ce compte, configurez-le comme vous voulez. Et envoyer une notification à l'adresse email de votre entreprise. Cela fonctionnerait-il?

+0

Je pense en cherchant plus loin que j'ai besoin d'utiliser l'API gmail et d'activer OAuth sur le courrier électronique. En règle générale, Gmail ne permet pas au code de l'envoyer par courrier électronique, sauf si l'utilisateur a activé des applications non sécurisées. (ce qui est une mauvaise idée). Donc, plutôt que de continuer avec smtp, j'essaie de faire passer mon code à l'API Gmail et j'espère que cela fonctionne? –

+0

Je vois, bien passer par l'API Gmail est toute l'histoire différente.J'ai récemment utilisé l'API de calendrier et la mise en place était très excitante :) Bonne chance! – Mykola

+0

Merci! Oui, il semble que p utile. –