Ajouter des actions Jira Cloud

Lorsque les actions Jira sont activées, les utilisateurs finaux peuvent demander à l'assistant d'effectuer les actions Jira Cloud suivantes :

  • Créer des problèmes Jira
  • Modifier les problèmes Jira

Par exemple, un utilisateur peut saisir "crée une story Jira intitulée 'Lancer le projet Y' dans le projet ABC" ou "modifie le titre du ticket Jira JCD-1 en 'Lancer le projet Y'" dans votre application. L'assistant demande des informations supplémentaires si nécessaire, puis demande à l'utilisateur de confirmer la demande de création ou de modification.

L'assistant peut lire et modifier les champs Jira suivants à l'aide d'actions :

Champ Description
ID du problème Obligatoire. ID du problème à modifier, par exemple KAN-123.
Titre Titre du problème.
Type de problème Type de problème.
Priorité Priorité du problème.
État État du problème.
Description Description du problème au format Markdown.
Composant Composant du problème.
Personne responsable Personne à laquelle le problème est attribué, par exemple user@google.com.

Configurer l'authentification et les autorisations dans Jira

Avant d'activer les actions Jira, un administrateur Jira doit configurer des identifiants OAuth 2.0 dédiés pour les actions dans Jira. Cette étape est nécessaire pour connecter votre intégration Jira et autoriser les actions de lecture et d'écriture.

Les clients d'autorisation pour les actions Jira sont différents de ceux pour l'ingestion des données Jira. Ils utilisent des autorisations et une configuration d'URL de rappel différentes. Pour savoir comment configurer des clients d'autorisation pour les connecteurs Jira Cloud afin d'ingérer des données, consultez Connecter Jira Cloud.

Ces instructions expliquent comment créer un ID client et un code secret du client dans la console Atlassian Developer, configurer les niveaux d'accès OAuth 2.0 requis et configurer les autorisations pour les utilisateurs. Enfin, récupérez l'URL et l'ID de votre instance, configurez les rôles et authentifiez-vous pour lire et écrire des données entre Jira Cloud et Google.

Créer un ID client et code secret du client

  1. Connectez-vous à developer.atlassian.com.
  2. Cliquez sur l'icône de profil en haut à droite, puis sélectionnez Console pour les développeurs.
  3. Cliquez sur Create (Créer), puis sélectionnez OAuth 2.0 Integration (Intégration OAuth 2.0).
  4. Saisissez un nom pour l'application.
    • Cochez la case des conditions d'utilisation.
    • Cliquez sur Créer.
  5. Cliquez sur Authorization (Autorisation).
  6. Dans le tableau Authorization type (Type d'autorisation), sélectionnez Add (Ajouter) pour OAuth 2.0 (3LO).
  7. Dans le champ Callback URL (URL de rappel), saisissez https://vertexaisearch.cloud.google.com/oauth-redirect, puis cliquez sur Enregistrer les modifications.
  8. Cliquez sur Autorisations :

    1. Accédez à l'API Jira, cliquez sur Add (Ajouter), puis sur Configure (Configurer).
    2. Accédez à l'onglet Classic scopes (Niveaux d'accès classiques), puis cliquez sur Edit Scopes (Modifier les niveaux d'accès). Sélectionnez les niveaux d'accès suivants, puis enregistrez vos modifications :

      • Niveaux d'accès classiques :

        • read:jira-work
        • read:jira-user
        • write:jira-work
      • Niveaux d'accès précis :

        • read:user:jira
  9. Cliquez sur Distribution, sélectionnez Modifier, puis procédez comme suit :

    1. Sélectionnez d'abord la case d'option Sharing (Partage) pour pouvoir modifier d'autres champs.
    2. Remplissez les champs restants.
      1. Pour Fournisseur, sélectionnez Google.
      2. Dans le champ Privacy policy (Règles de confidentialité), saisissez https://policies.google.com.
      3. Dans le champ Does your app store personal data? (Votre application stocke-t-elle des données à caractère personnel ?), sélectionnez Yes.
      4. Cochez la case I confirm that I've implemented the personal data reporting API (Je confirme avoir implémenté l'API de reporting des données à caractère personnel).
    3. Cliquez sur Enregistrer les modifications.
  10. Sélectionnez Settings (Paramètres) pour copier votre ID client et votre code secret du client.

Récupérer l'URL et l'ID d'instance

