1.113.0 • Published 6 months ago

@wmfs/pg-telepods v1.113.0

Weekly downloads
297
License
MIT
Repository
github
Last release
6 months ago

pg-telepods

Tymly Package npm (scoped) CircleCI codecov CodeFactor Dependabot badge Commitizen friendly JavaScript Style Guide license

Takes the contents of one PostgreSQL table, applies a transformation function to each row and ensures a target table is kept in sync

Install

$ npm install pg-telepods --save

Usage

const pg = require('pg')
const startTelepods = require('pg-telepods')

// Make a new Postgres client
const client = new pg.Client('postgres://postgres:postgres@localhost:5432/my_test_db')
client.connect()

// Start the Telepods...

startTelepods(
  {
    client: client,
    outputDir: '/some/temp/dir',
    source: {  
      tableName: 'springfield.people',
      hashSumColumnName: 'hash_sum'
    },
    target: {
      tableName: 'government.census',
      hashSumColumnName: 'origin_hash_sum'
    },
    join: {
      'social_security_id': 'social_security_id' // key = source table column, value = target table column
    },
    transformFunction: function (sourceRow, callback) {
      callback(null, {
        'socialSecurityId': sourceRow.socialSecurityId,
        'name': sourceRow.firstName + ' ' + sourceRow.lastName,
        'town': 'Springfield'
      })
    }
  },
  function (err) {
    // All data synchronized from people -> census.
  }
)

Testing

Before running these tests, you'll need a test PostgreSQL database available and set a PG_CONNECTION_STRING environment variable to point to it, for example:

PG_CONNECTION_STRING=postgres://postgres:postgres@localhost:5432/my_test_db

$ npm test

License

MIT

1.113.0

6 months ago

1.111.0

7 months ago

1.112.0

7 months ago

1.110.0

10 months ago

1.109.0

10 months ago

1.107.0

11 months ago

1.103.0

11 months ago

1.106.0

11 months ago

1.105.0

11 months ago

1.108.0

11 months ago

1.104.0

11 months ago

1.98.0

3 years ago

1.97.0

3 years ago

1.102.0

3 years ago

1.96.0

3 years ago

1.101.0

3 years ago

1.99.0

3 years ago

1.100.0

3 years ago

1.94.0

4 years ago

1.93.0

4 years ago

1.92.0

4 years ago

1.95.0

4 years ago

1.91.0

4 years ago

1.90.0

4 years ago

1.89.0

5 years ago

1.88.0

5 years ago

1.87.1

5 years ago

1.86.0

5 years ago

1.87.0

5 years ago

1.85.0

5 years ago

1.84.0

5 years ago

1.83.0

5 years ago

1.82.0

5 years ago

1.81.0

5 years ago

1.80.0

5 years ago

1.79.1

5 years ago

1.79.0

5 years ago

1.78.0

5 years ago

1.77.0

5 years ago

1.76.0

5 years ago

1.75.0

5 years ago

1.74.0

5 years ago

1.73.0

5 years ago

1.72.0

5 years ago

1.71.0

5 years ago

1.70.0

5 years ago

1.69.0

5 years ago

1.68.0

5 years ago

1.67.0

5 years ago

1.66.0

5 years ago

1.65.0

5 years ago

1.64.0

5 years ago

1.63.0

5 years ago

1.62.0

5 years ago

1.61.0

5 years ago

1.60.0

5 years ago

1.59.0

6 years ago

1.58.0

6 years ago

1.57.0

6 years ago

1.56.0

6 years ago

1.55.0

6 years ago

1.54.0

6 years ago

1.53.0

6 years ago

1.52.0

6 years ago

1.51.0

6 years ago

1.49.0

6 years ago

1.50.0

6 years ago

1.48.0

6 years ago

1.47.0

6 years ago

1.46.0

6 years ago

1.45.0

6 years ago

1.44.0

6 years ago

1.42.0

6 years ago

1.43.0

6 years ago

1.41.0

6 years ago

1.39.0

6 years ago

1.40.0

6 years ago

1.36.0

6 years ago

1.37.0

6 years ago

1.35.0

6 years ago

1.38.0

6 years ago

1.34.0

6 years ago

1.33.0

6 years ago

1.32.0

6 years ago

1.31.0

6 years ago

1.30.0

6 years ago

1.29.0

7 years ago

1.28.0

7 years ago

1.27.1

7 years ago

1.27.0

7 years ago

1.26.0

7 years ago

1.25.0

7 years ago

1.24.0

7 years ago

1.23.0

7 years ago

1.22.0

7 years ago

1.21.0

7 years ago

1.20.0

7 years ago

1.19.0

7 years ago

1.18.0

7 years ago

1.17.0

7 years ago

1.16.0

7 years ago

1.15.0

7 years ago

1.14.0

7 years ago

1.13.0

7 years ago

1.12.0

7 years ago

1.11.0

7 years ago

1.10.0

7 years ago

1.9.0

7 years ago

1.8.0

7 years ago

1.7.0

7 years ago

1.6.0

7 years ago

1.5.0

7 years ago

1.4.0

7 years ago

1.3.0

7 years ago

1.2.0

7 years ago

1.1.0

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago