Fournisseur Snowflake Terraform

HashiCorp Terraform est un outil d’IaC (Infrastructure as Code) open-source qui vous permet de construire, de modifier et de versionner dynamiquement des ressources d’infrastructure. Vous utilisez le langage Terraform pour créer des fichiers de configuration qui décrivent la configuration que vous souhaitez. Terraform compare votre configuration à l’état actuel, puis génère un plan pour créer de nouvelles ressources ou mettre à jour et supprimer des ressources existantes. Le plan s’exécute sous la forme d’un graphe orienté acyclique (DAG), ce qui permet à Terraform de comprendre et de gérer les dépendances entre les ressources.

Le fournisseur Terraform Snowflake vous permet d’établir un flux de travail cohérent pour gérer les ressources Snowflake telles que les entrepôts, les bases de données, les schémas, les tables, les rôles, les autorisations, etc. Pour plus d’informations sur les autres fonctions et modules qui prennent en charge les workflows Snowflake DevOps, voir Snowflake DevOps.

Après avoir installé Terraform, consultez les ressources suivantes pour commencer à utiliser le fournisseur Snowflake.

Ressource

Description

Documentation du fournisseur Snowflake

Guides et documentation de référence dans le registre Terraform pour le fournisseur Snowflake. La documentation comprend les blocs de ressources qui décrivent les objets de Snowflake (par exemple, snowflake_database) et les sources de données que vous pouvez utiliser pour nommer et récupérer dynamiquement l’état de la configuration des objets de Snowflake (par exemple, snowflake_users).

terraform-provider-snowflake

Le projet GitHub, qui vous offre les possibilités suivantes :

Terraforming Snowflake

Ce tutoriel Quickstart de Snowflake Labs vous guide dans la création d’un projet Terraform sur GitHub qui utilise le fournisseur Snowflake pour créer une base de données et un entrepôt de démonstration.

Gestion des versions et fonctions en aperçu

Le fournisseur Snowflake Terraform suit les versions sémantiques. Les versions majeures introduisent des changements radicaux. Nous les annonçons bien à l’avance sur GitHub. Les versions mineures peuvent parfois inclure des changements inattendus, en fonction de la configuration ou de l’environnement. Nous mettons en balance les inconvénients ponctuels occasionnés à certains utilisateurs et les avantages que ces mises à jour apportent à la communauté dans son ensemble.

Nouvelles fonctions et correctifs

  • En général, nous introduisons de nouvelles fonctions et des correctifs dans la dernière version mineure. Cela s’explique par le fait que le processus de développement exige beaucoup de ressources et par la nécessité de procéder à des tests de régression approfondis.

  • Si nous découvrons une faille de sécurité, nous envisageons au cas par cas de rétroporter les correctifs critiques vers des versions antérieures.

  • Nous évaluons l’impact des changements de rupture (BCR) introduits par les fonctionnalités sous-jacentes de Snowflake sur le fournisseur. Le guide de migration fournit des informations sur la manière de gérer d’éventuels changements de rupture. Nous donnons la priorité aux correctifs de BCR dans chaque dernière version du fournisseur et nous vous recommandons de mettre régulièrement à jour votre version du fournisseur.

Fonctionnalités en avant-première

Certaines ressources et sources de données sont qualifiées de « fonctions en aperçu » dans chaque version.

  • Veuillez considérer celles-ci comme des fonctions en aperçu dans le fournisseur, quel que soit leur état dans Snowflake.

  • Les fonctions en aperçu sont désactivées par défaut. Vous devez ajouter le nom de la fonction concernée au champ preview_features_enabled dans la configuration du fournisseur. Le référentiel GitHub contient toujours une liste de fonctions en aperçu.

  • Chaque fonction en aperçu sera retravaillée et désignée comme une fonction stable dans les prochaines versions. Veuillez vous attendre à ce que les fonctions en aperçu puissent introduire des changements radicaux, même si le numéro de version majeure du fournisseur ne change pas.

  • Les fonctions en aperçu, tout comme les autres fonctions en aperçu de Snowflake, ne bénéficient pas du support officiel de Snowflake. Cela étant, les équipes produit et d’ingénierie peuvent vous proposer de l’aide.

Versions officiellement prises en charge

  • Snowflake n’offre un support officiel que pour la dernière version. Lorsqu’une nouvelle version est publiée, elle devient immédiatement la version officiellement prise en charge. Pour soumettre un ticket d’assistance concernant un problème lié à un fournisseur Terraform dans le cadre du support officiel, utilisez les processus décrits sous Contact du support Snowflake.

  • Le support officiel de Snowflake a commencé exclusivement à partir de la version 2.0.0. Toutes les autres versions, y compris les versions majeures, antérieures à la version 2.0.0, ne sont pas officiellement prises en charge.

  • Bien que la dernière version du fournisseur soit la seule officiellement prise en charge, nous nous efforçons de résoudre les problèmes liés aux versions antérieures. Après avoir évalué le problème, le support Snowflake peut, à sa discrétion, exiger une mise à jour vers la dernière version afin de soutenir le processus de dépannage.