Socket
Socket
Sign inDemoInstall

fastify-cockroachdb

Package Overview
Dependencies
103
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    fastify-cockroachdb

A Fastify plugin for creating a CockroachDB connection through the Sequelize ORM


Version published
Weekly downloads
5
increased by400%
Maintainers
1
Install size
17.3 MB
Created
Weekly downloads
 

Readme

Source

Fastify CockroachDB Plugin using Sequelize ORM

NPM

CircleCI

Installation

npm i fastify-cockroachdb -s

Usage

// ...Other Plugins
fastify.register(
  require("fastify-cockroachdb"),
  {
    database: "database-name",
    user: "maxroach",
    password: "",
    settings: {
      dialect: "postgres",
      port: 26257,
      logging: false,
      dialectOptions: {
        ssl: {
          ca: fs.readFileSync("certs/ca.crt").toString(),
          key: fs.readFileSync("certs/client.maxroach.key").toString(),
          cert: fs.readFileSync("certs/client.maxroach.crt").toString()
        }
      }
    },
    models: [
      {
        name: "accounts",
        alias: "Account",
        schema: {
          id: {
            type: Sequelize.INTEGER,
            primaryKey: true
          },
          balance: {
            type: Sequelize.INTEGER
          }
        }
      }
    ]
  },
  err => {
    if (err) throw err;
  }
);

fastify.get("/", (request, reply) => {
  console.log(fastify.cockroachdb.instance); // Sequelize ORM instance
  console.log(fastify.cockroachdb.models.Account); // Any models declared are available here
});

Options

OptionDescription
databaseRequired, the name of the database to connect to within CockroachDB.
userRequired, the name of the user to log in as within the database.
passwordOptional, the password of the user to log in as. Should be empty if SSL is used.
settingsOptional, the settings to be passed in to the Sequelize ORM. Should include dialectOptions if a secure CockroachDB instance is used. Consult this tutorial.
portOptional, used in place of default port 26257 if no settings parameter is found.
modelsOptional, any models to be declared and injected under fastify.cockroachdb.models.

Any models declared should follow the following format:

{
  name: "profiles", // Required, should match name of model in database
  alias: "Profile", // Optional, an alias to inject the model as
  schema: schemaDefinition // Required, should match schema of model in database
}

The schemaDefinition variable should be created according to the Sequelize Model Specification.

Author

Alex Papageorgiou

License

Licensed under GPLv3.

Keywords

FAQs

Last updated on 01 Dec 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc