DataGrip 2025.2 Help

Terraform

Terraform 是一个开源工具,使开发人员和运维团队能够通过代码定义、管理和配置云资源及基础设施组件,而不是通过云提供商的用户界面进行手动配置。

借助它,您可以以声明性和自动化的方式管理基础设施资源,如虚拟机、网络和存储。 用编码模板替代手动配置可确保基础设施设置的一致性和可重复性。

安装 Terraform 和 HCL 插件

此功能依赖于 Terraform and HCL插件,您需要安装并启用。

  1. 按 Ctrl+Alt+S 打开设置,然后选择 Plugins。

  2. 打开 Marketplace 选项卡,找到 Terraform and HCL插件,然后点击 安装 (如果系统提示,重启 IDE)。

DataGrip 通过为核心 Terraform 元素和提供程序定义的概念提供智能代码洞察,帮助您保持高效,从而更快地编写基础架构代码并减少干扰。 这包括以下功能:

  • 语法高亮

    您可以在 设置 对话框(Ctrl+Alt+S )中,在 编辑 | 颜色方案 | HCL 和 编辑器|配色方案|HashiCorp 插值语言 页面上自定义颜色设置。

  • 代码格式化

    您可以在 设置 对话框(Ctrl+Alt+S )中的 编辑器 | 代码风格 | Terraform 页面访问与 Terraform 相关的代码样式设置。

  • 整行代码补全

    使用本地运行的深度学习模型完成整行代码。

    Terraform 全行代码补全

    您可以在 设置 对话框(Ctrl+Alt+S )中的 编辑器 | 常规 | 内嵌补全 页面禁用 Terraform 的整行代码补全功能。

  • 浮动工具栏 ,允许您快速注释和重新格式化代码,以及调用上下文和 AI 操作。

    Terraform 浮动工具栏
  • 文件模板

    在 项目 工具窗口中,右键点击一个目录,然后选择 新建 (或按 Alt+Insert ),然后选择 Terraform 文件。 这将打开一个对话框,允许您从可用的 Terraform 文件模板中进行选择。

    Terraform 文件类型

    要修改 Terraform 文件模板,请打开 设置 对话框(Ctrl+Alt+S ),然后转到 编辑器 | 文件和代码模板。

  • 检查

    您可以检测重复、冲突、已弃用或缺失的元素,未解析的引用,未知资源等。

    Terraform 缺失属性检查

    您可以在 设置 对话框(Ctrl+Alt+S )中的 编辑器 | 检查 | Terraform 下查看所有 Terraform 检查。

  • 代码补全

    这包括对已知提供程序、提供程序函数、资源、数据源和参数的补全支持。

    Terraform 资源补全

    在配置提供程序要求时,IDE 同样提供帮助。 在 required_providers 块中,IDE 会建议可用的提供程序及其相关属性,如 source 和 version ,帮助您根据 Terraform 规范定义要求。 有关提供程序要求的更多信息,请参阅 Terraform 文档。

  • 代码导航

    对于资源、变量、本地变量和数据源,DataGrip 以内嵌提示的形式显示其用法数量。 单击内嵌提示(或按 Ctrl+B )以显示其所有用法并导航到它们。

    Terraform 查找用法

    您可以在 设置 对话框(Ctrl+Alt+S )中的 编辑器 | 内嵌提示 | 代码视图 | 用法 下禁用、启用和更改内嵌提示的使用位置。

  • 重构

    若要重命名该元素及其所有用法,请按 Shift+F6。

  • 文件监视器 ,可让您在每次保存文件时运行 Terraform 命令(例如 terraform fmt)。 要启用此功能,请安装 文件监视器插件。

  • 结构视图

    使用 结构 工具窗口快速预览和导航 Terraform 文件。

    Terraform 结构

    工具窗口可以在 视图(V) | 工具窗口(T) | 结构 中找到或通过按 Alt+7 显示。

  • 快速文档

    将鼠标悬停在参数上即可获得它的快速文档。

    Terraform 快速文档

    有关更多详细信息,您还可以通过按 Shift+F1 打开 Terraform Registry(此文档的来源)。

  • 编码辅助还包括大括号匹配 Ctrl+Shift+M 、代码折叠 Ctrl+NumPad +/Ctrl+NumPad - 、添加行注释 Ctrl+/ 和块注释 Ctrl+Shift+/。

