-
Notifications
You must be signed in to change notification settings - Fork 4
Dev-new-fixes-22 #108
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Dev-new-fixes-22 #108
Changes from 2 commits
5b6b484
3ed2832
9305d28
9be34d4
38b0b57
fb93aa2
679fe8d
5e81e92
c947dee
9f3576f
8b7581d
12a8598
1f51d38
29dfdbf
a3885b4
751077e
5420496
92236be
63ac40f
7a5b07f
04f5bfb
2a2bfd1
f72d460
71d9855
fdaf3c1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -8,6 +8,7 @@ if ($var['shareCacheEnabled']!='yes') { | |
| } elseif ($var['shareUser']=='-') { | ||
| echo "<p class='notice'>User shares not enabled!</p>"; | ||
| } | ||
| $vars = @parse_ini_file("/var/local/emhttp/var.ini"); | ||
| $plugin = 'ca.mover.tuning'; | ||
| $config_file = '/boot/config/plugins/' . $plugin . '/' . $plugin . '.cfg'; | ||
| $config_default_file = '/usr/local/emhttp/plugins/' . $plugin . '/default.cfg'; | ||
|
|
@@ -49,9 +50,10 @@ $.fn.toggleAttr = function(attr) { | |
|
|
||
| function updateCron() { | ||
| var cron = $("#cronSchedule").val(); | ||
| var tune_cron = $("#tune_cronSchedule").val(); | ||
| var cronEnabled = $("#forceCron").val(); | ||
| var ismoverDisabled = $("#moverDisabled").val(); | ||
| $.post("/plugins/ca.mover.tuning/updateCron.php",{cronEnabled:cronEnabled,cron:cron,ismoverDisabled:ismoverDisabled}); | ||
| $.post("/plugins/ca.mover.tuning/updateCron.php",{cronEnabled:cronEnabled,cron:cron,tune_cron:tune_cron,ismoverDisabled:ismoverDisabled}); | ||
| } | ||
|
|
||
| function moveNow() { | ||
|
|
@@ -147,6 +149,16 @@ _(Disable Mover running on a schedule)_: | |
| :end | ||
|
|
||
| <div markdown="1" id="moverTuningSettings"> | ||
| <?php if (version_compare($vars['version'], '7.2.1', '>=')): ?> | ||
| _(Mover Tuning schedule)_: | ||
| : <input type='text' id='tune_cronSchedule' name='cron' size='1' class='tune_mycron' placeholder='0 */4 * * *' value='<?=htmlspecialchars($cfg['moverTuneCron'])?>'> | ||
|
||
|
|
||
| <blockquote class="inline_help"> | ||
| <p>Runs the <strong><code>age_mover</code></strong> schedule from the Mover Tuning plugin using your custom cron entry (includes all plugin filters).</p> | ||
| <p> Cron Schedule entry example <strong>0 */4 * * *</strong>. To run at <em>every</em><strong> 4 hours</strong>. <a href="https://crontab.guru/" target="_blank" rel="noopener noreferrer"><i class="fa fa-clock-o"></i> What Is Cron</a></p> | ||
| </blockquote> | ||
| <?php endif; ?> | ||
coderabbitai[bot] marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| _(Test Mode (dry run))_: | ||
| : <select name='testmode' size='1' id='testmode' onchange="toggleTestModeWarning(this.value)"> | ||
| <?=mk_option($cfg['testmode'],"no",_('No'))?> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -48,4 +48,5 @@ sparsnessv="1" | |
| filetypesv="" | ||
| omoverthresh="" | ||
| cron="" | ||
| moverTuneCron="" | ||
| forceParity="no" | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -90,7 +90,11 @@ | |
| if ($cfg['movenow'] == "yes") { | ||
| $mover_str = "/usr/local/emhttp/plugins/ca.mover.tuning/age_mover"; | ||
| } else { | ||
| $mover_str = "/usr/local/sbin/mover.old"; | ||
| if (version_compare($vars['version'], '7.2.1', '<')) { | ||
|
Check warning on line 93 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/mover.php
|
||
| $mover_str = "/usr/local/sbin/mover.old"; | ||
| } else { | ||
| $mover_str = "/usr/local/sbin/mover"; | ||
| } | ||
| } | ||
|
|
||
| if ($options == "stop") { | ||
|
|
@@ -117,13 +121,18 @@ | |
| //Default "move now" button has been hit. | ||
| $niceLevel = $cfg['moverNice'] ?: "0"; | ||
| $ioLevel = $cfg['moverIO'] ?: "-c 2 -n 0"; | ||
| if (version_compare($vars['version'], '7.2.1', '<')) { | ||
| logger("ionice $ioLevel nice -n $niceLevel /usr/local/sbin/mover.old $options"); | ||
| passthru("ionice $ioLevel nice -n $niceLevel /usr/local/sbin/mover.old $options"); | ||
| } else { | ||
| logger("ionice $ioLevel nice -n $niceLevel /usr/local/sbin/mover $options"); | ||
| passthru("ionice $ioLevel nice -n $niceLevel /usr/local/sbin/mover $options"); | ||
|
Check failure on line 129 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/mover.php
|
||
| } | ||
|
||
| } | ||
| } | ||
|
|
||
| if ($cron && $cfg['moverDisabled'] == 'yes') { | ||
| logger("Mover schedule disabled"); | ||
| logger("Mover Tuning schedule disabled"); | ||
| exit(); | ||
| } | ||
|
|
||
|
|
@@ -132,7 +141,7 @@ | |
| exit(); | ||
| } | ||
|
|
||
| logger("Starting Mover ..."); | ||
| logger("Starting Mover Tuning ..."); | ||
|
|
||
| startMover(); | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,13 +3,16 @@ | |
| require_once("/usr/local/emhttp/plugins/dynamix/include/Wrappers.php"); | ||
|
|
||
| $cfg = parse_plugin_cfg("ca.mover.tuning"); | ||
| $vars = @parse_ini_file("/var/local/emhttp/var.ini"); | ||
|
Check warning on line 6 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/updateCron.php
|
||
|
|
||
| // Get config value of forced cron | ||
| $cfg_cronEnabled = $cfg['force']; | ||
| // Get cron time of forced cron (normalized) | ||
| $cfg_cron = trim($cfg['cron'] ?? ''); | ||
| // Get config value of mover disabled | ||
| $cfg_moverDisabled = $cfg['moverDisabled']; | ||
| // Get Mover Tuning cron time (normalized) | ||
| $cfg_moverTuneCron = trim($cfg['moverTuneCron'] ?? $vars['shareMoverSchedule'] ?? ''); | ||
|
|
||
| function logger($string) | ||
| { | ||
|
|
@@ -20,9 +23,26 @@ | |
| } | ||
| } | ||
|
|
||
| function make_tune_cron() | ||
| { | ||
| global $vars; | ||
| if (!empty($var['shareMoverSchedule'])) { | ||
|
Check warning on line 29 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/updateCron.php
|
||
coderabbitai[bot] marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| // Disable Unraid mover | ||
| $vars['shareMoverSchedule'] = ""; | ||
| } | ||
|
|
||
| $cronTuneFile = "# Generated schedule for Mover Tuning move\n" . trim($_POST['tune_cron']) . " /usr/local/emhttp/plugins/ca.mover.tuning/age_mover start |& logger -t move\n\n"; | ||
|
Check failure on line 34 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/updateCron.php
|
||
coderabbitai[bot] marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| file_put_contents("/boot/config/plugins/ca.mover.tuning/mover.tune.cron", $cronTuneFile); | ||
|
Check warning on line 35 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/updateCron.php
|
||
| } | ||
|
|
||
| function make_cron() | ||
| { | ||
| $cronFile = "# Generated schedule for forced move\n" . trim($_POST['cron']) . " /usr/local/sbin/mover.old start |& logger -t move\n\n"; | ||
| global $vars; | ||
| if (version_compare($vars['version'], '7.2.1', '<')) { | ||
|
Check warning on line 41 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/updateCron.php
|
||
| $cronFile = "# Generated schedule for forced move\n" . trim($_POST['cron']) . " /usr/local/sbin/mover.old start |& logger -t move\n\n"; | ||
| } else { | ||
| $cronFile = "# Generated schedule for forced move\n" . trim($_POST['cron']) . " /usr/local/sbin/mover start |& logger -t move\n\n"; | ||
|
Check failure on line 44 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/updateCron.php
|
||
| } | ||
|
||
| file_put_contents("/boot/config/plugins/ca.mover.tuning/mover.cron", $cronFile); | ||
| } | ||
|
|
||
|
|
@@ -63,5 +83,17 @@ | |
| } | ||
| } | ||
|
|
||
| // Handle Mover Tuning custom cron schedule | ||
| if ($cfg_moverTuneCron != $_POST['tune_cron']) { | ||
|
Check failure on line 87 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/updateCron.php
|
||
|
|
||
| if (trim($_POST['tune_cron']) != "") { | ||
|
Check failure on line 89 in source/ca.mover.tuning/usr/local/emhttp/plugins/ca.mover.tuning/updateCron.php
|
||
| make_tune_cron(); | ||
| logger("Mover Tuning cron schedule updated successfully."); | ||
| } else { | ||
| @unlink("/boot/config/plugins/ca.mover.tuning/mover.tune.cron"); | ||
| logger("Mover Tuning cron schedule removed."); | ||
| } | ||
coderabbitai[bot] marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| } | ||
coderabbitai[bot] marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| exec("update_cron"); | ||
| ?> | ||
Uh oh!
There was an error while loading. Please reload this page.