From 3a9f123743eb6342ee24b54cade7de015782c498 Mon Sep 17 00:00:00 2001 From: miketwc1984 Date: Sun, 23 May 2021 00:04:29 -0400 Subject: [PATCH] sync with 0.8.61 --- DockerfileDev | 5 +- htdocs/js/pages/admin/Servers.js | 2 +- lib/job.js | 5 ++ lib/test.js | 2 +- package-lock.json | 83 +++++++++++++++++--------------- package.json | 12 ++--- sample_conf/config.json | 1 + 7 files changed, 58 insertions(+), 52 deletions(-) diff --git a/DockerfileDev b/DockerfileDev index dc4e6d8..49892cf 100644 --- a/DockerfileDev +++ b/DockerfileDev @@ -28,13 +28,10 @@ COPY . /opt/cronicle WORKDIR /opt/cronicle #optional step to fix vulnerabilities reported by npm -#RUN npm audit fix --force +RUN npm audit fix --force RUN npm install -# if you run "audit fix" then you need to downgrade chart.js back to v2 (from v3) -#RUN npm i chart.js@2.7.1 - RUN node bin/build dist # protect sensitive folders diff --git a/htdocs/js/pages/admin/Servers.js b/htdocs/js/pages/admin/Servers.js index 2dcb30a..941253f 100644 --- a/htdocs/js/pages/admin/Servers.js +++ b/htdocs/js/pages/admin/Servers.js @@ -162,7 +162,7 @@ Class.add( Page.Admin, { return [ '
' + self.getNiceGroup(group, null, col_width) + '
', - '
/' + group.regexp + '/
', + '
/' + encode_entities(group.regexp) + '/
', // group.description || '(No description)', num_servers ? commify( num_servers) : '(None)', num_events ? commify( num_events ) : '(None)', diff --git a/lib/job.js b/lib/job.js index 883a634..dceadf1 100644 --- a/lib/job.js +++ b/lib/job.js @@ -130,6 +130,11 @@ module.exports = Class.create({ return callback(new Error("Maximum of " + category.max_children + " " + Tools.pluralize("job", category.max_children) + " already running for category: " + category.title)); } } + + var max_jobs = self.server.config.get('max_jobs') || 0; + if (max_jobs && (job_list.length >= max_jobs)) { + return callback( new Error("Global maximum of " + max_jobs + " " + Tools.pluralize("job", max_jobs) + " already running.") ); + } if (!category.enabled) { return callback(new Error("Category '" + category.title + "' is disabled.")); diff --git a/lib/test.js b/lib/test.js index a874fc0..7be1bab 100644 --- a/lib/test.js +++ b/lib/test.js @@ -92,7 +92,7 @@ module.exports = { require('pixl-server-storage'), require('pixl-server-web'), require('pixl-server-api'), - require('pixl-server-user'), + require('./user.js'), require('./engine.js') ] diff --git a/package-lock.json b/package-lock.json index 866c2a6..e713c2e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "Cronicle", - "version": "1.3.4", + "version": "1.4.1", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -248,34 +248,27 @@ } }, "chart.js": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-2.7.1.tgz", - "integrity": "sha512-pX1oQAY86MiuyZ2hY593Acbl4MLHKrBBhhmZ1YqSadzQbbsBE2rnd6WISoHjIsdf0WDeC0hbePYCz2ZxkV8L+g==", + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-2.9.4.tgz", + "integrity": "sha512-B07aAzxcrikjAPyV+01j7BmOpxtQETxTSlQ26BEYJ+3iUkbNKaOJ/nDbT6JjyqYxseM0ON12COHYdU2cTIjC7A==", "requires": { - "chartjs-color": "~2.2.0", - "moment": "~2.18.0" - }, - "dependencies": { - "moment": { - "version": "2.18.1", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.18.1.tgz", - "integrity": "sha1-w2GT3Tzhwu7SrbfIAtu8d6gbHA8=" - } + "chartjs-color": "^2.1.0", + "moment": "^2.10.2" } }, "chartjs-color": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/chartjs-color/-/chartjs-color-2.2.0.tgz", - "integrity": "sha1-hKL7dVeH7YXDndbdjHsdiEKbrq4=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chartjs-color/-/chartjs-color-2.4.1.tgz", + "integrity": "sha512-haqOg1+Yebys/Ts/9bLo/BqUcONQOdr/hoEr2LLTRl6C5LXctUdHxsCYfvQVg5JIxITrfCNUDr4ntqmQk9+/0w==", "requires": { - "chartjs-color-string": "^0.5.0", - "color-convert": "^0.5.3" + "chartjs-color-string": "^0.6.0", + "color-convert": "^1.9.3" } }, "chartjs-color-string": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/chartjs-color-string/-/chartjs-color-string-0.5.0.tgz", - "integrity": "sha512-amWNvCOXlOUYxZVDSa0YOab5K/lmEhbFNKI55PWc4mlv28BDzA7zaoQTGxSBgJMHIW+hGX8YUrvw/FH4LyhwSQ==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/chartjs-color-string/-/chartjs-color-string-0.6.0.tgz", + "integrity": "sha512-TIB5OKn1hPJvO7JcteW4WY/63v6KwEdt6udfnDE9iCAZgy+V4SrbSxoIbTw/xkUIapjEI4ExGtD0+6D3KyFd7A==", "requires": { "color-name": "^1.0.0" } @@ -308,9 +301,19 @@ "integrity": "sha512-/D5PcsKyzthtSy2NNKCyJi3b+htRkoKv3idswR/tR6UAvMNKA7SrmyZy6fOONJxSRs1JlUWEDAbxqfdArbK8iA==" }, "color-convert": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-0.5.3.tgz", - "integrity": "sha1-vbbGnOZg+t/+CwAHzER+G59ygr0=" + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + }, + "dependencies": { + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + } + } }, "color-name": { "version": "1.1.4", @@ -585,9 +588,9 @@ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "jquery": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", - "integrity": "sha512-Ubldcmxp5np52/ENotGxlLe6aGMvmF4R8S6tZjsP6Knsaxd/xp3Zrh50cG93lR6nPXyUFwzN3ZSOQI0wRJNdGg==" + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.0.tgz", + "integrity": "sha512-Xb7SVYMvygPxbFMpTFQiHh1J7HClEaThguL15N/Gg37Lri/qKyhRGZYzHRyLH8Stq3Aow0LsHO2O2ci86fCrNQ==" }, "json3": { "version": "3.3.2", @@ -751,9 +754,9 @@ "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" }, "netmask": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", - "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.1.tgz", + "integrity": "sha512-gB8eG6ubxz67c7O2gaGiyWdRUIbH61q7anjgueDqCC9kvIs/b4CTtCMaQKeJbv1/Y7FT19I4zKwYmjnjInRQsg==" }, "node-static": { "version": "0.7.10", @@ -773,9 +776,9 @@ } }, "nodemailer": { - "version": "6.4.11", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.4.11.tgz", - "integrity": "sha512-BVZBDi+aJV4O38rxsUh164Dk1NCqgh6Cm0rQSb9SK/DHGll/DrCMnycVDD7msJgZCnmVa8ASo8EZzR7jsgTukQ==" + "version": "6.4.16", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.4.16.tgz", + "integrity": "sha512-68K0LgZ6hmZ7PVmwL78gzNdjpj5viqBdFqKrTtr9bZbJYj6BRj5W6WGkxXrEnUl3Co3CBXi3CZBUlpV/foGnOQ==" }, "nomnom": { "version": "1.6.2", @@ -922,11 +925,11 @@ } }, "pixl-mail": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/pixl-mail/-/pixl-mail-1.0.10.tgz", - "integrity": "sha512-w4uDDOMeGCbmdn19E4nc8sCGPyQh2n/hmUhcuRq8G9XNHXuhhLRGt2AJPi/bYSDlFaWDIlFgJFAiZaOqeT0zNQ==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pixl-mail/-/pixl-mail-1.0.11.tgz", + "integrity": "sha512-QcWDdaJ8FJjEScb9pESLopXlci9y0n4q+/qTg6rokSXB3MOMYJlDn7FhXeiSLCeLe01Yv1uSzP9x1YSo3EXa/g==", "requires": { - "nodemailer": "6.4.11", + "nodemailer": "6.4.16", "pixl-class": "^1.0.0", "pixl-tools": "^1.0.19" } @@ -940,9 +943,9 @@ } }, "pixl-request": { - "version": "1.0.35", - "resolved": "https://registry.npmjs.org/pixl-request/-/pixl-request-1.0.35.tgz", - "integrity": "sha512-hUhgnLesj/qGDoKI2EJ22RU+fnWokojNZj2ZgUmKdFdi7S89/Qyjy6gjMJr+zLC3XPVe0sUNFjaB8zZsxJ47VA==", + "version": "1.0.36", + "resolved": "https://registry.npmjs.org/pixl-request/-/pixl-request-1.0.36.tgz", + "integrity": "sha512-pR8lmuo7rYInfbJ90oORWDW9FH202aQcBHqu9o4mtmh6ZQzZhSZSqci+a7Dnpqgny66HAIBl2ZeNerYeXHQeCA==", "requires": { "errno": "0.1.7", "form-data": "2.3.2", diff --git a/package.json b/package.json index 96c09db..8c1095c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "Cronicle", - "version": "1.4.0", + "version": "1.4.1", "description": "A simple, distributed task scheduler and runner with a web based UI.", "author": "Joseph Huckaby ", "homepage": "https://github.com/jhuckaby/Cronicle", @@ -25,18 +25,18 @@ "activedirectory2": "^2.1.0", "async": "2.6.0", "bcrypt-node": "0.1.0", - "chart.js": "2.7.1", + "chart.js": "^2.9.4", "codemirror": "^5.59.2", "dotenv": "^8.2.0", "font-awesome": "4.7.0", "glob": "5.0.15", - "jquery": "3.3.1", + "jquery": "^3.5.0", "jstimezonedetect": "1.0.6", "mdi": "1.9.33", "mkdirp": "0.5.1", "moment": "2.22.1", "moment-timezone": "0.5.32", - "netmask": "1.0.6", + "netmask": "^2.0.1", "openssl-wrapper": "^0.3.4", "pixl-args": "^1.0.3", "pixl-class": "^1.0.2", @@ -44,9 +44,9 @@ "pixl-config": "^1.0.5", "pixl-json-stream": "^1.0.6", "pixl-logger": "^1.0.20", - "pixl-mail": "^1.0.10", + "pixl-mail": "^1.0.11", "pixl-perf": "^1.0.5", - "pixl-request": "^1.0.35", + "pixl-request": "^1.0.36", "pixl-server": "^1.0.28", "pixl-server-api": "^1.0.2", "pixl-server-storage": "^2.0.10", diff --git a/sample_conf/config.json b/sample_conf/config.json index fed08f9..2acdc05 100644 --- a/sample_conf/config.json +++ b/sample_conf/config.json @@ -26,6 +26,7 @@ "scheduler_startup_grace": 10, "universal_web_hook": "", "track_manual_jobs": false, + "max_jobs": 0, "server_comm_use_hostnames": true, "web_direct_connect": false,