@fonoster/common 0.3.16-alpha.2 → 0.3.17-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1,2 @@
1
- export default function (): void;
1
+ declare const _default: () => Promise<void>;
2
+ export default _default;
@@ -1,26 +1,4 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
2
  Object.defineProperty(exports, "__esModule", { value: true });
25
3
  /*
26
4
  * Copyright (C) 2022 by Fonoster Inc (https://fonoster.com)
@@ -41,25 +19,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
41
19
  * limitations under the License.
42
20
  */
43
21
  /* eslint-disable require-jsdoc */
44
- const logger_1 = __importDefault(require("@fonoster/logger"));
45
- const grpc = __importStar(require("@grpc/grpc-js"));
46
- const grpc_ts_health_check_1 = require("grpc-ts-health-check");
22
+ const grpc_health_check_1 = require("@fonoster/grpc-health-check");
47
23
  const host = process.env.SERVICE_ADDRESS || "localhost";
48
24
  const port = parseInt(process.env.SERVICE_PORT) || 50052;
49
25
  const service = process.env.SERVICE_NAME || "";
50
- function default_1() {
51
- const healthClient = new grpc_ts_health_check_1.HealthClient(`${host}:${port}`, grpc.credentials.createInsecure());
52
- const request = new grpc_ts_health_check_1.HealthCheckRequest();
53
- request.setService(service);
54
- healthClient.check(request, (error, response) => {
55
- if (error) {
56
- logger_1.default.error(`@fonoster/common healthcheck failed: ${error}`, error);
57
- process.exit(1);
58
- }
59
- else {
60
- logger_1.default.verbose(`@fonoster/common healthcheck success [status: ${response.getStatus()}]`);
61
- process.exit(0);
62
- }
63
- });
64
- }
65
- exports.default = default_1;
26
+ exports.default = async () => (0, grpc_health_check_1.checker)(service, `${host}:${port}`);
package/dist/index.d.ts CHANGED
@@ -2,8 +2,9 @@ import APIClient from "./api_client";
2
2
  import WebAPIClient from "./web_client";
3
3
  import { ClientOptions, WebClientOptions } from "./types";
4
4
  import { getClientCredentials, getServerCredentials } from "./trust_util";
5
+ import healthcheck from "./healthcheck";
5
6
  import runServices from "./service_runner";
6
7
  import { Plugin } from "./speech/plugin";
7
8
  import { SpeechProvider, SpeechTracker, SpeechResult, StreamSpeechResult } from "./speech/types";
8
9
  export * as Tracer from "./tracer";
9
- export { APIClient, WebAPIClient, WebClientOptions, ClientOptions, Plugin, SpeechTracker, SpeechResult, SpeechProvider, StreamSpeechResult, getClientCredentials, getServerCredentials, runServices };
10
+ export { APIClient, WebAPIClient, WebClientOptions, ClientOptions, Plugin, SpeechTracker, SpeechResult, SpeechProvider, StreamSpeechResult, getClientCredentials, getServerCredentials, runServices, healthcheck };
package/dist/index.js CHANGED
@@ -22,7 +22,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
22
22
  return (mod && mod.__esModule) ? mod : { "default": mod };
