Node support on OS X


#1

Currently, when you attempt to specify both a node and xcode version in the machine section of circle.yml, you get:

“Setting the node.js version is not supported on OSX containers.”

It would be immensely helpful to have support for this, particularly for React Native projects, which drive their build process via node


#2

Thank you for your suggestion—we will see what we can do about this.


#3

This would be super useful for us because it’s not just react specific it’s all of cordova, bower and less. Then the build times to ship to testflight takes like 5-10 minutes of just waiting for Apple to acknowladge the upload is completed (we use fastlane), so currently we’re seeing upwards 30 minute build times compared to our normal 10 on web projects.


#4

Any updates on this issue?


#5

It’s been over 6 months now. Any update on this? why can’t we set the node version when using a OS X container?


#6

Hey we are as of right now not officially supporting “non macOS/iOS builds” on our macOS fleet, but this may change in the future. This is due to a lot of reasons but for now you can set Node up with the tools we ship with the container.
The more people that care for it here and in the form of support requests the more we will consider it.

May I ask what your requirements are, meaning are you working on Node.js web apps or do you just run scripts that support your iOS / macOS builds in some way?

Best,
Constantin


#7

In our case, we’re using node scripts that support an iOS build (React Native’s build tools)


#9

Same here, we are using Node for our React Native iOS and Android apps. So we need to build on OS X and support for Node.

I think with the growing use of RN (almost 40k stars on github), priority of this issue should be re-evaluated.


#10

We use node.js as part of building our iOS apps also. Would be great if the OSX containers supported the >machine>node setting.


#11

Hey,

all your input is really helpful. Please keep it coming and don’t be shy to open new threads like this discussing new things you’d like us to see add. Simply explaining what you need/want and why it would be a great addition to the platform is a great start, I’m sure the community will then take it from there :slight_smile:

Thanks,
Constantin


#12

+1 for CircleCi supporting React Native builds on OSX.


#13

you know, you can just install node.js the “manual” way in the dependencies:/pre: section of circle.yml. It’s not as easy as just stating a node version in the machine section, but it’s not rocket science either… here is a gist how I install (and cache) nodejs on an osx container: https://gist.github.com/ctaepper/cf31524dcb748db72708ace22f141aa6


#14

+1 for CircleCI supporting Node on OSX boxes.

Need for React Native/Fastlane deployment.


#15

+1 for CircleCi supporting React Native builds on OSX.


#16

The real issue is that circle.yml not having feature parity against Ubuntu means there’s now two different best practices on how to configure builds, one referring to the native CLI way of installing something and one being the circles configuration on Ubuntu.

It shouldn’t need to be motivated why nodejs is used on OSX any more than why it’s used on Ubuntu.


#17

Any updates here?

We also use ReactNative on iOS and Android


#18

We’re also looking to use Fastlane to build React Native on Circle.


#19

+1
We need it for React Native builds on macOS.
It would save a lot of build time if node and yarn were pre-installed in the macOS container.


#20

+1 for this feature. Using fastlane alongside Ionic 2 Xcode builds would be very useful.


#21

A simple solution to this is to manually install nvm and then node.
Here is a gist: https://gist.github.com/scottire/d5e4bb0bc8161719bf47688e917240b0