iop-rds-library
v1.0.1
Published
RDS Connection & Utils Library
Downloads
5
Readme
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
- Alejandro Salcedo [email protected]
- Emmanuel Romero [email protected]
- Felix Feliz [email protected]