connectors-custom-wss
v1.0.0
Published
Websocket Service for CV2
Downloads
2
Readme
Websocket Service for CV2
Publishing
To publish, first export an AWS_PROFILE
environmental variable like:
export AWS_PROFILE=default
. Then run npm run publish
.
Database
We are using a PostgreSQL10 database as a ledger for all Websocket client connections to 3rd party. The database contains:
- A unique identifier
- Credentials (information needed to authenticate to the 3rd party)
- Timestamps (createdAt, updatedAt)
Migrations
To handle edits to the database schema, we need to manage migrations. The history of migrations is contained in src/db/migrations
.
When an edit to the database schema is needed, as part of the development, run npm run db:create <migration_name>
.
For example, if an additional field called status
in the database is needed, run npm run db:make addStatusField
. This will make a file in the format <datetime>_addStatusField.ts
to the migrations
folder. You can then edit that file to add to the schema.
There will be an up
and down
function that's been templated out in the generated migration file.
module.exports = {
up: (queryInterface, Sequelize) => {
},
down: (queryInterface, Sequelize) => {
}
};
Delete the down
function. The down
function is used when sequelize db:migrate
is executed. We want to maintain an accurate history of alterations made to the database. So instead of rolling back, add another migration to the up
function. The up
function is executed when sequelize db:migrate:undo
is run.
We run latest migrations as part of connecting to the database instance.