iop-rds-library

1.0.1 • Public • Published

IOP RDS Library

This is a small library that allows us to make connections to a Database, using the Singleton design pattern. This library comes with some default features such as obtaining the information of the sellers and the marketplace from the database.

Table of Contents

Install

This is an IOP module available through the npm registry. Installation is done using the npm install command:

npm install iop-rds-library -TBD

Introduction

const { RDSClient } = require('iop-rds-library');
const mockSecrets = require('./mocks/secrets');

const secrets = JSON.parse(mockSecrets().SecretString);

const rdsCliente = new RDSClient(secrets);
rdsCliente.getSellerInstanceInfo({ isGeneral: true })
  .then((instanceInfo) => console.log('instanceInfo', instanceInfo))
  .catch((error) => console.log('error', error));

From this example, you can learn the following:

  • In order to create the connection to the Database, a parameter (object type) must be passed to the constructor with the database credentials.
  • The method to obtain the information from the Seller and The Marketplace is internally responsible for opening and closing the connections.

How to run locally

Prerequisites

Installation

Install dependencies

npm i

Fill environment variables

Create a file called env.local inside the config folder. Take the variables from the env.example file into the same folder

Run locally

Once it is finished, run

npm run example-instance

If the execution is successful, the credentials obtained from the selected Seller will be visible in the Terminal. In the same way, if it is not successful, it will be seen in the terminal.

Run unit test

Run

npm test

To run code coverage use

npm run coverage

Database Connections

Create Connections

const { RDSClient } = require('iop-rds-library');
const mockSecrets = require('./mocks/secrets');

const secrets = JSON.parse(mockSecrets().SecretString);

const rdsCliente = new RDSClient(secrets);
rdsCliente.getConnection()
  .then((connection) => console.log('connection', connection))
  .catch((error) => console.log('error', error));

if the call is successful, the results would be a Bluebird<mysql.PoolConnection> Object. so you can use custom queries to manage the information in the Database.

Ex: connection.query('Select * From Table');

Close Connections

We highly recommend that when creating a connection using this library, consider an implementation that has the closing of the connection created as a final step.

Using the previous function as an example:

const { RDSClient } = require('iop-rds-library');
const mockSecrets = require('./mocks/secrets');

const secrets = JSON.parse(mockSecrets().SecretString);

const rdsCliente = new RDSClient(secrets);
rdsCliente.getConnection()
  .then((connection) => console.log('connection', connection))
  .catch((error) => console.log('error', error))
  .finally(() => { rdsCliente.destroyConnection() }); 
  <!-- Last Line Added -->

Full documentation

https://zx-ventures.atlassian.net/wiki/spaces/ICP/pages/2372206593/IOP+RDS+Library

Owners

Readme

Keywords

Package Sidebar

Install

npm i iop-rds-library

Weekly Downloads

2

Version

1.0.1

License

ISC

Unpacked Size

16 kB

Total Files

15

Last publish

Collaborators

  • jorge.teja