diff --git a/README.md b/README.md index 07d7ff7b7..2591e9359 100644 --- a/README.md +++ b/README.md @@ -14,12 +14,11 @@ The Aerospike Node.js client is a Node.js add-on module, written using V8. The client is compatible with Node.js 20 (Upcoming LTS) and 18 (LTS). It supports the following operating systems: - RHEL 8/9 -- Debian 10 (x86_64 architecture only) - Debian 11 - Amazon Linux 2023 - Ubuntu 20.04/22.04 (Focal Fossa, Jammy Jellyfish) - Many Linux distributions compatible with one of the above OS releases. -- macOS versions 11/12/13 are also supported. (Node.js 14 install unavailable on M1 Mac systems) +- macOS 12/13 The client is compatible with arm64, aarch64, and x86_64 architectures. diff --git a/docker/Dockerfile.alpine b/docker/Dockerfile.alpine deleted file mode 100644 index a7856dc30..000000000 --- a/docker/Dockerfile.alpine +++ /dev/null @@ -1,47 +0,0 @@ -# This Dockerfile demonstrates how to build the Aerospike Node.js client on -# Alpine Linux. Since there is no pre-build package for the Aerospike C Client -# SDK for Alpine Linux, this Dockerfile first builds the C Client SDK from source -# (a submodule for the Node.js client), then builds the Node.js client using it. -# Stage 2 install the Node.js client into the final Docker image, to keep the size of -# that image minimal (i.e. no build dependencies). -# -# Note: The AS_NODEJS_VERSION must use version 4.0.3 and up since this is where the -# C client submodule was introduced. - -# Stage 1: Build Aerospike C client and Node.js client -FROM node:lts-alpine as as-node-builder -WORKDIR /src - -ENV AS_NODEJS_VERSION v5.0.1 - -RUN apk update -RUN apk add --no-cache \ - build-base \ - linux-headers \ - bash \ - libuv-dev \ - openssl-dev \ - lua5.1-dev \ - zlib-dev \ - git \ - python3 - -RUN git clone --branch ${AS_NODEJS_VERSION} --recursive https://github.com/aerospike/aerospike-client-nodejs -# TODO: build-command.sh might be broken for alpine in some versions, use latest version when it's in git -COPY build-commands.sh /src/aerospike-client-nodejs/scripts/build-commands.sh - -RUN cd /src/aerospike-client-nodejs \ - && /src/aerospike-client-nodejs/scripts/build-c-client.sh \ - && npm install /src/aerospike-client-nodejs --unsafe-perm --build-from-source - -# Stage 2: Deploy Aerospike Node.js Runtime only -FROM node:lts-alpine -WORKDIR /src - -RUN apk add --no-cache \ - zlib \ - openssl - -COPY --from=as-node-builder /src/aerospike-client-nodejs/ aerospike-client-nodejs/ - -RUN npm install /src/aerospike-client-nodejs \ No newline at end of file diff --git a/docker/Dockerfile.bullseye-slim b/docker/Dockerfile.bullseye-slim deleted file mode 100644 index 8b15169f5..000000000 --- a/docker/Dockerfile.bullseye-slim +++ /dev/null @@ -1,18 +0,0 @@ -# This Dockerfile demonstrates how to use the Aerospike Node.js client on -# bullseye-slim (Debian 11) using the pre-built package and minimal prerequirements. -# -# Note: The AS_NODEJS_VERSION must use version 4.0.3 and up since this is where -# the C client submodule was introduced. - -# Stage 1: Install Node.js Client Dependencies -FROM node:lts-bullseye-slim as installer -WORKDIR /src - -ENV AS_NODEJS_VERSION v5.0.1 - -RUN apt update -y -RUN apt install -y \ - openssl \ - zlib1g - -RUN npm install aerospike@${AS_NODEJS_VERSION} diff --git a/docker/Dockerfile.lambda b/docker/Dockerfile.lambda deleted file mode 100644 index 1eb9dbe43..000000000 --- a/docker/Dockerfile.lambda +++ /dev/null @@ -1,44 +0,0 @@ -# This Dockerfile demonstrates how to build the Aerospike Node.js client on -# Amazon Linux 2 for AWS Lambda. Since there is no pre-built package for the -# Aerospike C Client SDK for Amazon Linux 2, this Dockerfile uses a multi-stage -# approach to building the client to minimize the final image size. -# -# Note: The AS_NODEJS_VERSION must use version 4.0.3 and up since this is where -# the C client submodule was introduced. - -# Stage 1: Build Aerospike C Client & Node.js Client -FROM public.ecr.aws/lambda/nodejs:16 as builder -WORKDIR /src - -ENV AS_NODEJS_VERSION v5.0.1 - -RUN yum update -y -RUN yum install -y \ - gcc-c++ \ - linux-headers \ - libuv-devel \ - lua5.1-devel \ - openssl11-devel \ - zlib-devel \ - python3 \ - make \ - wget \ - tar \ - git - -RUN git clone --branch ${AS_NODEJS_VERSION} --recursive https://github.com/aerospike/aerospike-client-nodejs aerospike -RUN cd /src/aerospike \ - && /src/aerospike/scripts/build-c-client.sh \ - && npm install /src/aerospike --unsafe-perm --build-from-source - -# Stage 2: Install Node.js Client Dependencies -FROM public.ecr.aws/lambda/nodejs:16 as installer -WORKDIR /src - -COPY --from=builder /src/aerospike ./aerospike - -RUN yum update -y -RUN yum install -y \ - openssl11 \ - zlib -RUN npm install /src/aerospike \ No newline at end of file diff --git a/docker/Dockerfile.ubuntu22.04 b/docker/Dockerfile.ubuntu22.04 deleted file mode 100644 index 59a6d0872..000000000 --- a/docker/Dockerfile.ubuntu22.04 +++ /dev/null @@ -1,45 +0,0 @@ -# This Dockerfile demonstrates how to build the Aerospike Node.js client on -# Ubuntu 22.04. Since there is no pre-built package for the Aerospike C Client SDK -# for Ubuntu 22.04 yet, this Dockerfile uses a multi-stage approach to building the -# client to minimize the final image size. -# -# Note: The AS_NODEJS_VERSION must use version 4.0.3 and up since this is where -# the C client submodule was introduced. - -# Stage 1: Build Aerospike C Client & Node.js Client -FROM sitespeedio/node:ubuntu-22.04-nodejs-16.15.0 as builder -WORKDIR /src - -ENV AS_NODEJS_VERSION v5.0.1 - -RUN apt update -y -RUN apt install -y \ - libc6-dev \ - libssl-dev \ - autoconf \ - automake \ - libtool \ - g++ \ - zlib1g-dev \ - liblua5.1-0-dev \ - ncurses-dev \ - python3 \ - wget \ - git \ - make - -RUN git clone --branch ${AS_NODEJS_VERSION} --recursive https://github.com/aerospike/aerospike-client-nodejs aerospike -RUN cd /src/aerospike \ - && /src/aerospike/scripts/build-c-client.sh \ - && npm install /src/aerospike --unsafe-perm --build-from-source - -# Stage 2: Install Node.js Client Dependencies -FROM sitespeedio/node:ubuntu-22.04-nodejs-16.15.0 as installer -WORKDIR /src - -COPY --from=builder /src/aerospike ./aerospike - -RUN apt update -y -RUN apt install -y \ - zlib1g -RUN npm install /src/aerospike diff --git a/docker/README.md b/docker/README.md new file mode 100644 index 000000000..33b48ad90 --- /dev/null +++ b/docker/README.md @@ -0,0 +1,7 @@ +# Docker Examples + +The docker files that were previously located in this directory have been moved to +the [Nodejs-Client-Examples](https://github.com/aerospike-examples/nodejs-client-examples) directory. + +Files in this directory are not intended for production use, but rather to demonstrate the steps +necessary to install and build the client on various systems. \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 42991f5e4..8345e439d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "aerospike", - "version": "5.8.0", + "version": "5.9.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "aerospike", - "version": "5.8.0", + "version": "5.9.0", "cpu": [ "x64", "arm64" @@ -362,9 +362,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.0.tgz", - "integrity": "sha512-t/QaEvyIoIkwzpiZ7aoSKK8kObQYeF7T2v+dazAYCb8SXtp58zEVkWW7zAnju8FNKNdr4ScAOEDmMItbyOmEYw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.22.13", diff --git a/package.json b/package.json index ef73e0666..fe749294e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "aerospike", - "version": "5.8.0", + "version": "5.9.0", "description": "Aerospike Client Library", "keywords": [ "aerospike",