First, install homebrew.
To build and install cffi follow these steps:
- Install libffi
First, install homebrew.
To build and install cffi follow these steps:
When attempting to build the awesome serialport NPM package in Docker using a node alpine image, in usually failes on building the node-gyp package.
There are various workarounds which can be found online, such as this one.
However, the key ingredient is building the serialport package from source, using this line:
npm install serialport --build-from-source=serialport
| exports.assertion = function(selector) { | |
| this.selector = selector; | |
| this.message = 'Testing if element <' + selector + '> has no descendents.'; | |
| this.expected = true; | |
| this.pass = function(value) { | |
| return value && (value.length === 0); | |
| }; | |
| this.value = function(result) { |
| module.exports = { | |
| groupGlobals : null, | |
| checkGroupGlobals : function(hookName) { | |
| if (hookName && this.groupGlobals) { | |
| return this.groupGlobals[hookName]; | |
| } | |
| if (this.test_settings.group_name) { | |
| try { |
| var chromedriver = require('chromedriver'); | |
| var moduleFolder = '../../node_modules/chromedriver/lib/chromedriver/'; | |
| var path = require('path'); | |
| var binPath = path.resolve(path.join(moduleFolder, process.platform === 'win32' ? 'chromedriver.exe' : 'chromedriver')); | |
| module.exports = { | |
| defaultInstance : null, | |
| start : function() { | |
| this.defaultInstance = require('child_process').execFile(binPath, [ |