Changeset 2699

Show
Ignore:
Timestamp:
10/15/06 13:32:48 (7 years ago)
Author:
gregmac
Message:

Added upgrade, upgradeall. Fixed checkDepends/reverseDepends naming

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • freepbx/trunk/amp_conf/bin/module_admin

    r2674 r2699  
    194194  } else { 
    195195    out("No enabled modules depend on this module."); 
    196     exit(0); 
    197196  } 
    198197} 
     
    208207  } else { 
    209208    out("All dependencies met for this module."); 
    210     exit(0); 
    211209  } 
    212210} 
     
    256254  } else { 
    257255    out("Module successfully disabled"); 
    258     exit(0); 
    259256  } 
    260257} 
     
    267264  } else { 
    268265    out("Module successfully enabled"); 
    269     exit(0); 
    270266  } 
    271267} 
     
    278274  } else { 
    279275    out("Module successfully installed"); 
    280     exit(0); 
    281276  } 
    282277} 
     
    289284  } else { 
    290285    out("Module successfully uninstalled"); 
    291     exit(0); 
    292286  } 
    293287} 
     
    300294  } else { 
    301295    out("Module successfully deleted"); 
    302     exit(0); 
    303296  } 
    304297} 
     
    311304  } else { 
    312305    out("Module successfully downloaded"); 
    313     exit(0); 
    314306  } 
    315307} 
     
    332324} 
    333325 
     326 
     327function doUpgrade($modulename, $force) { 
     328  // either will exit() if there's a problem 
     329  doDownload($modulename, $force); 
     330  doInstall($modulename, $force); 
     331} 
     332 
     333function getUpgradableModules() { 
     334  $modules_local = module_getinfo(false, MODULE_STATUS_ENABLED); 
     335  $modules_online = module_getonlinexml(); 
     336  $modules_upgradable = array(); 
     337   
     338  foreach (array_keys($modules_local) as $name) { 
     339    if (isset($modules_online[$name])) { 
     340      if (version_compare($modules_local[$name]['version'], $modules_online[$name]['version']) < 0) { 
     341        $modules_upgradable[] = $name; 
     342      } 
     343    } 
     344  } 
     345  return $modules_upgradable; 
     346} 
     347 
     348function doUpgradeAll($force) { 
     349  $modules = getUpgradableModules(); 
     350  out("Upgrading: ".implode(', ',$modules)); 
     351  sleep(1); // a bit of time to ^C abort.. 
     352  foreach ($modules as $modulename) { 
     353    out("Upgrading $modulename.."); 
     354    doUpgrade($modulename, $force); 
     355  } 
     356  out("Done all upgrades."); 
     357} 
     358 
     359 
    334360/**************************************************************************************************** 
    335361 ****************************************************************************************************/ 
     
    409435      fatal("Missing module name"); 
    410436    } 
    411     showDepends($param); 
     437    showCheckDepends($param); 
    412438  break; 
    413439  case 'reversedepends': 
     
    415441      fatal("Missing module name"); 
    416442    } 
    417     showCheckDepends($param); 
     443    showReverseDepends($param); 
    418444  break; 
    419445  case 'info': 
     
    430456  break; 
    431457  case 'install': 
     458    if (empty($param)) { 
     459      fatal("Missing module name"); 
     460    } 
     461    doInstall($param, $force); 
     462  break; 
     463  case 'enable': 
     464    if (empty($param)) { 
     465      fatal("Missing module name"); 
     466    } 
     467    doEnable($param, $force); 
     468  break; 
     469  case 'disable': 
     470    if (empty($param)) { 
     471      fatal("Missing module name"); 
     472    } 
     473    doDisable($param, $force); 
     474  break; 
     475  case 'uninstall': 
     476    if (empty($param)) { 
     477      fatal("Missing module name"); 
     478    } 
     479    doUninstall($param, $force); 
     480  break; 
     481  case 'delete': 
     482    if (empty($param)) { 
     483      fatal("Missing module name"); 
     484    } 
     485    doDelete($param, $force); 
     486  break; 
    432487  case 'upgrade': 
    433     if (empty($param)) { 
    434       fatal("Missing module name"); 
    435     } 
    436     doInstall($param, $force); 
    437   break; 
    438   case 'enable': 
    439     if (empty($param)) { 
    440       fatal("Missing module name"); 
    441     } 
    442     doEnable($param, $force); 
    443   break; 
    444   case 'disable': 
    445     if (empty($param)) { 
    446       fatal("Missing module name"); 
    447     } 
    448     doDisable($param, $force); 
    449   break; 
    450   case 'uninstall': 
    451     if (empty($param)) { 
    452       fatal("Missing module name"); 
    453     } 
    454     doUninstall($param, $force); 
    455   break; 
    456   case 'delete': 
    457     if (empty($param)) { 
    458       fatal("Missing module name"); 
    459     } 
    460     doDelete($param, $force); 
     488    doUpgrade($param, $force); 
     489  break; 
     490  case 'upgradeall': 
     491    doUpgradeAll($force); 
    461492  break; 
    462493  default: 
     
    467498} 
    468499 
     500exit(0); 
     501 
    469502?>