# Switch nodejs version on machine executor \[solved\]

**URL:** <https://discuss.circleci.com/t/switch-nodejs-version-on-machine-executor-solved/26675>\
**Category:** Programming Languages\
**Tags:** nodejs\
**Created:** [November 22, 2018, 9:11am UTC](https://discuss.circleci.com/t/switch-nodejs-version-on-machine-executor-solved/26675 "2018-11-22T09:11:30Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![gionn](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/gionn/32/15250_2.png) [@gionn](https://discuss.circleci.com/u/gionn)\
**Post date:** [November 22, 2018, 9:11am UTC](https://discuss.circleci.com/t/switch-nodejs-version-on-machine-executor-solved/26675/1 "2018-11-22T09:11:30Z")

</div>

Hi,

we had some problems upgrading nodejs on machine executors, so we wrote up about the recipe we followed:

[https://www.cloudesire.com/how-to-upgrade-node-on-circleci-machine-executor/](https://www.cloudesire.com/how-to-upgrade-node-on-circleci-machine-executor/)

---

<div class="post-metadata">

**Author:** ![Jirik](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/jirik/32/18849_2.png) [@Jirik](https://discuss.circleci.com/u/Jirik)\
**Post date:** [December 6, 2018, 2:24pm UTC](https://discuss.circleci.com/t/switch-nodejs-version-on-machine-executor-solved/26675/2 "2018-12-06T14:24:03Z")

</div>

Hello, thank you for your recipe. I didn’t know nvm is installed by default in machine executor.

Unfortunately it does’t work properly for me.  
Node 8.11.3 is installed for me within the same step, but in next step I have node 6.x again

```auto
      - run:
          name: Install Node.js 8.9.1 with build in nvm tool
          # https://www.cloudesire.com/how-to-upgrade-node-on-circleci-machine-executor/
          command: |
            export NVM_DIR="/opt/circleci/.nvm"
            [-s "$NVM_DIR/nvm.sh"] && . "$NVM_DIR/nvm.sh"
            nvm install v8.11.3 && nvm use v8.11.3 && nvm alias default v8.11.3
            node -v

      - run:
          name: Check node version
          command: |
            node -v

```

which outputs

```auto
# first step:
Now using node v8.11.3 (npm v5.6.0)
Now using node v8.11.3 (npm v5.6.0)
default -> v8.11.3
v8.11.3

# and second step:

v6.1.0

```

---

<div class="post-metadata">

**Author:** ![Jirik](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/jirik/32/18849_2.png) [@Jirik](https://discuss.circleci.com/u/Jirik)\
**Post date:** [December 6, 2018, 2:54pm UTC](https://discuss.circleci.com/t/switch-nodejs-version-on-machine-executor-solved/26675/3 "2018-12-06T14:54:38Z")

</div>

OK later I solved it by implementing the code from this post: [How to change node version in CircleCI 2.0?](https://discuss.circleci.com/t/how-to-change-node-version-in-circleci-2-0/17455/4)

---

<div class="post-metadata">

**Author:** ![manuelmazzuola](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/manuelmazzuola/32/15375_2.png) [@manuelmazzuola](https://discuss.circleci.com/u/manuelmazzuola)\
**Post date:** [December 6, 2018, 2:56pm UTC](https://discuss.circleci.com/t/switch-nodejs-version-on-machine-executor-solved/26675/4 "2018-12-06T14:56:06Z")

</div>

I’ve fixed the blog post [https://github.com/ClouDesire/docusaurus/commit/ee11951336be3f64f5c6a25a8047bfeecc29fb43](https://github.com/ClouDesire/docusaurus/commit/ee11951336be3f64f5c6a25a8047bfeecc29fb43)  
The problem was that you need to load the nvm environment on every run.

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/circleci/original/3X/5/1/511608acda8e85906e15909b57bd0a46c1dbe291.png) [@system](https://discuss.circleci.com/u/system)\
**Post date:** [March 6, 2019, 3:06pm UTC](https://discuss.circleci.com/t/switch-nodejs-version-on-machine-executor-solved/26675/5 "2019-03-06T15:06:10Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
