WindowsとUbuntu ( WSL 2 )上でのコード化とコード形式の拡張モジュールのコード補完


私はより多くの地形定義を書いているので、私はより快適な環境のための地形定義入力完了作業を行うことを決めた.私はそれが少し遅く知っているが、私はコード補完を使用せずに定義を書いている.
腕のテンプレートのDSLは、いくつかの興味を集めているようだ.しかし、ARMテンプレートのハード部分はまだサンプルから無傷です、そして、それが私がAPIバージョンに気づいているという事実が変わらないので、私は将来Torraformを使い続けます.
Terraformに戻ると、Visual StudioのコードでTerraFormの定義を書くすべての人がこの拡張機能を含んでいます.前に公式のHashicorpになった拡張です.

ハシコップ / vscode terraform


Hashicorp terraformのためのVisual Studioコード拡張


視覚的なスタジオコード拡張



Hashicorp terraform Visual Studio Code(VS code)拡張機能は、構文強調表示およびその他の編集機能を追加しますTerraform を使用するファイルTerraform Language Server .

機能

  • インストールと更新Terraform Language Server (terraform-ls) , 特徴を露出する
  • 初期化プロバイダーの完了:リソース名、データソース名、属性名
  • タイプとしてHCLエラーを示す診断
  • コマンドパレットから"terraform : init "を使用して設定を初期化します
  • ランterraform plan and terraform apply コマンドパレットから
  • コマンドパレットからの“terraform : validate”を使用した検証診断validateOnSave 設定
  • 構文強調表示.tf and .tfvars ファイル--すべての構文を含むterraform 0.12への変更
  • ブレースと引用符を閉じる
  • 含むfor_each and variable シンタックスショートカットfore , vare , varm )
  • 始める


    重要:インストール後、Aを実行する必要がありますterraform init 供えるterraform-ls 最新のプロバイダスキーマで.
    View on GitHub
    言語サーバは別のリポジトリに配布されます.しかし、TorraForm拡張モジュールをインストールして自動的に更新するので、Changeログをチェックする以外は心配する必要はありません.

    ハシコップ / 地形


    テラフォーム言語サーバ


    基本的に私はWindows 10上でVSコードでterraform定義を書いていましたが、私はいくつかのよく知られていないエラーが出てきました.
    WSL 2でUbuntuで動作しているか確認してみました.

    Windows 10での使用


    公式チュートリアルでは、Windows上でTerraformをインストールするためにSamolateyを使用する方法を示していますが、私は個人的にチョコレートを好みません.
    https://learn.hashicorp.com/tutorials/terraform/install-cli
    ユーザープロファイルの下にディレクトリを作成し、PATH それに.スクープは良いが、私は本当にそれを好きではない.

    Wingetがデフォルトで含まれていて、terraformが追加されているなら、私はそれに移動すると思いますが、Windowsパッケージマネージャの周りの混乱はとても混乱しています.
    terraform CLIへのパスが渡された場合、VSコードを開くことができ、エラーは発生しません.
    ただし、実行せずにコードを開くterraform init , 次の警告を取得しますので、必要なプロバイダーをダウンロードして初期化する適切な場所で実行します.

    コマンドを実行した後、私はそれを反映するVSコードを再起動しなければならなかった.私は静かに再コード対再開しました.
    私はそれを再開した後、私は文字またはプレスを入力するときに候補者の身近なリストが表示されますCtrl+Space , 下記の通り.それは、タイプが同様に表示されるのを見るのによいです.

    コード補完は、ip_restriction , しかし、プロバイダ側のスキーマ定義に問題があると思います.
    リソースのコード補完も動作するので、そのような名前を付けて候補のリストに必要なものを見つけることができます.
    Visual Studioを使用している場合、これはおなじみの関数です.

    まだいくつかの制限がありますが、それは巨大な生産性の向上になるように正確にそれを使用することができます.

    Ubuntu ( WSL 2 )での使用


    最近、多くの人々がVSコードとWSL 2を使用してコードを書いているので、私はterraform完成が働くかどうかチェックしました.
    まず、terraform cliをインストールしますapt-get , しかし、あなたはチュートリアルでコマンドをコピーして、ペーストすることができます.
    CLIがインストールされると、VSコードにterraform拡張モジュールをインストールできます.これはVSコードがWSL 2接続で実行されているときにインストールできます.

    その後、私は走りますterraform init プロバイダーをダウンロードして初期化する適切な場所で、コードを再起動し、入力補完を使用できます.それは非常に簡単な手順でした.

    一目では、Windows 10で動作しているものと同じですが、WSL 2上でUbuntuで動作しています.WSL 2のタイトルバーで見ることができます.
    プロセスをチェックすると、言語サーバがWSL 2上で動作していることがわかります.

    それは神秘と技術のすばらしい感覚です、しかし、私は現在私がWindowsとUbuntuをVsコードで混合することができると考えています.そして、それは違いです.

    保存時に書式設定


    古い画面ではすぐに設定画面からそれを有効にすることができますが、現在terraform拡張機能を手動で手動で次の設定を追加する必要があります.vscode/settings.json .
    {
        "[terraform]": {
            "editor.formatOnSave": true
        }
    }
    
    これにより、保存時に自動的にインデントやその他の書式を修正するので、より快適になります.