This module is a fork of node-oracledb v1.9.3, precompiled for AWS Lambda, Node.js 8.x
The scripts to reproduce the build process can be found at node-oracledb-lambda-test.
In addition to the usual package.json and *.js files, you also need to include the
Oracle Instant Client libraries provided in lambda-lib
- they should be in your zip file's lib/
directory.
npm install --save oracledb-for-lambda
zip app.zip index.js package.json \
your-other-dependencies... \
node_modules/oracledb-for-lambda/package.json \
node_modules/oracledb-for-lambda/index.js \
node_modules/oracledb-for-lambda/lib/*.js \
node_modules/oracledb-for-lambda/build/Release/oracledb.node \
lib/*.so* \
Note: There is an issue with gulp-zip
modifying the structure of these binaries, so just use the native zip
.
To keep the zip and application size small, the Instant Client Light (English) version is provided by default. If you require error messages in languages other than English, you can swap the Instant Client Data library:
# after npm install, and before creating your zip:
cp node_modules/oracle-for-lambda/lib/libociei.so lib/
rm lib/libociicus.so
Due to the size of the Oracle libraries, you may need to deploy your zip file to S3 and get Lambda to download from the S3 URL.