😱
Node のバージョンを上げたら Hexo が死んだ
TL;DR
ndenv を入れて、 hexo のプロジェクトフォルダの node のバージョンを 6 に戻した。
状態
他のプロジェクトで必要だったため、 homebrew で node を upgrade した。
すると hexo の基本的なコマンドは実行されているらしいが deploy がうまくいかなくなった。
deployer には s3-cloudfront
を利用していた。
試行錯誤
deployer を変えてみた -> ダメ
普通の s3
にして cloudfront でのキャッシュクリアは手動にしようとした。
やってみたところ s3 へのデプロイ自体がうまくいっていないようだった。
node のバージョンを戻したい -> ムリ
新しいプロジェクトで必要なので戻せない。
複数バージョンを使えるようにしよう
- nodebrew -> 毎回コマンドラインで切り替えるの面倒
- ndenv -> バージョン定義ファイルが増えるが、自動的に判定してくれて便利そう
ndenv を採用
インストール方法は こちらの記事 を参考にしました。
記事では shell に bash だったけど、自分は zsh を利用しているため、 ~/.zshrc
に以下を追加
# ndenv
export PATH=$HOME/.ndenv/bin:$PATH
eval "$(ndenv init - --no-rehash)"
無事デプロイができました
良き node ライフを!
Discussion