Gérer le package principal Dataform

Ce document explique comment gérer le package de dépendances du framework de base Dataform et le mettre à jour vers la dernière version.

Le noyau Dataform est le framework Dataform open source permettant de développer des workflows SQL avec SQL, SQLX et JavaScript. Il est recommandé de toujours utiliser la dernière version disponible du framework de base Dataform. Pour en savoir plus sur les versions du framework de base Dataform, consultez les versions de Dataform sur GitHub.

Avant de commencer

  1. Créez un dépôt.
  2. Créez et initialisez un espace de travail de développement.

Rôles requis

Pour obtenir les autorisations nécessaires pour gérer et mettre à jour le noyau Dataform, demandez à votre administrateur de vous accorder les rôles IAM suivants:

  • Gérer l'emplacement du package de base Dataform : Administrateur Dataform (roles/dataform.admin) sur les dépôts
  • Mettre à jour le package de base Dataform : Éditeur Dataform (roles/dataform.editor) sur les espaces de travail

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

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

Gérer l'emplacement du package principal Dataform

Lorsque vous initialisez le premier espace de travail d'un dépôt, Dataform définit automatiquement le noyau Dataform comme package de dépendance. À partir de 3.0.0 du noyau Dataform, Dataform installe le package de base Dataform dans le fichier workflow_settings.yaml par défaut. Dans les versions précédentes du noyau Dataform, le noyau Dataform était défini dans le fichier package.json.

Dans Dataform core 3.0.0 et versions ultérieures, si Dataform core est le seul package de votre dépôt, vous devez le définir dans le fichier workflow_settings.yaml. Pour les dépôts créés avec des versions antérieures du noyau Dataform, déplacez le package de base Dataform vers workflow_settings.yaml.

Le fichier package.json est nécessaire pour installer des packages supplémentaires dans Dataform. Si votre dépôt utilise des packages supplémentaires, définissez le package de base Dataform dans package.json afin que tous les packages soient définis au même endroit. Si votre dépôt ne contient pas package.json, créez package.json et déplacez le package de base Dataform pour installer des packages supplémentaires.

Déplacer le noyau Dataform vers workflow_settings.yaml

Pour les dépôts créés avec des versions antérieures à 3.0.0 du noyau Dataform, si vous ne disposez d'aucun autre package de dépendance que le noyau Dataform, vous devez déplacer le package de noyau Dataform de package.json vers workflow_settings.yaml, puis supprimer le fichier package.json redondant.

Pour migrer le package de base Dataform de package.json vers workflow_settings.yaml, procédez comme suit:

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

    Accéder à la page Dataform

  2. Sélectionnez un dépôt, puis un espace de travail.

  3. Dans le volet Fichiers, sélectionnez le fichier workflow_settings.yaml.

  4. Dans le fichier workflow_settings.yaml, ajoutez le package de base Dataform au format suivant:

    dataformCoreVersion: "VERSION"
    
    

    Remplacez VERSION par la dernière version de Dataform, par exemple 3.0.0.

  5. Dans le volet Fichiers, cliquez sur le menu Plus à côté de package.json, puis sur Supprimer.

  6. Pour confirmer la suppression de dataform.json, cliquez sur Supprimer.

  7. Cliquez sur Installer les packages.

Déplacer le noyau Dataform vers package.json

Le fichier package.json est nécessaire pour installer des packages supplémentaires dans un dépôt. Si votre dépôt utilise des packages supplémentaires, vous devez stocker tous les packages, y compris le package principal Dataform, dans package.json.

Si votre dépôt ne contient pas le fichier package.json, car le package de base Dataform est défini dans le fichier workflow_settings.yaml, vous devez créer le fichier package.json pour installer des packages supplémentaires, puis déplacer le package de base Dataform de workflow_settings.yaml vers le package.json nouvellement créé.

Pour créer le fichier package.json et déplacer le package de base Dataform, procédez comme suit:

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

    Accéder à la page Dataform

  2. Sélectionnez un dépôt, puis un espace de travail.

  3. Dans le volet Fichiers, cliquez sur AjouterAjouter, puis sur Créer un fichier.

  4. Dans le champ Ajouter un chemin d'accès au fichier, saisissez package.json.

  5. Cliquez sur Créer un fichier.

  6. Dans le fichier package.json, ajoutez le package de base Dataform au format suivant:

    {
        "dependencies": {
            "@dataform/core": "VERSION"
        }
    }
    

    Remplacez VERSION par la dernière version de Dataform, par exemple 3.0.0.

  7. Cliquez sur Installer les packages.

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

  9. Dans le fichier workflow_settings.yaml, supprimez la propriété dataformCoreVersion.

Mettre à jour le noyau de Dataform

Testez toujours les nouvelles versions de paquets dans un environnement hors production avant de les déployer dans votre environnement de production.

Pour mettre à jour le package de dépendance de base de Dataform, procédez comme suit:

  1. Recherchez la dernière version de @dataform/core sur la page des versions Dataform sur GitHub.

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

    Accéder à la page Dataform

  3. Sélectionnez un dépôt, puis un espace de travail.

  4. Dans le volet Fichiers, sélectionnez le fichier package.json ou le fichier workflow_settings.yaml.

    L'emplacement où le package de dépendance du noyau Dataform est défini dépend de votre version du noyau Dataform et de votre utilisation des packages. Pour en savoir plus, consultez la section Gérer l'emplacement du package principal Dataform.

  5. Mettez à jour le package de dépendances de base Dataform avec la dernière version:

    package.json

    {
        "dependencies": {
            "@dataform/core": "VERSION"
        }
    }
    

    Remplacez VERSION par la dernière version de Dataform, par exemple 3.0.0. Pour éviter les problèmes d'installation du package, spécifiez explicitement la version du package de base Dataform. N'utilisez pas d'autres options dependencies de package.json, par exemple >version.

    1. Cliquez sur Installer les packages.

    workflow_settings.yaml

    dataformCoreVersion: "VERSION"
    

    Remplacez VERSION par la dernière version de Dataform, par exemple 3.0.0.

    1. Cliquez sur Installer les packages.
  6. Validez les modifications.

  7. Transférez les modifications vers votre dépôt.

L'exemple de code suivant montre la dépendance @dataform/core mise à jour vers la version 3.0.0 dans le fichier package.json:

{
    "dependencies": {
        "@dataform/core": "3.0.0"
    }
}

Étape suivante