🏗️
CircleCIのruby imageで任意のnode versionを指定したい
通常であればcircleci/ruby:3.0-node-browsers-legacy
とかでnodeもインストールされるrubyのimageを指定すればそのときのactiveなnodeがインストールされるけど、rubyがちょっと古くてnodeもちょっと古いみたいなときに、目的のrubyとnodeのバージョンが入ったimageが存在していない時がある
そんなときはbuild stepで任意のnodeをインストールする
nvm使ってるけど何でもいいと思う
- run:
name: Swap node versions
command: |
set +e
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
nvm install v14.20
nvm alias default 14.20
echo 'export NVM_DIR="$HOME/.nvm"' >> $BASH_ENV
echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> $BASH_ENV
公式のブログとフォーラムを参考にした
Nickありがとう
Discussion