Connecter un dépôt Git et exécuter un workflow

Ce guide de démarrage rapide vous explique comment créer un dépôt Dataform, le connecter à un dépôt Git tiers existant et exécuter un workflow. Vous effectuez les tâches suivantes à l'aide de la consoleGoogle Cloud et de l'API Dataform :

  • créer un dépôt Dataform ;
  • Connectez le dépôt au dépôt GitHub dataform-co/dataform-example-project-bigquery.
  • Créez et initialisez un espace de travail de développement.
  • Ajoutez une vue au projet.
  • Compilez le projet et exécutez le workflow dans BigQuery.

Avant de commencer

  1. Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery, Dataform, and Secret Manager APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery, Dataform, and Secret Manager APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

Rôles requis

Pour obtenir les autorisations nécessaires pour effectuer toutes les tâches de ce guide de démarrage rapide, demandez à votre administrateur de vous accorder les rôles IAM suivants :

Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Créer un dépôt Dataform

Un dépôt est le conteneur principal de votre projet Dataform. Sélectionnez l'une des options suivantes :

Console

  1. Accédez à la page Dataform de BigQuery.

    Accéder à Dataform

  2. Cliquez sur Créer un dépôt.

  3. Sur la page CRÉER UN DÉPÔT, procédez comme suit :

    1. Dans le champ ID du dépôt, saisissez quickstart-repo.
    2. Dans la liste Région, sélectionnez une région (par exemple, europe-west4).
    3. Dans la liste Compte de service, sélectionnez un compte de service personnalisé pour le dépôt.
    4. Cliquez sur Créer.
    5. Cliquez sur Accéder aux dépôts.

Vous venez de créer un dépôt Dataform. Vous pouvez ensuite connecter le dépôt Dataform à un dépôt Git distant.

API

Pour créer un dépôt, utilisez la méthode projects.locations.repositories.create. Exécutez la requête API avec les informations suivantes :

  • Point de terminaison : POST https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories
  • Paramètre de requête : repositoryId=REPOSITORY_ID

Vous pouvez également exécuter la commande curl suivante dans votre terminal :

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -d '{"serviceAccount": "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com"}' \
  "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories?repositoryId=REPOSITORY_ID"

Remplacez les éléments suivants :

  • SERVICE_ACCOUNT_NAME : ID du compte de service personnalisé créé pour exécuter les tâches BigQuery.
  • PROJECT_ID : identifiant unique du projetGoogle Cloud dans lequel vous souhaitez créer le dépôt Dataform.
  • LOCATION : région Google Cloud dans laquelle vous souhaitez créer le dépôt, par exemple europe-west4.
  • REPOSITORY_ID : identifiant unique de votre nouveau dépôt Dataform, par exemple quickstart-repo.

Vous venez de créer un dépôt Dataform. Vous pouvez ensuite connecter le dépôt Dataform à un dépôt Git distant.

Se connecter au dépôt Git

Pour associer votre dépôt Dataform à votre projet, sélectionnez l'une des options suivantes :

Console

  1. Accédez à la page Secret Manager.

    Accéder à Secret Manager

  2. Cliquez sur Créer un secret.

  3. Dans le champ Nom, saisissez dataform-git-token.

  4. Dans le champ Valeur du secret, saisissez votre jeton d'accès personnel (PAT) GitHub.

    Pour savoir comment créer un PAT, consultez Gérer vos jetons d'accès personnels.

    Nous vous recommandons de définir une date d'expiration pour votre jeton en fonction des règles de sécurité de votre organisation.

  5. Cliquez sur Créer un secret.

  6. Sur la page d'informations sur le secret, cliquez sur l'onglet Autorisations, puis sur Accorder l'accès.

  7. Dans le champ Nouveaux comptes principaux, saisissez votre agent de service Dataform : service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com.

    Remplacez PROJECT_NUMBER par le numéro de votre projetGoogle Cloud . Pour savoir comment trouver le numéro de votre projet, consultez Trouver le nom, le numéro et l'ID du projet.

  8. Dans le champ Sélectionner un rôle, sélectionnez Secret Manager > Accesseur de secrets Secret Manager.

  9. Cliquez sur Enregistrer.

  10. Dans la console Google Cloud , accédez à la page Dataform.

    Accéder à Dataform

  11. Cliquez sur quickstart-repo.

  12. Sur la page du dépôt, cliquez sur Paramètres > Se connecter à Git.

  13. Dans le volet Associer à un dépôt distant, sélectionnez HTTPS.

  14. Dans le champ URL du dépôt Git distant, saisissez https://github.com/dataform-co/dataform-example-project-bigquery.git.

  15. Dans le champ Default remote branch name (Nom de la branche distante par défaut), saisissez master.

  16. Dans le menu Secret, sélectionnez dataform-git-token.

  17. Cliquez sur Associer.

