install.fairie/docs/scripts/before/run_onchange_before_09-node-version.sh.tmpl.md
2023-08-08 03:06:49 -04:00

1.8 KiB

title description sidebar_label slug githubLocation scriptLocation repoLocation
Node.js Version Ensures a recent version of Node.js is available to the user by leveraging Volta 09 Node.js Version /scripts/before/run_onchange_before_09-node-version.sh.tmpl https://github.com/megabyte-labs/install.doctor/blob/master/home/.chezmoiscripts/universal/run_onchange_before_09-node-version.sh.tmpl https://github.com/megabyte-labs/install.doctor/raw/master/home/.chezmoiscripts/universal/run_onchange_before_09-node-version.sh.tmpl home/.chezmoiscripts/universal/run_onchange_before_09-node-version.sh.tmpl

Node.js Version

Ensures a recent version of Node.js is available to the user by leveraging Volta

Overview

This script installs the latest version of Node.js with Volta if the default Node.js version is an outdated version.

Source Code

{{- if (ne .host.distro.family "windows") -}}
#!/usr/bin/env bash
# @file Node.js Version
# @brief Ensures a recent version of Node.js is available to the user by leveraging Volta
# @description
#     This script installs the latest version of Node.js with Volta if the default Node.js version
#     is an outdated version.

# Node.js version: {{ output "node" "--version" }}

{{ includeTemplate "universal/profile-before" }}
{{ includeTemplate "universal/logg-before" }}

### Ensure recent version of Node.js is being used
if command -v volta > /dev/null; then
  if ! test "$(node --version | sed 's/^v//' | awk '{print $1}' | awk -F'.' ' ( $1 > 15) ')"; then
    logg info 'Installing latest version of Node.js'
    volta install node@latest
  else
    logg info 'Node.js appears to meet the minimum version requirements (version >15)'
  fi
else
  logg warn 'Volta is not installed - skipping logic that ensures Node.js meets the version requirement of >15'
fi

{{ end -}}