23
23
  };
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.runServices = exports.getServerCredentials = exports.getClientCredentials = exports.Plugin = exports.WebAPIClient = exports.APIClient = exports.Tracer = void 0;
25
+ exports.healthcheck = exports.runServices = exports.getServerCredentials = exports.getClientCredentials = exports.Plugin = exports.WebAPIClient = exports.APIClient = exports.Tracer = void 0;
26
26
  /*
27
27
  * Copyright (C) 2022 by Fonoster Inc (https://fonoster.com)
28
28
  * http://github.com/fonoster/fonoster
@@ -48,7 +48,8 @@ exports.WebAPIClient = web_client_1.default;
48
48
  const trust_util_1 = require("./trust_util");
49
49
  Object.defineProperty(exports, "getClientCredentials", { enumerable: true, get: function () { return trust_util_1.getClientCredentials; } });
50
50
  Object.defineProperty(exports, "getServerCredentials", { enumerable: true, get: function () { return trust_util_1.getServerCredentials; } });
51
- //import healthcheck from "./healthcheck";
51
+ const healthcheck_1 = __importDefault(require("./healthcheck"));
52
+ exports.healthcheck = healthcheck_1.default;
52
53
  const service_runner_1 = __importDefault(require("./service_runner"));
53
54
  exports.runServices = service_runner_1.default;
54
55
  const plugin_1 = require("./speech/plugin");
@@ -46,12 +46,13 @@ const logger_1 = __importDefault(require("@fonoster/logger"));
46
46
  const env_is_set_1 = __importDefault(require("./env_is_set"));
47
47
  const grpc = __importStar(require("@grpc/grpc-js"));
48
48
  const trust_util_1 = require("./trust_util");
49
+ const grpc_health_check_1 = require("@fonoster/grpc-health-check");
49
50
  const interceptor = require("grpc-interceptors");
50
51
  const ENDPOINT = process.env.BINDADDR || "0.0.0.0:50052";
51
52
  function run(srvInfList, middlewareList) {
52
53
  const grpcServer = new grpc.Server();
53
54
  // Wrapped server
54
- const server = interceptor.serverProxy(grpcServer);
55
+ const server = interceptor.serverProxy((0, grpc_health_check_1.useHealth)(grpcServer));
55
56
  logger_1.default.info(`@fonoster/common service runner [starting @ ${ENDPOINT}, api = ${srvInfList[0].version}]`);
56
57
  middlewareList?.forEach((middleware) => {
57
58
  server.use(middleware.middlewareObj);
package/package.json CHANGED
@@ -1,37 +1,36 @@
1
1
  {
2
2
  "name": "@fonoster/common",
3
- "version": "0.3.16-alpha.2",
3
+ "version": "0.3.17-alpha.1",
4
4
  "description": "Common artifacts",
5
- "author": "Pedro Sanders <psanders@fonoster.com>",
6
5
  "homepage": "https://github.com/fonoster/fonoster#readme",
6
+ "bugs": {
7
+ "url": "https://github.com/fonoster/fonoster/issues"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/fonoster/fonoster.git"
12
+ },
7
13
  "license": "MIT",
14
+ "author": "Pedro Sanders <psanders@fonoster.com>",
8
15
  "main": "dist/index",
9
16
  "types": "dist/index",
10
- "scripts": {
11
- "prebuild": "rimraf ./dist tsconfig.tsbuildinfo",
12
- "build": "tsc -b tsconfig.json"
13
- },
14
17
  "directories": {
15
- "src": "src",
16
- "test": "test"
18
+ "test": "test",
19
+ "src": "src"
17
20
  },
18
21
  "files": [
19
22
  "dist"
20
23
  ],
21
- "publishConfig": {
22
- "access": "public"
23
- },
24
- "repository": {
25
- "type": "git",
26
- "url": "git+https://github.com/fonoster/fonoster.git"
27
- },
28
- "bugs": {
29
- "url": "https://github.com/fonoster/fonoster/issues"
24
+ "scripts": {
25
+ "prebuild": "rimraf ./dist tsconfig.tsbuildinfo",
26
+ "build": "tsc -b tsconfig.json"
30
27
  },
31
28
  "dependencies": {
32
- "@fonoster/certs": "^0.3.15",
33
- "@fonoster/logger": "^0.3.16-alpha.2",
29
+ "@fonoster/certs": "^0.3.17-alpha.1",
30
+ "@fonoster/grpc-health-check": "github:fonoster/grpc-health-check",
31
+ "@fonoster/logger": "^0.3.17-alpha.1",
34
32
  "@grpc/grpc-js": "^1.3.7",
33
+ "@grpc/proto-loader": "^0.7.2",
35
34
  "@opentelemetry/api": "^1.0.4",
36
35
  "@opentelemetry/exporter-jaeger": "^1.0.1",
37
36
  "@opentelemetry/exporter-zipkin": "^1.0.1",
@@ -48,5 +47,8 @@
48
47
  "deepmerge": "^4.2.2",
49
48
  "grpc-interceptors": "github:fonoster/node-grpc-interceptors"
50
49
  },
51
- "gitHead": "e473bf9ae28f768f141c5e15d3cac4651816e3d6"
50
+ "publishConfig": {
51
+ "access": "public"
52
+ },
53
+ "gitHead": "ce0ded81c157cf72a0b1bb94ee364b3d04dca06c"
52
54
  }