Vous avez réussi à connecter votre dépôt Dataform à un dépôt Git distant et à accorder les autorisations nécessaires. Ensuite, vous pouvez créer et initialiser un espace de travail de développement.

API

  1. Pour stocker votre jeton d'accès personnel Git, créez un secret dans Secret Manager avec la méthode projects.secrets.create. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets
    • Paramètre de requête : secretId=dataform-git-token
    • Corps :

      {
        "replication": {
          "automatic": {}
        }
      }
      

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{
        "replication": {
          "automatic": {}
        }
      }' \
      "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=dataform-git-token"
    
  2. Ajoutez une version au secret contenant votre jeton d'accès personnel (PAT) GitHub. Pour savoir comment créer un PAT, consultez Gérer vos jetons d'accès personnels. Nous vous recommandons de définir une date d'expiration pour votre jeton en fonction des règles de sécurité de votre organisation.

    Pour ajouter une version secrète, utilisez la méthode projects.secrets.addVersion. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/dataform-git-token:addVersion
    • Corps :

      {
        "payload": {
          "data": "GITHUB_PAT"
        }
      }
      

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{
        "payload": {
          "data": "$(echo -n "GITHUB_PAT" | base64)"
        }
      }' \
      "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/dataform-git-token:addVersion"
    

    Remplacez GITHUB_PAT par votre jeton d'accès personnel GitHub. La commande curl convertit automatiquement votre PAT en chaîne encodée en base64 avant d'envoyer la requête.

  3. Pour autoriser Dataform à accéder au secret, attribuez le rôle Accesseur de secrets Secret Manager (roles/secretmanager.secretAccessor) à l'agent de service Dataform. Pour accorder le rôle, sélectionnez l'une des options suivantes :

    gcloud

    Exécutez la commande gcloud secrets add-iam-policy-binding suivante :

    gcloud secrets add-iam-policy-binding dataform-git-token \
        --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com" \
        --role="roles/secretmanager.secretAccessor"
    

    Remplacez PROJECT_NUMBER par le numéro de votre projetGoogle Cloud . Pour savoir comment trouver le numéro de votre projet, consultez Trouver le nom, le numéro et l'ID du projet.

    API Secret Manager

    Exécutez la méthode projects.secrets.setIamPolicy. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/dataform-git-token:setIamPolicy
    • Corps :

      {
        "policy": {
          "bindings": [
            {
              "role": "roles/secretmanager.secretAccessor",
              "members": [
                "serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com"
              ]
            }
          ]
        }
      }
      

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{
      "policy": {
        "bindings": [
          {
            "role": "roles/secretmanager.secretAccessor",
            "members": [
              "serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com"
            ]
          }
        ]
      }
    }' \
    "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/dataform-git-token:setIamPolicy"
    

    Remplacez PROJECT_NUMBER par le numéro de votre projetGoogle Cloud . Pour savoir comment trouver le numéro de votre projet, consultez Trouver le nom, le numéro et l'ID du projet.

  4. Pour connecter votre dépôt à un dépôt Git distant, utilisez la méthode projects.locations.repositories.patch. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : PATCH https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID
    • Paramètre de requête : updateMask=gitRemoteSettings

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -X PATCH \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{
        "gitRemoteSettings": {
          "url": "https://github.com/dataform-co/dataform-example-project-bigquery.git",
          "defaultBranch": "master",
          "authenticationTokenSecretVersion": "projects/PROJECT_ID/secrets/dataform-git-token/versions/1"
        }
      }' \
      "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID?updateMask=gitRemoteSettings"
    

Vous avez réussi à connecter votre dépôt Dataform à un dépôt Git distant et à accorder les autorisations nécessaires. Ensuite, vous pouvez créer et initialiser un espace de travail de développement.

Créer et initialiser un espace de travail de développement

Un espace de travail est un environnement de développement isolé. Pour créer et initialiser un espace de travail, sélectionnez l'une des options suivantes :

