node-oracledb/package
Christopher Jones 161dc0c841 Add oracledb.initOracleClient() for Oracle Client initialization 2020-06-03 14:14:49 +10:00
..
README.md Increase binary build portability (issue #1129) 2019-08-14 21:50:47 +10:00
buildbinary.js Increase binary build portability (issue #1129) 2019-08-14 21:50:47 +10:00
buildpackage.js Add a graceful failure check to buildpackage.js 2020-02-16 22:04:35 +11:00
install.js Add oracledb.initOracleClient() for Oracle Client initialization 2020-06-03 14:14:49 +10:00
prunebinaries.js Be more selective on binary file pruning 2019-01-17 11:40:51 +11:00

README.md

Overview

This directory is used for building the node-oracledb npm package. The scripts can also be used to create a custom package for hosting on a local server.

Most users do not need to use anything in this directory.

Maintainers

In a clone or copy of the repository:

  • Run npm run buildbinary. This calls buildbinary.js to create a node-oracledb binary for the current operating system. Depending how Node.js was installed, you may need to run npm install node-gyp -g first.

    You can run npm run buildbinary on each operating system architecture that you want to include in your package. Copy the node-oracledb binaries and related build metadata information files to the package/Staging directory on one machine.

  • Run npm run buildpackage. This calls buildpackage.js to make the node-oracledb package containing the node-oracledb JavaScript files, the available binaries, and a package.json that has install and prune script targets. The package will be created in the top level directory. It can be uploaded to npmjs.com, or to your own local server, and then used as a dependency in your projects.

Package Installation

  • As part of an npm install that uses the created package, the package.json install script runs install.js to check the availability of a binary module for the current Node.js version and operating system architecture.

    If a suitable binary is not available, installation will fail. Users must then compile node-oracledb using source code from GitHub. Alternatively a different version of node-oracledb, Node.js, or different operating system may have a suitable pre-built binary available. See https://github.com/oracle/node-oracledb/releases for information about Node.js versions and pre-built node-oracledb binaries.

  • After install, space conscious users can run npm run prune which removes pre-built binaries for all other architectures.

The package.json in GitHub doesn't have an install script target by default. This means that node-gyp will be invoked to compile node-oracledb. This allows installation from GitHub source code when no suitable pre-built binary is available.