Skip to content

Commit

Permalink
see CHANGELOG
Browse files Browse the repository at this point in the history
  • Loading branch information
Arun-KumarH committed Oct 14, 2020
1 parent f39b21c commit f04bb51
Show file tree
Hide file tree
Showing 8 changed files with 547 additions and 231 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

- add new grpc healthcheck with readiness probe
- listen on 0.0.0.0 for grpc port
- changes to store data (google.protobuf.Any meta data) to metaObject and also the subject_id, removed duplicate object tags reading
- up dependencies

### 0.1.5 (October 9th, 2020)

Expand Down
697 changes: 505 additions & 192 deletions package-lock.json

Large diffs are not rendered by default.

30 changes: 15 additions & 15 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,43 +17,43 @@
"srv"
],
"dependencies": {
"@restorecommerce/acs-client": "^0.2.11",
"@restorecommerce/acs-client": "^0.2.13",
"@restorecommerce/chassis-srv": "^0.1.5",
"@restorecommerce/cluster-service": "^0.1.4",
"@restorecommerce/grpc-client": "0.0.7",
"@restorecommerce/kafka-client": "^0.1.12",
"@restorecommerce/logger": "^0.2.1",
"@restorecommerce/protos": "^0.0.11",
"@restorecommerce/logger": "^0.3.5",
"@restorecommerce/protos": "0.0.12",
"@restorecommerce/resource-base-interface": "0.0.5",
"@restorecommerce/service-config": "^0.2.0",
"aws-sdk": "^2.740.0",
"@restorecommerce/service-config": "^0.3.1",
"aws-sdk": "^2.771.0",
"koa-multer": "^1.0.2",
"memorystream": "^0.3.1",
"multer-s3": "^2.9.0",
"s3-upload-stream": "^1.0.7",
"uuid": "^8.3.0"
"uuid": "^8.3.1"
},
"devDependencies": {
"@types/lodash": "^4.14.160",
"@types/lodash": "^4.14.162",
"@types/mocha": "^8.0.3",
"@types/node": "^14.6.0",
"@typescript-eslint/eslint-plugin": "^3.10.1",
"@typescript-eslint/eslint-plugin-tslint": "^3.10.1",
"@typescript-eslint/parser": "^3.10.1",
"@types/node": "^14.11.8",
"@typescript-eslint/eslint-plugin": "^4.4.1",
"@typescript-eslint/eslint-plugin-tslint": "^4.4.1",
"@typescript-eslint/parser": "^4.4.1",
"coveralls": "^3.1.0",
"cross-env": "^7.0.2",
"eslint": "^7.7.0",
"eslint": "^7.11.0",
"eslint-plugin-prefer-arrow-functions": "^3.0.1",
"grpc-mock": "^0.7.0",
"mocha": "^8.1.2",
"nodemon": "^2.0.4",
"mocha": "^8.1.3",
"nodemon": "^2.0.5",
"npm-run-all": "^4.1.5",
"nyc": "^15.1.0",
"rimraf": "^3.0.2",
"should": "^13.2.3",
"sleep": "^6.3.0",
"ts-node": "^9.0.0",
"typescript": "^4.0.2"
"typescript": "^4.0.3"
},
"scripts": {
"start": "npm run createtopics && node lib/start.js",
Expand Down
8 changes: 4 additions & 4 deletions setupTopics.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@

const { Events } = require('@restorecommerce/kafka-client');
const RestoreLogger = require('@restorecommerce/logger');
const sconfig = require('@restorecommerce/service-config');
const { createLogger } = require('@restorecommerce/logger');
const { createServiceConfig } = require('@restorecommerce/service-config');

const cfg = sconfig(process.cwd());
const logger = new RestoreLogger.Logger(cfg.get('logger'));
const cfg = createServiceConfig(process.cwd());
const logger = createLogger(cfg.get('logger'));

/*
* This script is used to create kafka topics before running the tests.
Expand Down
20 changes: 10 additions & 10 deletions src/healthcheck.ts
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
import * as sconfig from '@restorecommerce/service-config';
import {Logger} from '@restorecommerce/logger';
import {grpcClient} from '@restorecommerce/grpc-client';
import { createServiceConfig } from '@restorecommerce/service-config';
import { createLogger } from '@restorecommerce/logger';
import { grpcClient } from '@restorecommerce/grpc-client';

const cfg = sconfig(process.cwd());
const logger = new Logger(cfg.get('logger'));
const cfg = createServiceConfig(process.cwd());
const logger = createLogger(cfg.get('logger'));

setTimeout(() => {
logger.error('Healthcheck timed out!');
process.exit(2);
}, 60000);

process.on('uncaughtException', (error) => {
logger.error('Uncaught Exception: ', {error});
process.on('uncaughtException', (error) => {
logger.error('Uncaught Exception: ', { error });
process.exit(3);
});

process.on('unhandledRejection', (error, promise) => {
logger.error('Unhandled rejected promise: ', {promise, error});
logger.error('Unhandled rejected promise: ', { promise, error });
process.exit(4);
});

Expand All @@ -36,8 +36,8 @@ const requests: Promise<any>[] = [];
Object.keys(grpcConfig['services']).forEach((service) => {
requests.push(new Promise<any>(async (resolve, reject) => {
try {
const value = new Buffer(JSON.stringify({service})).toString('base64');
const fullPayload = {name: 'health_check', payload: {type_url: 'payload', value}};
const value = new Buffer(JSON.stringify({ service })).toString('base64');
const fullPayload = { name: 'health_check', payload: { type_url: 'payload', value } };

logger.silly('Executing: ' + JSON.stringify(fullPayload));

Expand Down
3 changes: 2 additions & 1 deletion src/start.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import * as Cluster from '@restorecommerce/cluster-service';
import { createServiceConfig } from '@restorecommerce/service-config';

const cfg = require('@restorecommerce/service-config')(process.cwd());
const cfg = createServiceConfig(process.cwd());
const server = new Cluster(cfg);
server.run('./lib/worker');
process.on('SIGINT', () => {
Expand Down
8 changes: 4 additions & 4 deletions src/worker.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import * as sconfig from '@restorecommerce/service-config';
import { createServiceConfig } from '@restorecommerce/service-config';
import * as _ from 'lodash';
import { Events } from '@restorecommerce/kafka-client';
import { Logger } from '@restorecommerce/logger';
import { createLogger } from '@restorecommerce/logger';
import * as chassis from '@restorecommerce/chassis-srv';
import { Service } from './service';
import { OStorageCommandInterface } from './commandInterface';
Expand All @@ -18,8 +18,8 @@ export class Worker {
authZ: ACSAuthZ;
oss: Service;
constructor(cfg?: any) {
this.cfg = cfg || sconfig(process.cwd());
this.logger = new Logger(this.cfg.get('logger'));
this.cfg = cfg || createServiceConfig(process.cwd());
this.logger = createLogger(this.cfg.get('logger'));
this.topics = {};
}

Expand Down
10 changes: 5 additions & 5 deletions test/test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import * as should from 'should';
import { Worker } from '../lib/worker';
import * as grpcClient from '@restorecommerce/grpc-client';
import * as kafkaClient from '@restorecommerce/kafka-client';
import * as sconfig from '@restorecommerce/service-config';
import { createServiceConfig } from '@restorecommerce/service-config';
import * as sleep from 'sleep';
import * as fs from 'fs';
import { startGrpcMockServer, bucketPolicySetRQ, stopGrpcMockServer, permitCreateObjRule, denyCreateObjRule } from './utils';
Expand Down Expand Up @@ -50,7 +50,7 @@ let meta = {
};

async function start(): Promise<void> {
cfg = sconfig(process.cwd() + '/test');
cfg = createServiceConfig(process.cwd() + '/test');
worker = new Worker(cfg);
await worker.start();
}
Expand Down Expand Up @@ -295,8 +295,8 @@ describe('testing ostorage-srv with ACS enabled', () => {
sleep.sleep(3);
});
it('With invalid subject scope should throw an error when listing object', async () => {
// make sub id invalid so that data is not read from ACS cache
subject.id = 'invalid_subject_id_2';
// make sub id invalid so that data is not read from ACS cache
subject.id = 'invalid_subject_id_2';
let result = await oStorage.list({
bucket: 'test',
subject
Expand Down Expand Up @@ -532,7 +532,7 @@ describe('testing ostorage-srv with ACS disabled', () => {
response.tags[1].value.should.equal('value_2');

// check length
response.length.should.equal(9034);
response.length.should.equal(9382);

sleep.sleep(3);
});
Expand Down

0 comments on commit f04bb51

Please sign in to comment.