Fermer

juillet 29, 2024

Transformer les notifications : transition des connecteurs Office 365 vers les workflows

Transformer les notifications : transition des connecteurs Office 365 vers les workflows


Introduction

À mesure que Microsoft Teams évolue, ses caractéristiques et fonctionnalités évoluent également. Récemment, Microsoft a annoncé la dépréciation des connecteurs O365 au sein de Teams, encourageant les utilisateurs à migrer vers l’application Workflows, plus flexible et sécurisée. Si vous comptez sur les connecteurs O365 pour les notifications et les intégrations, ce blog vous aidera à passer en douceur à l’utilisation des Workflows.

notification

notification

Ce guide décrit les avantages de passer à Automatiser les flux de travail et des mesures pratiques pour mettre en œuvre ce changement de manière efficace.

puissance automatiser

puissance automatiser

Comprendre la dépréciation

La dépréciation des connecteurs O365 au sein de Teams signifie que ces connecteurs ne fonctionneront plus. Ce changement vise à améliorer la sécurité et à fournir des capacités d’intégration plus robustes via l’application Workflows. Voici ce que vous devez savoir :

  1. Horaire: Démarrage 15 août 2024, toute nouvelle création de connecteur sera bloquée. Par 1er octobre 2024, tous les connecteurs existants cesseront de fonctionner. Annonce officielle ici.
  2. Impact: Les notifications et intégrations actuellement gérées par les connecteurs O365 cesseront de fonctionner. Vous devez migrer vers Workflows pour conserver ces fonctionnalités.

Pourquoi Transitionner ?

  1. Retraite prochaine: Les connecteurs O365 seront totalement obsolètes d’ici le 1er octobre 2024, ce qui rendra impératif la migration vers une solution prise en charge.
  2. Fonctionnalités améliorées: Les workflows Power Automate offrent des fonctionnalités plus robustes pour automatiser les processus, personnaliser les notifications et s’intégrer à une gamme plus large de services.
  3. Sécurité et conformité: Les workflows Power Automate sont construits sur une architecture sécurisée, conforme aux initiatives de Microsoft pour protéger les données des utilisateurs.

Avantages des flux de travail Power Automate

  1. Une plus grande flexibilité: Vous pouvez créer des cartes adaptatives qui permettent des interactions riches, telles que des boutons et des liens, améliorant ainsi l’engagement des utilisateurs.
  2. Contenu dynamique: Les flux de travail peuvent extraire des paramètres de travail, rendant les messages plus informatifs et adaptés aux besoins de votre équipe.
  3. Larges options d’intégration: Power Automate prend en charge un large éventail de services, permettant des notifications transparentes sur différentes plates-formes.

Guide de migration étape par étape

Étape 1 : configurer les flux de travail dans MS Teams.

  • Connectez-vous à votre compte Microsoft Teams. Recherchez les flux de travail dans le panneau de gauche.
  • Cliquez sur créer un nouveau flux.
créer un flux de travail

créer un flux de travail

  • Sélectionnez le modèle « Publier sur une chaîne lorsqu’une demande de webhook est reçue»
Flux de travail de configuration

Flux de travail de configuration

  • Ensuite, fournissez le nom du flux.
créer un flux de travail

créer un flux de travail

  • Ensuite, nous devons configurer le flux en fournissant l’équipe Microsoft et le canal de l’équipe Microsoft dans lequel nous souhaitons envoyer des alertes.
Configurer le flux

Configurer le flux

  • Enfin, cliquez sur Créer un flux et copiez la chaîne secrète qui sera utilisée par Jenkins pour POST HTTP demandes d’envoi de notifications.
créer un flux

créer un flux

Étape 2 : configurer Jenkins pour l’envoi d’alertes

  • Connectez-vous Jenkins. Cliquer sur Gérer Jenkins et puis informations d’identification.
Jenkins

Jenkins

Identifiants Jenkins

Identifiants Jenkins

  • Créez des informations d’identification. En nature, sélectionnez le texte secret et entrez le webhook copié dans le secret. Fournissez l’ID qui sera utilisé dans Jenkinsfile pour l’envoi d’alertes. Cliquez sur Créer.
Identifiants Jenkins

Identifiants Jenkins