指定 Terraform 可执行文件的路径

要使用运行配置从 IDE 运行 Terraform 命令,必须在您的计算机上安装 Terraform。

在大多数情况下,DataGrip 会检测到 Terraform 的安装路径。 如果不是这种情况,或者路径检测不正确,您可以手动指定。

  1. 按 Ctrl+Alt+S 打开设置,然后选择 工具 | Terraform 和 OpenTofu。

  2. 在 Terraform 可执行文件路径 字段中,指定 Terraform 的路径。

运行 Terraform

Terraform 和 HCL 插件为 Terraform 提供专用的运行配置。 这些运行配置允许您自定义 terraform 命令的执行,例如添加参数或传递环境变量。

使用边栏图标运行 Terraform

  1. 在 Terraform 文件中,点击 运行。

  2. 在打开的窗口中,选择 计划 以创建执行计划,或选择 Apply 如果您已经有一个 Terraform 计划并希望应用它。

    从边距运行 Terraform

如果尚未对该目录执行 Terraform 初始化步骤,则 运行 沟槽图标中会有一个警告标志。 在这种情况下,DataGrip 建议您在运行 terraform init 命令之前,先运行 terraform plan 或 terraform apply。

从沟槽图标运行 Terraform 会创建一个临时运行配置。 您可以通过点击 更多操作 并选择 保存配置 在运行小部件中将其保存为永久性的。

手动创建 Terraform 运行配置

  1. 转到 运行 | 编辑配置。 或者,按 Alt+Shift+F10 ,然后 0。

  2. 请点击 添加新配置 按钮(添加运行/调试配置 )并开始输入 Terraform。

    Terraform run configuration
  3. 请选择运行配置的类型:

    • Terraform Init 以运行 terraform init 命令

    • Terraform 验证 以运行 terraform validate 命令

    • Terraform Plan 以运行 terraform plan 命令

    • Terraform Apply 以运行 terraform apply 命令

    • Terraform 销毁 以运行 terraform destroy 命令

    • Terraform ,这使您能够提供任何其他 Terraform 命令

  4. 在 Command 列表中选择一个 Terraform 命令。 要运行此列表中未包含的命令,请选择 自定义 并在 程序参数 字段中指定它。

  5. 为运行配置命名,并在必要时更改工作目录。 如果您使用环境变量,请在 环境变量 字段中指定它们,或者选择一个文件以使用其中的变量。

格式化 Terraform 代码

使用 DataGrip,您可以对 Terraform 文件应用代码样式。 DataGrip 包括两个格式化工具:

使用 Terraform 格式化工具

Terraform 格式化工具 (terraform fmt) 基于 Terraform 代码风格。 适用于 .tf 和 .tfvars 文件。

使用 Terraform 格式化工具需要 安装 Terraform。

  • 在主菜单中,进入 代码|Terraform 工具|格式化文件.

  • 或者按 Ctrl+Alt+Shift+F。

尽管 Terraform formatter terraform fmt 适用于整个文件, DataGrip formatter 也可以应用于选定的代码片段。

使用 DataGrip 格式化工具

DataGrip 格式化器基于由 Terraform 和 HCL 插件提供的 DataGrip 代码样式。 您可以在 IDE 设置中自定义此代码样式,位于 编辑器 | 代码风格 | Terraform。

除此之外 .tf 和 .tfvars ,它还适用于 .hcl 文件。

  • 要重新格式化文件,请在编辑器中打开它,然后在主菜单中转到 代码 | 格式化文件。 或者按 Ctrl+Alt+Shift+L。

  • 要重新格式化部分代码,请选择一段代码,然后在主菜单中进入 代码 | 格式化代码。 或者按 Ctrl+Alt+L。