Pour obtenir l'URL de l'instance :

  1. Accédez à atlassian.net, puis connectez-vous avec votre compte administrateur.
  2. Sélectionnez l'application que vous souhaitez synchroniser. Par exemple, synchronisez la première application.
  3. Recherchez l'URL de l'instance, qui correspond au sous-domaine dans la barre d'adresse.

Pour obtenir l'ID d'instance :

  1. Ouvrez un nouvel onglet, copiez l'URL de l'instance et ajoutez /_edge/tenant_info à l'URL de l'instance. Exemple : https://YOUR-INSTANCE.atlassian.net/_edge/tenant_info.
  2. Accédez au lien pour trouver la valeur cloudId. cloudId est l'ID de votre instance.

Configurer des autorisations et des rôles

  1. Connectez-vous à atlassian.com avec votre compte administrateur.
  2. Cliquez sur l'icône de menu en haut à gauche ou accédez à admin.atlassian.com.
  3. Sur la page Admin, cliquez sur Gérer les utilisateurs, puis accédez à la page Groupes.
  4. Cliquez sur Créer un groupe. Saisissez un nom pour le groupe et créez-le.
  5. Dans la section Accès aux produits du groupe de la page de votre nouveau groupe, cliquez sur Ajouter des produits au groupe.
  6. Pour Jira, sélectionnez Administrateur de l'accès utilisateur comme rôle produit.
  7. Pour Administrateur Jira, sélectionnez Administrateur de produit comme rôle de produit, puis enregistrez vos modifications.
  8. Sur la page Groupes, cliquez sur Ajouter des membres au groupe, puis ajoutez les utilisateurs ou les comptes que le connecteur utilisera pour l'authentification.

Obtenir un jeton d'actualisation

Si vous prévoyez de configurer des actions Jira à l'aide de la console Google Cloud , vous n'avez pas besoin d'obtenir de jeton d'actualisation.

Si vous devez utiliser l'API pour configurer vos actions Jira, un jeton d'actualisation est requis. Pour obtenir un jeton d'actualisation :

  1. Accédez à votre application dans la console Google Cloud .
  2. Sélectionnez Autorisation.
  3. Sélectionnez Configurer à côté de OAuth 2.0 (3LO).
  4. Pour l'URL de redirection, utilisez un espace réservé tel que https://example.com.
  5. Pour obtenir un jeton d'actualisation dans votre flux d'autorisation initial, ajoutez offline_access au paramètre d'étendue de l'URL d'autorisation. Exemple : https://auth.atlassian.com/authorize?audience=api.atlassian.com&client_id=your_client_id**&scope=offline_access**%20read%3Ajira-user&redirect_uri=https%3A%2F%2Fyour-redirect-url&state=%24%7BYOUR_USER_BOUND_VALUE%7D&response_type=code&prompt=consent
  6. Une fois l'autorisation accordée, vous êtes redirigé vers l'URL de redirection. Dans la barre d'adresse, vous devriez voir un paramètre de requête appelé "code". Notez sa valeur.
  7. Utilisez des outils tels que curl ou Postman pour envoyer une requête POST à https://auth.atlassian.com/oauth/token, avec un objet JSON comportant les clés suivantes :

    1. grant_type : authorization_code
    2. client_id : votre ID client
    3. client_secret : votre code secret du client
    4. code : code obtenu à l'étape 6
    5. redirect_uri : votre URI de redirection
  8. Vous recevrez un refresh_token dans la réponse.

Pour en savoir plus sur les jetons d'actualisation, consultez Implémenter le flux de jetons d'actualisation dans la documentation Atlassian.

Configurer une action Jira

Cette section explique comment créer un connecteur Jira pour les actions et activer les actions Jira pour votre assistant.

Avant de commencer

Avant de configurer vos actions, assurez-vous d'avoir effectué les étapes suivantes :

  • Votre projet doit être ajouté à la liste d'autorisation pour les actions de l'Assistant.
  • Un administrateur Jira a suivi les étapes décrites dans Configurer l'authentification et les autorisations dans Jira et vous a fourni les informations suivantes :
    • ID client
    • Code secret du client
    • ID d'instance
    • Jeton d'actualisation. Cette étape n'est requise que pour créer des actions Jira via l'API au lieu de la console Google Cloud . Google recommande de créer des actions dans la console Google Cloud .

Configurer les actions Jira dans la console Google Cloud

Google recommande de créer des actions dans la console Google Cloud .

