💡
VS CodeでAWS SAMのロケーション設定が間違っていて動かなかった話
AWS Toolkit for Visual Studio CodeでCreate Lambda SAM Applicationを実行したら
[ERROR]: Error creating new SAM Application: [Error: ENOENT: no such file or directory, stat '/Users/hw09/.pyenv/shims/sam'] {
errno: -2,
code: 'ENOENT',
syscall: 'stat',
path: '/Users/hw09/.pyenv/shims/sam'
}
とエラーが出たので、対処方法を調べました。
結論
SAM CLIのロケーション設定が間違っていました。
対処方法
SAM CLIの場所を確認
$ which sam
> /Users/hw09/.anyenv/envs/pyenv/shims/sam
※ 自分の環境の場合、anyenvのpyenvの中にSAM CLIがありました。
設定を修正
-
AWS Toolkit for Visual Studio Codeの設定(Extension Settings)を開く

-
Aws > Samcli: Locationの設定を修正する
ロケーションが/Users/hw09/.pyenv/shims/samになっており、上記で調べたSAM CLIの場所と異なりました。

設定を/Users/hw09/.anyenv/envs/pyenv/shims/samに修正することでVSCodeでSAM CLIが動くようになりました。

原因
AWS SAM CLIをインストールした当時はpyenvを使っていたのですが、
anyenv+pyenvに移行したため、AWS SAM CLIの場所が変わったことが原因でした。
Discussion