/telescope-terraform.nvim

Integration with the terraform CLI

Primary LanguageLuaMIT LicenseMIT

telescope-terraform.nvim

[WIP] Integration with terraform CLI

Installation

Vim-Plug

Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-telescope/telescope.nvim'
Plug 'nvim-telescope/telescope-terraform.nvim'

Packer

use {
    "nvim-telescope/telescope.nvim",
    requires = {
        { "nvim-lua/plenary.nvim" },
        { "nvim-telescope/telescope-terraform.nvim" },
    },
}

Setup and Configuration

require('telescope').load_extension('terraform')

Usage

Telescope terraform init
Telescope terraform apply
Telescope terraform destroy
Telescope terraform plan
Telescope terraform plan_targeted

"Using lua function
lua require('telescope').extensions.terraform.init()<cr>
lua require('telescope').extensions.terraform.apply()<cr>
lua require('telescope').extensions.terraform.destroy()<cr>
lua require('telescope').extensions.terraform.plan()<cr>
lua require('telescope').extensions.terraform.plan_targeted()<cr>

Options

//TODO

terraform init

Detail

Query filter
wincmd Command to open log window, default = 'botright vnew'
wrap Wrap lines in log window, default = 'nowrap'
filetype Filetype to use on log window, default='bash'
timeout Timeout for sync mode, default = '10000'
wait_interval Wait interval for sync mode, default = '5'
mode Mode to populate log window, default = 'async'

terraform apply

Detail

Query filter
wincmd Command to open log window, default = 'botright vnew'
wrap Wrap lines in log window, default = 'nowrap'
filetype Filetype to use on log window, default='bash'
timeout Timeout for sync mode, default = '10000'
wait_interval Wait interval for sync mode, default = '5'
mode Mode to populate log window, default = 'async'

terraform destroy

Detail

Query filter
wincmd Command to open log window, default = 'botright vnew'
wrap Wrap lines in log window, default = 'nowrap'
filetype Filetype to use on log window, default='bash'
timeout Timeout for sync mode, default = '10000'
wait_interval Wait interval for sync mode, default = '5'
mode Mode to populate log window, default = 'async'

terraform plan

Detail

Query filter
wincmd Command to open log window, default = 'botright vnew'
wrap Wrap lines in log window, default = 'nowrap'
filetype Filetype to use on log window, default='bash'
timeout Timeout for sync mode, default = '10000'
wait_interval Wait interval for sync mode, default = '5'
mode Mode to populate log window, default = 'async'

Key mappings

key Usage
<cr> append resource address to the buffer
<c-a> start terraform apply
<c-d> start terraform destroy
<c-i> start terraform init

terraform plan_targeted

//TODO Detail