Security News
JSR Working Group Kicks Off with Ambitious Roadmap and Plans for Open Governance
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
egg developer tool
$ npm i egg-bin --save-dev
Add egg-bin
to package.json
scripts:
{
"devDependencies": {
"egg-bin": "1"
},
"scripts": {
"dev": "egg-bin dev",
"debug": "egg-bin debug",
"test": "egg-bin test",
"cov": "egg-bin cov",
"lint": "eslint .",
"ci": "npm run lint && npm run cov"
}
}
Start dev cluster on local
env, it will start a master, an agent and a worker.
$ egg-bin dev
--eggPath
egg web framework root path.No default value, must supply.--baseDir
application's root path.default to process.cwd()
.--port
server port.default to 7001.--cluster
worker process number.default to 1.Debug egg app with Chrome Developer Tools by iron-node.
$ egg-bin debug
Using mocha with thunk-mocha to run test.
power-assert is the default assert
library, and intelli-espower-loader will be auto required.
You can set TESTS
env to set the tests directory, it support glob grammar.
TESTS=test/a.test.js egg-bin test
And the reporter can set by the TEST_REPORTER
env, default is spec
.
TEST_REPORTER=doc egg-bin test
The test timeout can set by TEST_TIMEOUT
env, default is 30000
ms.
TEST_TIMEOUT=2000 egg-bin test
Using istanbul to run code coverage, it support all test params above.
Coverage reporter will output text-summary, json and lcov.
You can set COV_EXCLUDES
env to add dir ignore coverage.
$ COV_EXCLUDES="app/plugins/c*,app/autocreate/**" egg-bin cov
test/.setup.js
If test/.setup.js
file exists, it will be auto require on test
and cov
command.
test
├── .setup.js
└── foo.test.js
You maybe need a custom egg-bin to implement more custom features if your team has develop a framework base on egg.
Now you can implement a Program sub class, and Command sub class to do that. Or you can just override the exists command.
nsp has provide a useful security scan feature.
This example will show you how to add a new NspCommand
and MyProgram
to create a new egg-bin
tool.
const Program = require('egg-bin').Program;
class MyProgram extends Program {
constructor() {
super();
this.version = require('../package.json').version;
this.addCommand('nsp', path.join(__dirname, 'NspCommand.js'));
}
}
module.exports = MyProgram;
const Command = require('egg-bin').Command;
class NspCommand extends Command {
* run(cwd, args) {
console.log('run nsp check at %s with %j', cwd, args);
}
help() {
return 'nsp check';
}
}
module.exports = NspCommand;
#!/usr/bin/env node
'use strict';
const run = require('egg-bin').run;
run(require('../lib/my_program'));
$ my-egg-bin nsp
run nsp check at /foo/bar with []
FAQs
egg developer tool
The npm package egg-bin receives a total of 16,395 weekly downloads. As such, egg-bin popularity was classified as popular.
We found that egg-bin demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 14 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.
Security News
Research
An advanced npm supply chain attack is leveraging Ethereum smart contracts for decentralized, persistent malware control, evading traditional defenses.
Security News
Research
Attackers are impersonating Sindre Sorhus on npm with a fake 'chalk-node' package containing a malicious backdoor to compromise developers' projects.