Socket
Socket
Sign inDemoInstall

@pager/minion-army

Package Overview
Dependencies
Maintainers
5
Versions
33
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@pager/minion-army - npm Package Compare versions

Comparing version 0.4.1 to 0.5.0

.circleci/config.yml

17

lib/index.js

@@ -6,6 +6,16 @@ 'use strict'

const Jackrabbit = require('@pager/jackrabbit')
const joi = require('joi')
const Validation = require('@pager/minion-joi')
const joi = require('@hapi/joi')
const schema = require('./schema')
const validatorFactory = (handler, schema) => (payload) => {
const { error, value } = joi.validate(payload, schema, { stripUnknown: true })
if (error) {
throw error
}
return handler(value)
}
module.exports = (_manifest) => {

@@ -29,4 +39,3 @@ const { error, value: validatedManifest } = joi.validate(_manifest, schema)

const minions = manifest.workers.reduce((minionsByName, worker) => {
const validator = Validation(worker.validate || joi.any(), { stripUnknown: true })
const handlerWithValidation = validator(worker.handler)
const handlerWithValidation = validatorFactory(worker.handler, worker.validate || joi.any())

@@ -33,0 +42,0 @@ const minion = Minion(handlerWithValidation, {

@@ -1,2 +0,2 @@

const Joi = require('joi')
const Joi = require('@hapi/joi')

@@ -3,0 +3,0 @@ const rabbit = Joi.object() // TODO: validate that rabbit object complies with jackrabbit interface

{
"name": "@pager/minion-army",
"version": "0.4.1",
"version": "0.5.0",
"description": "Microservice Framework for RabbitMQ Workers",
"main": "lib/index.js",
"scripts": {
"test": "nyc ava --timeout=2m"
"test": "nyc ava --timeout=10s"
},

@@ -23,8 +23,8 @@ "keywords": [

"dependencies": {
"@hapi/joi": "15.x.x",
"@pager/jackrabbit": "4.x.x",
"@pager/minion": "3.x.x",
"@pager/minion-joi": "1.x.x"
"@pager/minion": "3.x.x"
},
"devDependencies": {
"ava": "1.x.x",
"ava": "2.x.x",
"eslint": "5.x.x",

@@ -37,3 +37,8 @@ "eslint-config-standard": "12.x.x",

"nyc": "14.x.x"
},
"renovate": {
"extends": [
"github>pagerinc/renovate-config"
]
}
}

@@ -8,2 +8,3 @@ # minion-army

const Army = require('@pager/minion-army');
const Joi = require('@hapi/joi');

@@ -25,4 +26,4 @@ // Refer to lib/schema.js to see valid options

},
validate: joi.object({ // set a joi schema to validate handler input (optional)
id: joi.string().required()
validate: Joi.object({ // set a joi schema to validate handler input (optional)
id: Joi.string().required()
})

@@ -29,0 +30,0 @@ },

const test = require('ava')
const Army = require('../lib/index')
const joi = require('joi')
const joi = require('@hapi/joi')

@@ -5,0 +5,0 @@ test('Creates army from manifest and workers work', async t => {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc