Unlink scripts submodule and commit contents as normal directory
This commit is contained in:
1 parent
4f7dea111f
commit
6488b3ea85
48 files changed
+2876
-1
No files matched your search
@@ -0,0 +1,33 @@
|
||||
const { repoName } = require('../repo.js');
|
||||
const validateConfig = require('./validateConfig.js');
|
||||
const { rules: common, services } = require('./common.js');
|
||||
|
||||
const PROJECT_RULES = {
|
||||
suricata: require('./suricata.js'),
|
||||
ufw: require('./ufw.js'),
|
||||
't-pot': require('./tpot.js'),
|
||||
cloudflare: require('./cloudflare.js'),
|
||||
};
|
||||
|
||||
const resolveByRepoName = (map, name) => {
|
||||
const lower = name.toLowerCase();
|
||||
for (const [key, value] of Object.entries(map)) {
|
||||
if (lower.includes(key)) return value;
|
||||
}
|
||||
return null;
|
||||
};
|
||||
|
||||
module.exports = config => {
|
||||
const rules = [...common];
|
||||
|
||||
const serviceConf = resolveByRepoName(services, repoName);
|
||||
if (serviceConf) {
|
||||
rules.push({ key: serviceConf.apiKey, type: String, nonEmpty: true });
|
||||
rules.push({ key: 'IP_REPORT_COOLDOWN', type: Number, min: serviceConf.minCooldown });
|
||||
}
|
||||
|
||||
const projectRules = resolveByRepoName(PROJECT_RULES, repoName);
|
||||
if (projectRules) rules.push(...projectRules);
|
||||
|
||||
validateConfig(config, rules);
|
||||
};
|
||||
Reference in new issue
Block a user