WSLのSSH設定を使ってWindows内のVSCodeからSSHする

困っていたこと

今年の4月から大学のオフライン講義が始まった。
その中でラップトップをキャンパスに持っていきつつ、宿題や予習等はゲーム用にスペックもりもりにしたWindowsPCで行いたいという欲求が発生した。
WindowsPCを常時起動しておくのは電気代的に避けたかったので、クラウド環境にインスタンスを立ててラップトップもWindowsもその中で開発するという方法をとることにした。

Windows内のWSLからgcpに立てたcompute engineのインスタンスに接続しようと思ったのだが、VSCode自体はWindowsの世界のソフトウェアなのでVSCodeにsshさせようとするとWindows内のssh設定を使わなければならなかった。
交換鍵ペアを作ったりgcloud cliを使うのにWindowsを直接扱うのは面倒だったので、なんとかVSCodeにWSL内のssh設定を使わせたかった。

解決方法

同じことに困っていた人がいた。
https://qiita.com/tksmatsubara/items/0b2d675cd663fbfc0cad https://github.com/microsoft/vscode-remote-release/issues/937
C:\Windows\system32\wsl.exe sshに処理を投げるっぽいスクリプトを作成して、そのスクリプトへのパスをVSCodeのremote.SSH.pathに設定することで解決した。
標準入力はWindowsOSのままなのかssh時にknown_hosts違いの入力要求をVSCode上で入力してもWSLのプロセスまでは届かなかった。
一度WSL内からsshするなりして入力が求められない状態をつくっておくといいだろう。

感想

VSCodeなのかVScodeなのかわからない。