Terraform 模板文件

DataGrip 支持通常使用 .tftpl 扩展名的 Terraform 模板文件。 对模板文件的支持包括代码辅助(语法高亮、检查等)、导航到模板文件和动态模板。

要使用 实时模板,请在 Terraform template 文件中开始输入 if 或 for。

实时模板

在 Terraform 文件中,您可以使用 templatefile 函数注入模板。 使用 DataGrip,您可以快速从 Terraform 文件导航到模板文件。

  1. 在您的 Terraform 文件中,找到 templatefile 函数。

  2. 将文本光标放到模板文件名处并按 Ctrl+B。

选择模板数据语言

如果语言在模板文件扩展名 (file.<lang>.tftpl) 中指定,则该语言用作数据语言。 例如,在 file.js.tftpl 中,将使用 JavaScript。 如果未指定数据语言(例如, file.tftpl ),模板文件将被识别为纯文本。

您可以选择数据语言(或更改检测到的语言)以便文件语法能够相应地被识别。

  1. 在编辑器中右键单击文件选项卡,然后选择 将 <Language> 模板数据语言更改为 ,例如, 将 JavaScript 模板数据语言更改为 或 将纯文本模板数据语言更改为。

    或者,按 Alt+Enter (显示上下文操作 )在文件中并选择 选择模板数据语言。

  2. 在打开的语言列表中,选择语言。

高级设置

自动下载 Terraform 文档

默认情况下,DataGrip 会从 Terraform Registry 下载 Terraform 属性的快速文档。 如果您遇到网络或性能问题,可以禁用它,DataGrip 将显示来自元数据的描述。 这些描述的可用性取决于资源开发者。

自动构建本地元数据

Terraform 和 HCL 插件附带特定版本的提供者元数据,这允许您使用例如已知属性自动完成等编码辅助功能。 如果您拥有不同版本的提供者元数据,DataGrip 在每次初始化项目时都会更新自己的元数据(terraform init ),以确保您获得正确的编码辅助。 如果您不希望 DataGrip 更新其元数据,可以禁用此复选框。

深度搜索变量

当您在 Terraform 中使用变量时,DataGrip 会检查您项目中的所有 Terraform 文件以查找变量定义。 如果您希望 DataGrip 只检查根目录中的文件(包含 .terraform.lock.hcl 的那个),请取消选中复选框。

Terraform 代码样式设置

Terraform 特定的代码样式设置可在 编辑器 | 代码样式 | Terraform/OpenTofu | 其他 中找到。

格式化时对齐属性

选择对齐属性及其值的方式:对齐等号、对齐值或不对齐任何内容。

行注释符号

选择在按下 Ctrl+/ 时用于单行注释的符号。

在补全时自动导入提供程序

在完成资源名称时将提供程序要求插入到当前文件中。 如果缺少 required_providers 块,请添加它。

调用 'terraform/tofu fmt' 进行格式化

当您调用 代码 | 格式化文件 时运行 Terraform(或 OpenTofu)格式化器。

支持 OpenTofu

OpenTofu 是一个 Terraform 的分支,它是开源的、社区驱动的,并由 Linux 基金会管理。

DataGrip 为 OpenTofu 文件提供编码辅助,包括语法高亮、补全和检查。 它还为 OpenTofu 提供了专用的运行配置,与 Terraform 的基本相同,但它们使用 tofu 命令。

Terraform run configuration

指定 OpenTofu 可执行文件的路径

要使用运行配置从 IDE 运行 OpenTofu 命令,必须在您的计算机上安装 OpenTofu。

在大多数情况下,DataGrip 会检测到 OpenTofu 的安装路径。 如果不是这种情况,或者路径检测不正确,您可以手动指定。

  1. 按 Ctrl+Alt+S 打开设置,然后选择 工具 | Terraform 和 OpenTofu。

  2. 在 OpenTofu 可执行文件路径 字段中指定 OpenTofu 的路径。

最后修改日期: 2025年 9月 26日