@ggvlasov/ydb-sdk

Node.js bindings for working with YDB API over gRPC


Keywords
ydb, sdk, grpc
License
Apache-2.0
Install
npm install @ggvlasov/ydb-sdk@1.0.5

Documentation

Сейчас это экспериментальный пакет.

Он предназначен для подготовки pull request к пакету ydb-sdk.

https://www.npmjs.com/package/ydb-sdk

Текущая версия основана на версии 2.5.2 ydb-sdk

Текущая версия ydb-sdk 2.6.2

Не используйте его на productions.

Смотри README-YDB.md

How to use

Install dependencies and compile library

npm ci
npm run build:lib

Set environment variables

Variables which should not be set for a specific installation are explicitly set to an empty value, so that startup script correctly detects which installation you are aiming at.

Common variables

export YDB_SDK_LOGLEVEL=debug
export IAM_ENDPOINT= # for Yandex.Cloud, by default it is iam.api.cloud.yandex.net:443

Credential variables

For the typical cases of using these variables, see below:

export YDB_ACCESS_TOKEN_CREDENTIALS= # here comes your token from `yc iam create-token`

export YDB_ANONYMOUS_CREDENTIALS=1 # try anonymous access

export YDB_METADATA_CREDENTIALS=1 #  try local metadata service authentication

export YDB_SERVICE_ACCOUNT_KEY_FILE_CREDENTIALS = # here should be the path to the service account key file from 'yc iam key create --folder-id <folder_id> --service-account-name <sa_name> --output ~/.ydb/sa_name.json'

Deprecated variables

These variables will be removed in the next major release:

export YDB_TOKEN= # here comes your token from `yc iam create-token`

export SA_ID= # here come you service account's id
export SA_PRIVATE_KEY_FILE= # here should be the path to the file with your service account's private key
export SA_ACCESS_KEY_ID= # here comes your service account's key id

export SA_JSON_FILE = # here should be the path to the service account key file from 'yc iam key create --folder-id <folder_id> --service-account-name <sa_name> --output ~/.ydb/sa_name.json'

Access to internal YDB cluster

export YDB_ACCESS_TOKEN_CREDENTIALS= # here comes your oauth token

Access to Yandex.Cloud YDB cluster from local machine

Serverless DB

export YDB_ACCESS_TOKEN_CREDENTIALS= # here comes your token from `yc iam create-token`

Dedicated DB

export YDB_ACCESS_TOKEN_CREDENTIALS= # here comes your token from `yc iam create-token`
export YDB_SSL_ROOT_CERTIFICATES_FILE= # here should be the path to ssl root certificate for YDB installation

Access to Yandex.Cloud YDB cluster from virtual machine

export YDB_SERVICE_ACCOUNT_KEY_FILE_CREDENTIALS= # here should be the path to the service account key file from 'yc iam key create --folder-id <folder_id> --service-account-name <sa_name> --output ~/.ydb/sa_name.json'

Run basic-example script

cd examples
npm ci
npm run build
npm run basic-v1 -- --connection-string grpcs://your.cloud.endpoint.hostname?database=your-cloud-db-name