Console

  1. Accédez à la page Dataform de BigQuery.

    Accéder à Dataform

  2. Cliquez sur quickstart-repo.

  3. Dans votre dépôt, accédez à l'onglet Espaces de travail de développement.

  4. Cliquez sur Créer un espace de travail de développement.

  5. Dans le champ ID de l'espace de travail, saisissez dev-workspace.

  6. Cliquez sur Créer.

  7. Dans l'onglet Espaces de travail de développement, sélectionnez l'espace de travail dev-workspace.

Vous avez créé et initialisé un espace de travail de développement. Ensuite, vous pouvez configurer les paramètres du workflow.

API

Pour créer un espace de travail, utilisez la méthode projects.locations.repositories.workspaces.create. Exécutez la requête API avec les informations suivantes :

  • Point de terminaison : POST https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces
  • Paramètre de requête : workspaceId=WORKSPACE_ID

Vous pouvez également exécuter la commande curl suivante dans votre terminal :

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -d "{}" \
  "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces?workspaceId=WORKSPACE_ID"

Remplacez WORKSPACE_ID par l'identifiant unique de votre nouvel espace de travail de développement Dataform, par exemple dev-workspace.

Vous avez créé et initialisé un espace de travail de développement. Ensuite, vous pouvez configurer les paramètres du workflow.

Configurer les paramètres de workflow

Dans cette section, vous allez mettre à jour l'ID du projet dans le fichier workflow_settings.yaml pour vous assurer que Dataform exécute le workflow dans votre projetGoogle Cloud . Pour configurer les paramètres du workflow, sélectionnez l'une des options suivantes :

Console

  1. Accédez à la page Dataform de BigQuery.

    Accéder à Dataform

  2. Cliquez sur quickstart-repo.

  3. Dans votre dépôt, accédez à l'onglet Espaces de travail de développement, puis cliquez sur dev-workspace.

  4. Dans le volet Fichiers, sélectionnez workflow_settings.yaml.

  5. Dans le fichier, remplacez la valeur de defaultProject par l'ID de votre projet.

    Le fichier est enregistré automatiquement.

Vous avez bien mis à jour les paramètres de votre workflow. Vous pouvez ensuite ajouter une déclaration de source à votre projet.

API

  1. Créez un fichier local nommé workflow_settings.yaml et collez-y la configuration suivante :

    defaultProject: PROJECT_ID
    defaultDataset: dataform
    dataformCoreVersion: CORE_VERSION
    

    Remplacez CORE_VERSION par la dernière version stable (non bêta) de Dataform Core, par exemple 3.0.43. Vous trouverez la dernière version dans les versions.

  2. Dans votre terminal, encodez le contenu du fichier en chaîne Base64 :

    base64 -w 0 workflow_settings.yaml
    
  3. Copiez la chaîne de sortie obtenue pour l'utiliser dans l'espace réservé SETTINGS_DEFINITION si vous décidez d'utiliser la commande alternative curl plus tard dans ces étapes.

  4. Pour mettre à jour les paramètres de votre workflow, utilisez la méthode projects.locations.repositories.workspaces.writeFile. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : POST https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces/WORKSPACE_ID:writeFile

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{
        "path": "workflow_settings.yaml",
        "contents": "SETTINGS_DEFINITION"
      }' \
      "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces/WORKSPACE_ID:writeFile"
    

    Remplacez SETTINGS_DEFINITION par le contenu du fichier YAML sous forme de chaîne encodée en Base64.

Vous avez bien mis à jour les paramètres de votre workflow. Vous pouvez ensuite ajouter une déclaration de source à votre projet.

Créer une source

Dans cette section, vous allez ajouter une déclaration de source SQLX à votre projet. Elle définit un ensemble de données BigQuery existant afin que Dataform puisse le référencer comme source de données dans votre workflow. Pour créer la source, sélectionnez l'une des options suivantes :

Console

  1. Accédez à la page Dataform de BigQuery.

    Accéder à Dataform

  2. Cliquez sur quickstart-repo.

  3. Dans votre dépôt, accédez à l'onglet Espaces de travail de développement, puis cliquez sur dev-workspace.

  4. Dans le volet Fichiers, sélectionnez le dossier definitions.

  5. Cliquez sur Autres actions sur les fichiers > Créer un fichier.

  6. Dans le champ Ajouter un chemin d'accès au fichier, saisissez definitions/sources/tags.sqlx.

  7. Cliquez sur Créer un fichier.

  8. Dans l'éditeur SQL du nouveau fichier definitions/sources/tags.sqlx, collez le code suivant :

    config {
      type: "declaration",
      database: "bigquery-public-data",
      schema: "stackoverflow",
      name: "tags"
    }
    

