From 803b8cd7919f6602432cf2f185ee7fc28ba4ed6b Mon Sep 17 00:00:00 2001 From: Nikolaos Boutalas Date: Mon, 7 Aug 2023 11:51:08 +0300 Subject: Add node task --- tasks/node.yml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 tasks/node.yml (limited to 'tasks') diff --git a/tasks/node.yml b/tasks/node.yml new file mode 100644 index 0000000..39b5b07 --- /dev/null +++ b/tasks/node.yml @@ -0,0 +1,35 @@ +- name: Install nvm + shell: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash + args: + warn: false + tags: + - node + +- name: Enable nvm + lineinfile: + path: "~/.config/zsh/.zshrc" + line: | + export NVM_DIR=~/.nvm + [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" + autoload -U add-zsh-hook + load-nvmrc() { + local node_version="$(nvm version)" + local nvmrc_path="$(nvm_find_nvmrc)" + + if [ -n "$nvmrc_path" ]; then + local nvmrc_node_version=$(nvm version "$(cat "${nvmrc_path}")") + + if [ "$nvmrc_node_version" = "N/A" ]; then + nvm install + elif [ "$nvmrc_node_version" != "$node_version" ]; then + nvm use + fi + elif [ "$node_version" != "$(nvm version default)" ]; then + echo "Reverting to nvm default version" + nvm use default + fi + } + add-zsh-hook chpwd load-nvmrc + load-nvmrc + tags: + - node -- cgit v1.2.3