UNPKG

@tbmini/eureka-client-ts

Version:

--- id: eureka-client-ts ---

70 lines 2.74 kB
"use strict"; /** @format */ Object.defineProperty(exports, "__esModule", { value: true }); var eureka_js_client_1 = require("eureka-js-client"); var address = require('address'); var ip = address.ip() || '127.0.0.1'; function getParams(options) { var port = options.port, appName = options.appName, _a = options.registerWithEureka, registerWithEureka = _a === void 0 ? true : _a; var env = !process.env.NODE_ENV || process.env.NODE_ENV === 'local' ? 'dev' : process.env.NODE_ENV; var eurekaHosts = { dev: ['http://eureka.duibadev.com.cn'], test: ['http://eureka.duibatest.com.cn'], autotest: ['http://autotest-eureka.duibatest.com.cn'], aliyunTest: ['http://10.170.1.121:1025'], pre: ['http://10.30.10.61:1025'], prod: ['http://10.10.10.21:1025', 'http://10.20.10.22:1025'] }; var msg; if (!env) { msg = '无法获取到NODE_ENV'; } else if (!eurekaHosts[env]) { msg = "NODE_ENV\u9519\u8BEF\uFF0C\u53EA\u80FD\u4E3A".concat(Object.keys(eurekaHosts).join(',')); } if (msg) { console.error(new Error("Eureka Error\uFF0C".concat(msg))); process.exit(1); } return { // application instance information instance: { instanceId: "".concat(ip, ":").concat(appName, ":").concat(port), hostName: ip, app: appName, ipAddr: ip, status: 'UP', port: { $: port, '@enabled': 'true' }, securePort: { $: '443', '@enabled': 'false' }, homePageUrl: "http://".concat(ip, ":").concat(port, "/"), statusPageUrl: "http://".concat(ip, ":").concat(port, "/info"), healthCheckUrl: "http://".concat(ip, ":").concat(port, "/health"), lastDirtyTimestamp: +new Date(), vipAddress: appName, secureVipAddress: appName, dataCenterInfo: { '@class': 'com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo', name: 'MyOwn' }, metadata: { weight: '100', 'duiba.service.group.key': process.env.DUIBA_SERVICE_GROUP_KEY, zone: process.env.ZONE || 'defaultZone' } }, eureka: { // eureka server host / port registerWithEureka: registerWithEureka, serviceUrls: { default: eurekaHosts[env].map(function (el) { return "".concat(el, "/eureka/apps/"); }) } } }; } function client(options) { var params = getParams(options); var client = new eureka_js_client_1.Eureka(params); return client; } exports.default = client; //# sourceMappingURL=client.js.map