SAP / node-rfc

Asynchronous, non-blocking SAP NW RFC SDK bindings for Node.js
Apache License 2.0
252 stars 73 forks source link

Build rfc.node online with CircleCI + AppVeyor #8

Closed seal-ss closed 7 years ago

seal-ss commented 9 years ago

I just want to let you know that we're working on a cloud based build to create the rfc.node for both Linux and Windows with just a git push.

This is our first step to help to fix this module to make it work with Node.js 4.2.

You can have a look at our current work in progress in our fork plossys/node-rfc.

We have added Build status badges to the README.md. Here you can jump to CircleCI for the latest Linux builds and AppVeyor to the latest Windows builds.

At each git push to the master branch a build is triggered and executed with

Both builds just compile the rfc.node files that are stored as artifacts in CircleCI and AppVeyor.

A still missing step should collect both the CircleCI artifact and AppVeyor artifacts and glue altogether to prepare a npm publish step. But this should only run if someone eg. creates a new GitHub release or a similar step.

This just shows that all could be done online and still keep the SAP NW RFC DLL closed to the public. Both CI servers download the SDK from a protected download area.

If you want we can create a PR and help you setup the both CI builds (which is no more than just registering to each and connect your repo to it and it costs nothing for public repos.).

seal-ss commented 9 years ago

Further reading: http://cylonjs.com/blog/2014/11/19/creating-multiplatform-precompiled-binaries-for-node-modules/

bsrdjan commented 7 years ago

thank you very much for the proposal and the nice idea. After experimenting with CI options, the status is following.

Currently we provide node-rfc binaries for two active nodejs releases, for 64 bit Linux and Windows. Other binaries must be built from source, as described in the documentation. Linux binaries are built and tested on internal Travis-CI system and Windows is still built from source. Internal CI system must be used because backend systems, required for automated unit testing in CI, are also internal.

StefanScherer commented 7 years ago

Thanks @bsrdjan. I'll try your latest version soon. I've seen recently that you support Node.js 6.x :-) 👍