Vous avez créé une déclaration de source. Vous pouvez ensuite ajouter une vue à votre projet.

API

  1. Créez un fichier local nommé tags.sqlx.
  2. Collez le code suivant dans le fichier tags.sqlx :

    config {
      type: "declaration",
      database: "bigquery-public-data",
      schema: "stackoverflow",
      name: "tags"
    }
    
  3. Dans votre terminal, encodez le contenu du fichier en une seule chaîne continue :

    base64 -w 0 tags.sqlx
    
  4. Copiez la chaîne de sortie obtenue pour l'utiliser dans l'espace réservé SOURCE_DEFINITION si vous décidez d'utiliser la commande alternative curl plus tard dans ces étapes.

  5. Pour créer un fichier de déclaration de source dans votre espace de travail, utilisez la méthode projects.locations.repositories.workspaces.writeFile. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : POST https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces/WORKSPACE_ID:writeFile

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{
        "path": "definitions/sources/tags.sqlx",
        "contents": "SOURCE_DEFINITION"
      }' \
      "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces/WORKSPACE_ID:writeFile"
    

    Remplacez SOURCE_DEFINITION par le contenu du fichier SQLX sous forme de chaîne encodée en Base64.

Vous avez créé une déclaration de source. Vous pouvez ensuite ajouter une vue à votre projet.

Créer une vue

Dans cette section, vous allez ajouter un fichier SQLX à votre projet pour définir une vue. Pour créer le nouvel affichage, sélectionnez l'une des options suivantes :

Console

  1. Accédez à la page Dataform de BigQuery.

    Accéder à Dataform

  2. Cliquez sur quickstart-repo.

  3. Dans votre dépôt, accédez à l'onglet Espaces de travail de développement, puis cliquez sur dev-workspace.

  4. Dans le volet Fichiers, sélectionnez le dossier definitions.

  5. Cliquez sur Autres actions sur les fichiers > Créer un fichier.

  6. Dans le champ Ajouter un chemin d'accès au fichier, saisissez definitions/top_question_tags.sqlx.

  7. Cliquez sur Créer un fichier.

  8. Dans l'éditeur SQL du nouveau fichier definitions/top_question_tags.sqlx, collez le code suivant :

    config {
      type: "view",
      name: "top_question_tags",
      tags: ["daily"],
      schema: "reporting",
    }
    
    select
        tag_name,
        count
    from ${ref("tags")}
    order by count desc
    limit 100
    

Vous avez bien créé une vue. Vous pouvez ensuite compiler votre projet.

API

  1. Créez un fichier local nommé top_question_tags.sqlx.
  2. Collez le code suivant dans le fichier top_question_tags.sqlx :

    config {
      type: "view",
      name: "top_question_tags",
      tags: ["daily"],
      schema: "reporting",
    }
    
    select
        tag_name,
        count
    from ${ref("tags")}
    order by count desc
    limit 100
    
  3. Dans votre terminal, encodez le contenu du fichier en une seule chaîne continue :

    base64 -w 0 top_question_tags.sqlx
    
  4. Copiez la chaîne de sortie obtenue pour l'utiliser dans l'espace réservé VIEW_DEFINITION si vous décidez d'utiliser la commande alternative curl plus tard dans ces étapes.

  5. Pour créer un fichier de définition de vue dans votre espace de travail, utilisez la méthode projects.locations.repositories.workspaces.writeFile. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : POST https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces/WORKSPACE_ID:writeFile

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{
        "path": "definitions/top_question_tags.sqlx",
        "contents": "VIEW_DEFINITION"
      }' \
      "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces/WORKSPACE_ID:writeFile"
    

    Remplacez VIEW_DEFINITION par le contenu du fichier SQLX sous forme de chaîne encodée en Base64.

Vous avez bien créé une vue. Vous pouvez ensuite compiler votre projet.

Compiler le projet

La compilation convertit les fichiers SQLX en un graphique d'exécution SQL pur. Pour compiler le projet, sélectionnez l'une des options suivantes :

Console

La console Google Cloud compile automatiquement votre projet. Vous pouvez vérifier la compilation dans l'onglet Graphique compilé de votre espace de travail.

Vous avez bien compilé votre projet et vérifié le graphique d'exécution. Vous pouvez ensuite exécuter votre workflow dans BigQuery.