Étape 3 : configurez la bibliothèque partagée Jenkins.

  • Ici, nous utilisons la bibliothèque partagée Jenkins pour centraliser la logique de notification afin de promouvoir la réutilisation dans plusieurs projets.
  • Cela nous aidera à mettre à jour les formats et la logique de notification en un seul endroit, allégeant ainsi la charge des équipes de développement.
    Bibliothèque partagée Jenkins

    Bibliothèque partagée Jenkins

  • Configurez une action HTTP POST pour les notifications Jenkins afin d’envoyer des données à votre canal Teams. Utilisez le format de carte adaptatif pour créer votre message.
  • Contenu de jenkinsNotifications.groovy :
def notify(String status, String message, String credentialsId) {
  def colors = [
      'Success': 'Good', // green
      'Failure': 'Attention' // red
  ]

  if (!colors.containsKey(status)) {
      error "Invalid status: $status"
  }

  def color = colors[status]

  def title = "Jenkins Build Notification"

  withCredentials([string(credentialsId: "${credentialsId}", variable: 'webhookUrl')]) {
      def payload = [
        "type": "message",
        "attachments": [
            [
              "contentType": "application/vnd.microsoft.card.adaptive",
              "content": [
                  "\$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
                  "type": "AdaptiveCard",
                  "version": "1.3",
                  "body": [
                    [
                        "type": "TextBlock",
                        "size": "Medium",
                        "weight": "Bolder",
                        "text": "${title}"
                    ],
                    [
                        "type": "ColumnSet",
                        "columns": [
                          [
                              "type": "Column",
                              "items": [
                                [
                                    "type": "Image",
                                    "style": "Person",
                                    "url": "https://ftp-chi.osuosl.org/pub/jenkins/art/jenkins-logo/1024x1024/logo.png",
                                    "altText": "Jenkins",
                                    "size": "Medium"
                                ]
                              ],
                              "width": "auto"
                          ],
                          [
                              "type": "Column",
                              "items": [
                                [
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Jenkins Notification",
                                    "wrap": true
                                ]
                              ],
                              "width": "auto"
                          ]
                        ]
                    ],
                    [
                        "type": "TextBlock",
                        "weight": "Bolder",
                        "color": "${color}",
                        "text": "${status}",
                        "wrap": true
                    ],
                    [
                        "type": "TextBlock",
                        "text": "${message}",
                        "wrap": true
                    ]
                  ]
              ]
            ]
        ]
      ]

      def response = httpRequest(
        httpMode: 'POST',
        contentType: 'APPLICATION_JSON',
        requestBody: groovy.json.JsonOutput.toJson(payload),
        url: webhookUrl
      )

      echo "Response: ${response}"
  }
}

Étape 4 : Mettez à jour la configuration de la tâche Jenkins pour appeler la bibliothèque partagée.

@Library('your-shared-library') _
pipeline {
    agent any
    stages {
        stage('Build') {
            steps {
                // Your build steps here
            }
        }
    }
    post {
        success {
            script {
                def successMessage = """\
              ${appName} application Jenkins Job SUCCESS in ${envName} environment.\n
            Jenkins Build URL: ${BUILD_URL}\n
              Jenkins Build Number: ${BUILD_NUMBER}\n
            """.stripIndent()
                // Call the shared library method
                jenkinsNotifications.notify("Success", successMessage, "jenkins-test-success")
            }
        }
    }
}

Étape 5 : tester et valider

  • Exécutez une tâche de test pour vous assurer que les notifications sont envoyées correctement.
  • Vérifiez le canal Teams pour vérifier que les messages apparaissent comme prévu.
Alerte Microsoft Teams

Alerte Microsoft Teams

Étape 6 : Itérer en fonction des commentaires

Recueillez les commentaires de votre équipe sur le nouveau format de notification et apportez les ajustements nécessaires pour améliorer la clarté et l’engagement.

Conclusion

Migrer de O365Connecteur à Automatiser les flux de travail est une décision stratégique qui maintiendra vos notifications Jenkins fonctionnelles et améliorera leur efficacité. En suivant les étapes décrites, les équipes peuvent assurer une transition en douceur, en maintenant la communication et la collaboration à l’ère du DevOps moderne.

À AU NOUVEAU, nous nous engageons à vous aider à gérer cette migration et d’autres travaux liés à Jenkins et Microsoft. Notre expertise garantit une transition et une optimisation transparentes de vos flux de travail, améliorant ainsi vos processus DevOps globaux. Associez-vous à nous pour un parcours rationalisé et efficace dans l’adoption des derniers outils et technologies.

VOUS TROUVEZ CECI UTILE ? PARTAGEZ-LE






Source link