Services: add properties files and scripts to create separate configuration per environment
This commit is contained in:
parent
b5fc3c8606
commit
e4586e58f2
|
@ -0,0 +1,25 @@
|
||||||
|
# README #
|
||||||
|
|
||||||
|
|
||||||
|
### What is this repository for? ###
|
||||||
|
|
||||||
|
Cache service
|
||||||
|
|
||||||
|
* Version 1.0.0
|
||||||
|
|
||||||
|
### How to run locally? ###
|
||||||
|
|
||||||
|
* "npm start" to start the service
|
||||||
|
* Check properties to set the port
|
||||||
|
|
||||||
|
### How to run in a server? ###
|
||||||
|
* run "npm run prepare-{CONFIGURATION_NAME}"
|
||||||
|
* cp dist folder in the server
|
||||||
|
* create a folder for the service files
|
||||||
|
* "npm i" to install dependencies.
|
||||||
|
* if you just update the project run "pm2 restart cache"
|
||||||
|
* if you start a new service run: pm2 start --name cache ./cache.js --log-date-format="YYYY-MM-DD HH:mm Z"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
port = 4000
|
|
@ -6,6 +6,8 @@ let mcache = require('memory-cache');
|
||||||
const request = require('superagent');
|
const request = require('superagent');
|
||||||
const prom = require('prom-client');
|
const prom = require('prom-client');
|
||||||
const URL = require('url');
|
const URL = require('url');
|
||||||
|
var PropertiesReader = require('properties-reader');
|
||||||
|
var properties = PropertiesReader('./properties.file');
|
||||||
const expireShort = 2 * 60 * 1000; //2mins
|
const expireShort = 2 * 60 * 1000; //2mins
|
||||||
const expireLong = 24 * 60 * 60 * 1000; //24 hours
|
const expireLong = 24 * 60 * 60 * 1000; //24 hours
|
||||||
const cacheMaxSize = 500;
|
const cacheMaxSize = 500;
|
||||||
|
@ -136,8 +138,8 @@ app.use((req, res) => {
|
||||||
res.status(404).send(getResponse(404, "Not Found")); //not found
|
res.status(404).send(getResponse(404, "Not Found")); //not found
|
||||||
});
|
});
|
||||||
|
|
||||||
app.listen((process.env.PORT) ? process.env.PORT : 3000, function () {
|
const server = app.listen(properties.get('port'), function () {
|
||||||
console.log(`Example app listening on port ${(process.env.PORT) ? process.env.PORT : 3000}!`)
|
console.log(`Example app listening on port`, server.address().port)
|
||||||
//run the timer
|
//run the timer
|
||||||
resetAtMidnight();
|
resetAtMidnight();
|
||||||
});
|
});
|
||||||
|
|
|
@ -4,14 +4,18 @@
|
||||||
"description": "Caching in memory",
|
"description": "Caching in memory",
|
||||||
"main": "cache.js",
|
"main": "cache.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "PORT=3200 node cache.js"
|
"start": "node cache.js",
|
||||||
|
"prepare-dist": "rm -rf dist; mkdir dist; cp package.json ./dist; cp cache.js ./dist; cp properties.file ./dist;",
|
||||||
|
"prepare-beta":" npm run prepare-dist; cp beta-properties.file ./dist/properties.file",
|
||||||
|
"prepare-prod":" npm run prepare-dist; cp production-properties.file ./dist/properties.file"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"cors": "^2.8.5",
|
"cors": "^2.8.5",
|
||||||
"express": "^4.15.2",
|
"express": "^4.15.2",
|
||||||
"memory-cache": "^0.2.0",
|
"memory-cache": "^0.2.0",
|
||||||
"superagent": "^5.0.5",
|
"superagent": "^5.0.5",
|
||||||
"prom-client": "^11.3.0"
|
"prom-client": "^11.3.0",
|
||||||
|
"properties-reader": "0.0.16"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "16.3.0"
|
"node": "16.3.0"
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
port = 4000
|
|
@ -0,0 +1 @@
|
||||||
|
port = 3200
|
|
@ -0,0 +1,24 @@
|
||||||
|
# README #
|
||||||
|
|
||||||
|
|
||||||
|
### What is this repository for? ###
|
||||||
|
|
||||||
|
Utils service
|
||||||
|
|
||||||
|
* Version 1.0.0
|
||||||
|
|
||||||
|
### How to run locally? ###
|
||||||
|
|
||||||
|
* "npm start" to start the service
|
||||||
|
|
||||||
|
### How to run in a server? ###
|
||||||
|
* run "npm run prepare-{CONFIGURATION_NAME}"
|
||||||
|
* cp dist folder in the server
|
||||||
|
* create a folder for the service files
|
||||||
|
* "npm i" to install dependencies.
|
||||||
|
* if you just update the project run "pm2 restart upload"
|
||||||
|
* if you start a new service run: pm2 start --name upload ./uploadService.js --log-date-format="YYYY-MM-DD HH:mm Z"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -5,3 +5,4 @@ localPath = false
|
||||||
max.size = 200
|
max.size = 200
|
||||||
# file size in KB
|
# file size in KB
|
||||||
big-max.size = 1000
|
big-max.size = 1000
|
||||||
|
port = 8000
|
||||||
|
|
|
@ -4,7 +4,10 @@
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "node uploadService.js"
|
"start": "node uploadService.js",
|
||||||
|
"prepare-dist": "rm -rf dist; mkdir dist; cp package.json ./dist; cp uploadService.js ./dist; cp properties.file ./dist;",
|
||||||
|
"prepare-beta":" npm run prepare-dist; cp beta-properties.file ./dist/properties.file",
|
||||||
|
"prepare-prod":" npm run prepare-dist; cp production-properties.file ./dist/properties.file"
|
||||||
},
|
},
|
||||||
"keywords": [],
|
"keywords": [],
|
||||||
"author": "",
|
"author": "",
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
#uncomment properties file based on deployment environment
|
|
||||||
#mv beta-properties.file properties.file
|
|
||||||
#mv production-properties.file properties.file
|
|
||||||
|
|
||||||
#rm -rf node_modules/ run.sh uploads/ .idea/ beta-properties.file production-properties.file
|
|
||||||
#rm prepareDeploy.sh
|
|
||||||
|
|
||||||
#Copy files to beta.explore.openaire.eu or explore.openaire.eu /home/argiro.kokogiannaki/portals/utils-service.YYYY-MM-DD
|
|
||||||
# run npm i
|
|
||||||
#change to user nodejs " sudo su nodejs -s /bin/bash"
|
|
||||||
#copy files to deploy folder " cp -r /home/argiro.kokogiannaki/portals/utils-service.YYY-MM-DD/* /srv/www/upload/"
|
|
||||||
# restart uplication "pm2 restart upload"
|
|
||||||
|
|
||||||
|
|
|
@ -5,3 +5,4 @@ localPath = false
|
||||||
max.size = 200
|
max.size = 200
|
||||||
# file size in KB
|
# file size in KB
|
||||||
big-max.size = 1000
|
big-max.size = 1000
|
||||||
|
port = 8000
|
||||||
|
|
|
@ -5,3 +5,4 @@ localPath = true
|
||||||
max.size = 200
|
max.size = 200
|
||||||
# file size in KB
|
# file size in KB
|
||||||
big-max.size = 1000
|
big-max.size = 1000
|
||||||
|
port = 8000
|
||||||
|
|
|
@ -97,7 +97,7 @@ app.delete(['/delete/:filename', '/delete/stakeholder/:filename', '/delete/:type
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
const server = app.listen(8000, function () {
|
const server = app.listen(properties.get('port'), function () {
|
||||||
console.log("Listening on port %s...", server.address().port);
|
console.log("Listening on port %s...", server.address().port);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue