Commit dcabe99b authored by Kamron Aroonrua's avatar Kamron Aroonrua 💬

Merge branch 'dev' into 'master'

Dev

See merge request !45
parents 991e914b 5562edaf
BIGSTREAM_IMG=bigstream:test
BIGSTREAM_IMG=bigstream
BS_SECRET=bigstream-server
REDIS_TAG=4
PREFIX_NO=19
......
#Changelog
## [1.2.5] - 2021-10-07 -> 2023-05-21R
### Added
- DOCKER :: TZ Data
- STORAGE :: Wirdcard Subscribe
- PLUGIN :: dt-jwt-verify
- TRIGGER :: http-listener add query meta
### Fixed
- PLUGIN :: dt-mysql port param
## [1.2.4] - 2021-06-21
### Added
- STORAGE :: Object Cache
......
FROM node:12-alpine
RUN apk add --no-cache make gcc g++ python linux-headers udev
RUN apk add make gcc g++ linux-headers udev
COPY . /app/node-bigstream
......@@ -10,7 +10,8 @@ RUN npm install
RUN node script/install_plugins.js
FROM node:12-alpine
RUN apk add --no-cache python
RUN apk add --no-cache python3
RUN apk add --no-cache tzdata
COPY --from=0 /app/node-bigstream /app/node-bigstream
......
......@@ -30,6 +30,7 @@ var process_req = function(req, res ,method) {
'object_type' : 'httpdata',
'headers': req.headers,
'method' : method,
'query' : reqHelper.getQuery(),
'data' : {}
}
......
var Redis = require('redis');
var mmatch = require("minimatch");
const KEYS = 'bs:regis:triggers';
module.exports.create = function(cfg)
......@@ -78,8 +80,13 @@ StorageEventList.prototype.update = function(cb)
StorageEventList.prototype.findJob= function(sname)
{
var jobs = [];
// this.sel.forEach( function (val) {
// if(val.storage_name == sname){
// jobs.push(val);
// }
// });
this.sel.forEach( function (val) {
if(val.storage_name == sname){
if(mmatch(sname,val.storage_name)){
jobs.push(val);
}
});
......
{
"name": "node-bigstream",
"description": "",
"version": "1.2.4",
"version": "1.2.5",
"main": "./bigstream.js",
"author": {
"name": "Kamron Aroonrua",
......
......@@ -20,6 +20,7 @@ function perform_function(context,response){
if(param.http_meta){
input_meta.http_headers = htdata.headers;
input_meta.http_method = htdata.method;
input_meta.http_query = htdata.query;
}
if(typeof htdata.data == 'object' && htdata.data.type == 'Buffer'){
data = Buffer.from(htdata.data);
......
var util = require('util');
var DTPlugin = require('../dt-plugin');
function DTTask(context,request){
DTPlugin.call(this,context,request);
this.name = "jwt-verify";
this.output_type = "";
}
util.inherits(DTTask,DTPlugin);
DTTask.prototype.perform = require('./perform');
module.exports = DTTask;
\ No newline at end of file
var jwt = require('jsonwebtoken');
var ctx = require('../../../context');
var Utils = ctx.getLib('lib/util/plugin-utils');
function perform_function(context,request,response){
var job_id = context.jobconfig.job_id;
var transaction_id = context.transaction.id;
var param = context.task.config.param || {};
var memstore = context.task.memstore
var output_type = request.input_type;
var data = request.data;
var meta = request.meta || {};
var req_token = param.token || ""
var req_secret = param.secret || ""
var env = {
'type' : output_type,
'data' : data,
'meta' : meta
}
req_secret = Utils.vm_execute_text(env,req_secret);
req_token = Utils.vm_execute_text(env,req_token);
var jwtout = {
"error":true,
"decode":{}
}
jwt.verify(req_token, req_secret, function(err, decoded) {
if(!err){
jwtout.error=false;
jwtout.decode=decoded;
}
meta.jwt = jwtout
response.meta = meta;
response.success(data,output_type);
});
//response.success();
//response.reject();
//response.error("error message")
}
module.exports = perform_function;
......@@ -14,6 +14,7 @@ function perform_function(context,request,response){
var meta = request.meta || {};
var req_host = param.host || "localhost";
var req_port = param.port || "3306"
var req_user = param.user || "";
var req_pass = param.password || "";
var req_db = param.database || "";
......@@ -35,6 +36,7 @@ function perform_function(context,request,response){
{
var _prm = meta._param;
req_host = (_prm.host)?_prm.host:req_host;
req_port = (_prm.port)?_prm.host:req_port;
req_user = (_prm.user)?_prm.user:req_user;
req_pass = (_prm.password)?_prm.password:req_pass;
req_db = (_prm.database)?_prm.database:req_db;
......@@ -43,6 +45,7 @@ function perform_function(context,request,response){
var conf = {
"host" : req_host,
"port" : Number(req_port),
"user" : req_user,
"password" : req_pass,
"database" : req_db
......
{
"version":"1.2.4",
"build":"202106211900"
"version":"1.2.5",
"build":"202305211800"
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment