@nginstack/dev-tools v70.0.94
Development Tools
Auxiliary tools used in the development of nginstack.
Install
Prerequisites
- Node.js 8.0 or greater.
Installation
Install erp-dev-tools using npm (or yarn):
npm install erp-dev-tools
Configuration
Builder API requires a configuration about the target database that will run the tests and receive the build artifacts. The configuration can be informed by environment variables or by a .env config file placed at repository root.
The build API and scripts will search custom jaz archives automatically at directory build/ and they will use directory .engine as Engine work directory. It´s recommended to ignore this directory in .gitignore to avoid to commit Engine large temporary files like logs and database local caches.
Configure defining the environment variables:
- ENGINE_URL: engine server URL. Example: http://my_database.nginstack.com.
- ENGINE_DATABASE: database name. Example: MY_DATABASE.
- ENGINE_USERNAME: user name used to upload artifacts and run tests.
- ENGINE_PASSWORD: user password used to upload artifacts and run tests.
- DEVOPS_API_KEY: API_KEY configured at /configuration/HTTP APIs/DevOps.
Or use a .env file:
ENGINE_URL=http://my_database.nginstack.com
ENGINE_DATABASE=MY_DATABASE
ENGINE_USERNAME=username
ENGINE_PASSWORD=password
DEVOPS_API_KEY=my-builder-api-key
Components
Engine Wrapper
EngineWrapper API can be used to start and stop an Engine programmatically.
Usage:
const EngineWrapper = require('erp-dev-tools').EngineWrapper;
const url = require('url');
const request = require('request-promise-native');
const engine = new EngineWrapper('installPath', 'http://myserver.com', 'DB_NAME');
engine.install().then(() => {
return engine.start();
}).then(() => {
return request.get(url.resolve(engine.url, '/api/service-status/v1/status'));
}).then(body => {
console.log(body);
return engine.stop();
}).catch(err => {
console.error(err);
});
Builder
Builder API can be used to execute tests on Engine and upload the build artifacts to the Virtual File System.
Usage:
const Builder = require('../lib/Builder');
new Builder().uploadArtifacts([
{
key: fileKey,
path: './build/my-product.jaz'
}
]])
.then(() => process.exit(0))
.catch(() => process.exit(1));
Build and utilities scripts
uploadToVfs
Upload one or more build artifacts to Engine Virtual File System.
Usage:
uploadToVfs PATH_1 FILE_KEY_1 PATH_2 FILE_KEY_2 ... PATH_N FILE_KEY_N
runTests
Run server testes on Engine and save the results to a file using the JUnit tests XML report file format. If the report path was not informed it will use "build/server-tests.xml".
Usage:
runTests.js TESTS_PATHS [OUT_REPORT_PATH]
publishToNpm
Publish the informed path as a public npm module only if the package version changed.
Usage:
publishToNpm
installJazDependencies
Read the array property jazDependencies of package.json and download the informed JAZ packages of the server informed by the environment variable SERVER_URL using the JAZ_API_KEY. The downloaded JAZ packages are extracted in node_modules.
Is recommended to use installJazDependencies as a postinstall script of package.json.
Usage:
installJazDependencies
packJaz
Build a JAZ file using a config file informed as argument. Config example:
{
"dest": "build/my-package.jaz",
"files": [
"package.json", "lib/**", "routes/**", "controllers/**", "keys/**", "tests/**",
"publicModules.js", "scripts/**", "startups/**"
],
"ignore": [
"lib/localConfig.js"
],
"uglify": {
"options": {
"compress": {
"booleans": false,
"typeofs": false,
"keep_infinity": true
}
},
"files": [
"lib/**"
]
},
"e2c": [
{
"metadata": {
"license": {
"product": -1898148465
}
},
"files": [
"lib/testing/e2c/**"
]
}
]
}
Use uglify options to obfuscate the files of the JAZ Package. The e2c options allow to encrypt files using the Engine E2C file format. Both features are experimental and not were officially released as supported product features.
Usage:
packJaz jaz.config.json
15 days ago
1 month ago
1 month ago
2 months ago
2 months ago
2 months ago
3 months ago
9 months ago
9 months ago
10 months ago
10 months ago
9 months ago
6 months ago
7 months ago
11 months ago
11 months ago
12 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago