mirror of
https://git.tt-rss.org/fox/tt-rss.git
synced 2025-08-06 06:07:29 +02:00
Merge branch 'scheduler-env' into 'master'
make default task schedules configurable See merge request tt-rss/tt-rss!140
This commit is contained in:
commit
eb2ef63c46
@ -188,6 +188,35 @@ class Config {
|
||||
* key is a 32 byte hex string which may be generated using `update.php --gen-encryption-key` */
|
||||
const ENCRYPTION_KEY = "ENCRYPTION_KEY";
|
||||
|
||||
/** scheduled task to purge orphaned articles, value should be valid cron expression
|
||||
* @see https://github.com/dragonmantank/cron-expression/blob/master/README.md#cron-expressions
|
||||
*/
|
||||
const SCHEDULE_PURGE_ORPHANS = "SCHEDULE_PURGE_ORPHANS";
|
||||
|
||||
/** scheduled task to expire disk cache, value should be valid cron expression */
|
||||
const SCHEDULE_DISK_CACHE_EXPIRE_ALL = "SCHEDULE_DISK_CACHE_EXPIRE_ALL";
|
||||
|
||||
/** scheduled task, value should be valid cron expression */
|
||||
const SCHEDULE_DISABLE_FAILED_FEEDS = "SCHEDULE_DISABLE_FAILED_FEEDS";
|
||||
|
||||
/** scheduled task to migrate feed icons from legacy dir, value should be valid cron expression */
|
||||
const SCHEDULE_MIGRATE_FEED_ICONS = "SCHEDULE_MIGRATE_FEED_ICONS";
|
||||
|
||||
/** scheduled task to cleanup feed icons, value should be valid cron expression */
|
||||
const SCHEDULE_CLEANUP_FEED_ICONS = "SCHEDULE_CLEANUP_FEED_ICONS";
|
||||
|
||||
/** scheduled task to disable feed updates of inactive users, value should be valid cron expression */
|
||||
const SCHEDULE_LOG_DAEMON_UPDATE_LOGIN_LIMIT_USERS = "SCHEDULE_LOG_DAEMON_UPDATE_LOGIN_LIMIT_USERS";
|
||||
|
||||
/** scheduled task to cleanup error log, value should be valid cron expression */
|
||||
const SCHEDULE_EXPIRE_ERROR_LOG = "SCHEDULE_EXPIRE_ERROR_LOG";
|
||||
|
||||
/** scheduled task to cleanup update daemon lock files, value should be valid cron expression */
|
||||
const SCHEDULE_EXPIRE_LOCK_FILES = "SCHEDULE_EXPIRE_LOCK_FILES";
|
||||
|
||||
/** scheduled task to send digests, value should be valid cron expression */
|
||||
const SCHEDULE_SEND_HEADLINES_DIGESTS = "SCHEDULE_SEND_HEADLINES_DIGESTS";
|
||||
|
||||
/** default values for all global configuration options */
|
||||
private const _DEFAULTS = [
|
||||
Config::DB_TYPE => [ "pgsql", Config::T_STRING ],
|
||||
@ -244,7 +273,17 @@ class Config {
|
||||
Config::T_STRING ],
|
||||
Config::HTTP_429_THROTTLE_INTERVAL => [ 3600, Config::T_INT ],
|
||||
Config::DISABLE_LOGIN_FORM => [ "", Config::T_BOOL ],
|
||||
Config::ENCRYPTION_KEY => [ "", Config::T_STRING ]
|
||||
Config::ENCRYPTION_KEY => [ "", Config::T_STRING ],
|
||||
Config::SCHEDULE_PURGE_ORPHANS => ["@daily", Config::T_STRING],
|
||||
Config::SCHEDULE_DISK_CACHE_EXPIRE_ALL => ["@daily", Config::T_STRING],
|
||||
Config::SCHEDULE_DISABLE_FAILED_FEEDS => ["@daily", Config::T_STRING],
|
||||
Config::SCHEDULE_MIGRATE_FEED_ICONS => ["@daily", Config::T_STRING],
|
||||
Config::SCHEDULE_CLEANUP_FEED_ICONS => ["@daily", Config::T_STRING],
|
||||
Config::SCHEDULE_LOG_DAEMON_UPDATE_LOGIN_LIMIT_USERS =>
|
||||
["@daily", Config::T_STRING],
|
||||
Config::SCHEDULE_EXPIRE_ERROR_LOG => ["@hourly", Config::T_STRING],
|
||||
Config::SCHEDULE_EXPIRE_LOCK_FILES => ["@hourly", Config::T_STRING],
|
||||
Config::SCHEDULE_SEND_HEADLINES_DIGESTS => ["@hourly", Config::T_STRING],
|
||||
];
|
||||
|
||||
private static ?Config $instance = null;
|
||||
|
@ -1689,7 +1689,7 @@ class RSSUtils {
|
||||
|
||||
$scheduler = Scheduler::getInstance();
|
||||
|
||||
$scheduler->add_scheduled_task('purge_orphans', '@daily',
|
||||
$scheduler->add_scheduled_task('purge_orphans', Config::get(Config::SCHEDULE_PURGE_ORPHANS),
|
||||
function() {
|
||||
Article::_purge_orphans();
|
||||
|
||||
@ -1697,7 +1697,7 @@ class RSSUtils {
|
||||
}
|
||||
);
|
||||
|
||||
$scheduler->add_scheduled_task('disk_cache_expire_all', '@daily',
|
||||
$scheduler->add_scheduled_task('disk_cache_expire_all', Config::get(Config::SCHEDULE_DISK_CACHE_EXPIRE_ALL),
|
||||
function() {
|
||||
$cache = DiskCache::instance("");
|
||||
$cache->expire_all();
|
||||
@ -1706,7 +1706,7 @@ class RSSUtils {
|
||||
}
|
||||
);
|
||||
|
||||
$scheduler->add_scheduled_task('disable_failed_feeds', '@daily',
|
||||
$scheduler->add_scheduled_task('disable_failed_feeds', Config::get(Config::SCHEDULE_DISABLE_FAILED_FEEDS),
|
||||
function() {
|
||||
self::disable_failed_feeds();
|
||||
|
||||
@ -1714,7 +1714,7 @@ class RSSUtils {
|
||||
}
|
||||
);
|
||||
|
||||
$scheduler->add_scheduled_task('migrate_feed_icons', '@daily',
|
||||
$scheduler->add_scheduled_task('migrate_feed_icons', Config::get(Config::SCHEDULE_MIGRATE_FEED_ICONS),
|
||||
function() {
|
||||
self::migrate_feed_icons();
|
||||
|
||||
@ -1722,7 +1722,7 @@ class RSSUtils {
|
||||
}
|
||||
);
|
||||
|
||||
$scheduler->add_scheduled_task('cleanup_feed_icons', '@daily',
|
||||
$scheduler->add_scheduled_task('cleanup_feed_icons', Config::get(Config::SCHEDULE_CLEANUP_FEED_ICONS),
|
||||
function() {
|
||||
self::cleanup_feed_icons();
|
||||
|
||||
@ -1730,7 +1730,7 @@ class RSSUtils {
|
||||
}
|
||||
);
|
||||
|
||||
$scheduler->add_scheduled_task('log_daemon_update_login_limit_users', '@daily',
|
||||
$scheduler->add_scheduled_task('log_daemon_update_login_limit_users', Config::get(Config::SCHEDULE_LOG_DAEMON_UPDATE_LOGIN_LIMIT_USERS),
|
||||
function() {
|
||||
$login_limit = Config::get(Config::DAEMON_UPDATE_LOGIN_LIMIT);
|
||||
|
||||
@ -1753,7 +1753,7 @@ class RSSUtils {
|
||||
}
|
||||
);
|
||||
|
||||
$scheduler->add_scheduled_task('expire_error_log', '@hourly',
|
||||
$scheduler->add_scheduled_task('expire_error_log', Config::get(Config::SCHEDULE_EXPIRE_ERROR_LOG),
|
||||
function() {
|
||||
self::expire_error_log();
|
||||
|
||||
@ -1761,7 +1761,7 @@ class RSSUtils {
|
||||
}
|
||||
);
|
||||
|
||||
$scheduler->add_scheduled_task('expire_lock_files', '@hourly',
|
||||
$scheduler->add_scheduled_task('expire_lock_files', Config::get(Config::SCHEDULE_EXPIRE_LOCK_FILES),
|
||||
function() {
|
||||
self::expire_lock_files();
|
||||
|
||||
@ -1769,7 +1769,7 @@ class RSSUtils {
|
||||
}
|
||||
);
|
||||
|
||||
$scheduler->add_scheduled_task('send_headlines_digests', '@hourly',
|
||||
$scheduler->add_scheduled_task('send_headlines_digests', Config::get(Config::SCHEDULE_SEND_HEADLINES_DIGESTS),
|
||||
function() {
|
||||
Digest::send_headlines_digests();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user