Pour ajouter des actions à votre application à l'aide de la console, procédez comme suit :

  1. Dans la console Google Cloud , accédez à la page Gemini Enterprise.
  2. Accédez à votre application.
  3. Dans le menu de navigation, cliquez sur Actions.
  4. Pour Jira, cliquez sur Connecter.
  5. Sélectionnez une instance Jira.
  6. Si vous y êtes invité, saisissez les informations d'autorisation pour votre connecteur. Cette étape n'est requise que si l'instance n'a pas encore été configurée pour une action.
  7. Sélectionnez les actions à activer.
  8. Cliquez sur Terminer la configuration. Votre action s'affiche sur la page Actions.

Créer et activer des actions Jira à l'aide de l'API

Google vous recommande de créer des actions dans la console Google Cloud . Si vous devez créer des actions à l'aide de l'API, procédez comme suit :

  1. Créez un connecteur Jira et configurez-le pour la recherche :

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-GFE-SSL: yes" \
    -H "X-Goog-User-Project: PROJECT_NUMBER" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/global:setUpDataConnector" \
    -d '{
      "collectionId": "COLLECTION_ID",
      "collectionDisplayName": "COLLECTION_DISPLAY_NAME",
      "dataConnector": {
        "dataSource": "jira",
        "params": {
          "client_id": "{Client ID of your Jira integration}",
          "client_secret": "{Client Secret of your Jira integration}",
          "refresh_token": "{Refresh Token of your Jira integration}",
          "instance_id": "{Your Jira Cloud instance ID}"
        },
        "refreshInterval": "{ >1800 }s",
        "entities": [
          {
            "entityName" : "project",
            "params" : {
              "inclusion_filters" : {}
            }
          },
          {
            "entityName": "{attachment/comment/issue/worklog}" // Optional, you can build up to 4 different entities
          }
        ],
        "syncMode": "PERIODIC"
      }
    }
    

    Remplacez les éléments suivants :

    • PROJECT_NUMBER : numéro de votre projet Google Cloud .
    • COLLECTION_ID : ID de la collection.
    • COLLECTION_DISPLAY_NAME : nom à afficher pour la collection.
  2. Incluez les configurations d'action dans votre connecteur Jira :

    curl -X PATCH \
      -H "Authorization: Bearer $(gcloud auth print-access-token --project "PROJECT_NUMBER")" \
      -H "Content-Type: application/json" \
      -H "X-Goog-User-Project: PROJECT_NUMBER" \
      "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/global/collections/COLLECTION_ID/dataConnector?update_mask=action_config" \
      -d '{
      "name": "projects/PROJECT_NUMBER/locations/global/collections/COLLECTION_ID/dataConnector",
      "action_config": {
        "is_action_configured": true,
        "action_params": {
            "client_id": "{Client id from Jira integration}",
            "client_secret": "{Client secret from Jira integration}",
            "instance_uri": "{instance URI of your Jira instance}"
          }
        }
      }'
    
  3. Activez les actions Jira pour votre assistant :

    curl -X PATCH \
      -H "Authorization: Bearer $(gcloud auth print-access-token --project "<var>PROJECT_NUMBER</var>")" \
      -H "Content-Type: application/json" \
      -H "X-Goog-User-Project: PROJECT_NUMBER" \
      "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/global/collections/default_collection/engines/APP_ID/assistants/default_assistant?update_mask=enabledActions" \
      -d '{
        "name": "projects/PROJECT_NUMBER/locations/global/collections/default_collection/engines/APP_ID/assistants/default_assistant",
        "enabledActions": {
          "projects/PROJECT_NUMBER/locations/global/collections/CONNECTOR_ID/dataConnector": {
            "actionInfo": [
              {
                "actionName": "create_jira_issue",
                "actionDisplayName": "Create Jira Issue"
              }
            ]
          }
        }
      }'
    

    Remplacez les éléments suivants :

    • PROJECT_NUMBER : numéro de votre projet Google Cloud .

    • APP_ID : ID de l'application.

    • CONNECTOR_ID : ID de la collection du connecteur que vous avez généré à l'étape précédente.

Une fois que vous avez ajouté des actions, l'assistant peut les effectuer au nom de vos utilisateurs finaux dans l'application. La première fois qu'un utilisateur demande à l'assistant d'effectuer une action Jira Cloud, il est invité à autoriser l'accès à son compte Atlassian.