API

  1. Pour créer un résultat de compilation basé sur votre espace de travail, utilisez la méthode projects.locations.repositories.compilationResults.create. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : POST https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/compilationResults

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      -d '{
        "workspace": "projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workspaces/WORKSPACE_ID"
      }' \
      "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/compilationResults"
    
  2. Pour vérifier que votre projet a bien été compilé, utilisez la méthode projects.locations.repositories.compilationResults.get. Exécutez la requête API avec les informations suivantes :

    • Point de terminaison : GET https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/compilationResults/COMPILATION_ID

    Vous pouvez également exécuter la commande curl suivante dans votre terminal :

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/compilationResults/COMPILATION_ID"
    

    Remplacez COMPILATION_ID par l'identifiant unique de votre résultat de compilation. Cet ID est fourni dans la réponse à la demande de compilation de l'étape précédente.

  3. Dans la réponse, vérifiez le champ compilationErrors. Si la liste est vide, votre projet a bien été compilé.

Vous avez bien compilé votre projet et vérifié le graphique d'exécution. Vous pouvez ensuite exécuter votre workflow dans BigQuery.

Exécuter le workflow

Pour déclencher l'exécution de votre workflow dans BigQuery, sélectionnez l'une des options suivantes :

Console

  1. Accédez à la page Dataform de BigQuery.

    Accéder à Dataform

  2. Cliquez sur quickstart-repo.

  3. Dans votre dépôt, accédez à l'onglet Espaces de travail de développement, puis cliquez sur dev-workspace.

  4. Dans la barre d'outils, cliquez sur Démarrer l'exécution > Exécuter les actions.

  5. Sélectionnez Toutes les actions.

  6. Cliquez sur Démarrer l'exécution.

Vous avez exécuté votre workflow.

API

Pour déclencher l'appel d'un workflow, utilisez la méthode projects.locations.repositories.workflowInvocations.create. Exécutez la requête API avec les informations suivantes :

  • Point de terminaison : POST https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workflowInvocations

Vous pouvez également exécuter la commande curl suivante dans votre terminal :

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  -d '{
    "compilationResult": "projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/compilationResults/COMPILATION_ID"
  }' \
  "https://dataform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/repositories/REPOSITORY_ID/workflowInvocations"

Vous avez exécuté votre workflow.

Effectuer un nettoyage

Pour éviter que les ressources utilisées dans cette démonstration soient facturées sur votre compte Google Cloud , procédez comme suit :

Supprimer les ensembles de données BigQuery

Pour éviter que des frais ne vous soient facturés pour les éléments BigQuery, supprimez les ensembles de données créés par ce workflow, tels que reporting et staging.

  1. Dans la console Google Cloud , accédez à la page BigQuery.

    Accéder à BigQuery

  2. Dans le panneau Explorateur, développez votre projet et sélectionnez un ensemble de données.

  3. Cliquez sur le menu Actions, puis sélectionnez Supprimer.

  4. Dans la boîte de dialogue Supprimer l'ensemble de données, saisissez delete dans le champ, puis cliquez sur Supprimer.

Supprimer le secret Secret Manager

Pour nettoyer vos ressources de sécurité, supprimez le secret utilisé pour la connexion Git.

  1. Dans la console Google Cloud , accédez à la page Secret Manager.

    Accéder à Secret Manager

  2. Sélectionnez le secret dataform-git-token.

  3. Cliquez sur Supprimer.

  4. Dans la boîte de dialogue de confirmation, saisissez le nom du secret pour confirmer, puis cliquez sur Supprimer.

Supprimer l'espace de travail de développement Dataform

La création d'un espace de travail de développement Dataform n'entraîne aucuns frais. Toutefois, pour le supprimer, procédez comme suit :

  1. Dans la console Google Cloud , accédez à la page Dataform.

    Accéder à Dataform

  2. Cliquez sur quickstart-repo.

  3. Dans l'onglet Espaces de travail de développement, cliquez sur le menu Plus à côté de dev-workspace, puis sélectionnez Supprimer.

  4. Pour confirmer l'opération, cliquez sur Supprimer.

Supprimer le dépôt Dataform

La création d'un dépôt Dataform n'entraîne aucuns frais. Toutefois, pour le supprimer, procédez comme suit :

  1. Dans la console Google Cloud , accédez à la page Dataform.

    Accéder à Dataform

  2. À côté de quickstart-repo, cliquez sur le menu Plus, puis sélectionnez Supprimer.

  3. Dans la fenêtre Supprimer le dépôt, saisissez le nom du dépôt pour confirmer la suppression.

  4. Pour confirmer l'opération, cliquez sur Supprimer.

Étapes suivantes