Programmatisch ein Modul installieren
-
16-10-2019 - |
Frage
Ich muss Module installieren, damit die Datenbankänderungen stattfinden. Ich kann es nicht einfach zulassen, dass es eine Installation bei der Anmeldung zum Administrator -Ansatz ist, da ich ein Bash -Skript habe, mit dem ich meine Testserver bereitstellt. Wenn ich Module aus meinem Git -Repo klone, sind einige von ihnen nicht installiert, sodass ich sie in dem von mir ausgeführten PHP -Skript, das meine Testgeschäfte hinzufügt, und was nicht, gewaltsam installieren muss. Ich habe alle Arten von Unterricht durchgesehen und das Beste, was ich gefunden habe, ist
ismoduleoutputenabled ()
Aber das wird es nicht schneiden. Ideen, wie man eine kraftvolle Installation macht?
Mögliche Identifizierung des Problems
Es scheint, dass einfaches Löschen des Cache und das Aufrufen des Mage::app()
Auch der Versuch, sich bei einem Administrator -Benutzer anzumelden, kann die zu installierenden Module nicht ausgelöst. Wenn Sie jedoch den Cache von Hand löschen, werden Sie vor dem ersten, als Sie zum ersten Mal zum Bildschirm /Administrator gehen, die Dinge installiert, wie Sie es erwarten würden. Bis noch die Seite bekommen (wget
) Vor dem Löschen des Cache kann auch die Module nicht installiert werden.
Update 1
Ich habe versucht, hier etwas zu erzwingen, aber ich bekomme nicht, was los ist ... Die Erweiterungen laden gut, wenn ich bis nach der frischen Installation warte und die Dateien einfach in die Ordner platziere, aber wenn ich es vorher einklone Ich sehe es nicht in der core_resource
Tabelle oder die Tabelle für die Module. Beispieltest für das Post -Install -Skript ist
$resource = Mage::getSingleton('core/resource');
$modules = Mage::getConfig()->getNode('modules')->children();
$modulesArray = (array)$modules;
echo "Test modules";
if(isset($modulesArray['Aoe_AsyncCache'])) {
echo "AsyncCache exists.";
$tableName = $resource->getTableName('asynccache');
/**
* if prefix was 'mage_' then the below statement
* would print out mage_catalog_product_entity
*/
echo "known as ".$tableName;
} else {
echo "AsyncCachedoesn't exist.";
}
Als ich lief, sehe ich AsyncCache exists. known as 'asynccache'
Dennoch ist es nicht in der Datenbank. Dieser Tisch wurde nicht installiert. Nicht wieder, das Modul installiert gut, wenn ich warte ... aber seltsamerweise, wenn ich diesen Git -Klon mache, installiert es nie. Ich bin mir wirklich nicht sicher, was los ist.
Update 2
Ich scheint, dass jedes Modul mit einer Datenbank nicht installiert wird. Also Hintergrund darüber, was los ist. Ich benutze vagrant
Und es ist auf einer URL von http://local.mage.dev als die URL. Wenn ich nun das Skript provision.SH verwende, habe ich Magento aus dem SSH installieren. Ich mache im Stall. Aber ein gutes Beispiel für das Problem ist, dass ich so einfach ist, wenn ich so einfach ist,
./mage config-set preferred_state alpha
./mage clear-cache
./mage sync
./mage download community BL_CustomGrid
./mage install community BL_CustomGrid
Die Tabelle ist nicht installiert. Ich verstehe nicht warum. Magento ist installiert. Wenn ich auf das erste Anmeldung warte, kann ich eine Verbindung herstellen, um die Installation durchzuführen. Ich werde in der Befehlszeile bemerken, dass die BL_Customegrid in Ordnung installiert ist, aber es hat nicht ... die Tische sind nicht da.
Update3
Ich habe versucht, alle Vorschläge zu einem zu kombinieren. Ich habe die Magier -App nach jedem Github -Klon aufgerufen, dann wird der Cache gelöscht. Ich lösche dann den Cache ein letztes Mal, bevor ich mich anmelden. Ich kann nicht sehen, um die Tabelle zu installieren. Ich frage mich fast, ob es etwas mit dem Vagranten zu tun hat, aber es ist unwahrscheinlich, dass Magento installiert ist. Aber der Beweis dafür, was ich getan habe, hier ist die Sub -Frage zum Aufrufen des PHP -Skripts, das nichts anderes tut, als Magier aufzurufen und den Cache zu löschen.
Update4
Wichtiger Hinweis:
Ich habe nicht nur einen Test durchgeführt, bei dem ich das neu bestätigt habe, wenn ich die Installation nach der Installation von Magento mache. Das normale Anmelden, hochladen Dateien, löschen Sie Cache, melden Sie sich an, melden Sie sich wieder ein und das Modul wird installiert. Wenn ich jedoch eine programmgesteuerte Anmeldung des Administratorbenutzers hinzufüge, wiederhole ich, dass der Benutzer ausgelöst wird, und sogar ich lösche den Cache, er schlägt immer noch fehl.
Das Ziel ist, dass ich das finden muss install('module_name')
Oder so etwas, oder zwei, können 100% tun, was passiert, wenn der Benutzer in Caches und sich wieder auszeichnet.
Programmatische Replikation der Installation eines Moduls, das wir kennen (Abmelden, Cache usw.) fehl
Die Skripte im Spielen
Das Skript, das Install-Invoke-app.php aufruft, und so gibt es einen vollständigen Kontext. Hier ist die Funktion. Es wird aufgerufen und wo Sie sehen können, dass das Aufrufen von Magier erledigt ist
Provision.shDas heißt aus vagrant
Dadurch konfigurieren Sie mein Testbett und installieren eine vollständige Magento programmgesteuert
start_seconds=`date +%s`
echo -en "\a" > /dev/tty5 | echo -e "\a"
cd /srv/www/
. scripts/install-functions.sh
if [[ has_network ]]
then
apt-get install pv
cd /srv/www/
. scripts/install-prep.sh
cd /srv/www/
. scripts/main-install.sh
else
echo -e "\nNo network connection available, skipping package installation"
fi
#double check the network
if [[ has_network ]]
then
#check and install wp
cd /srv/www/
. scripts/db-install.sh
#check and install magento
cd /srv/www/
. scripts/mage-install.sh
else
echo -e "\nNo network available, skipping network installations"
fi
# Add any custom domains to the virtual machine's hosts file so that it
# is self-aware. Enter domains space delimited as shown with the default.
DOMAINS='local.mage.dev'
if ! grep -q "$DOMAINS" /etc/hosts
then echo "127.0.0.1 $DOMAINS" >> /etc/hosts
fi
end_seconds=`date +%s`
echo "-----------------------------"
installfunktionen.shDies sind nur einige der Funktionen dieses Bash -Skripts. Es ist nur das, was in diesem Satz der Server -Installation verwendet wird. Beachten Sie, dass wir hier anrufen php "/srv/www/scripts/mage/install-invoke-app.php"
Welches ist das, was den Magier aufrufen und Module installieren soll. Jetzt sollten die Erweiterungen programmatisch installiert werden. Dies geschieht nicht.
install_repo(){
if [ $2 ]
then
echo "just 1"
git clone $1 -q
else
echo "just 1 and 2"
git clone $1 $2 -q
fi
success=$?
if [[ $success -eq 0 ]];
then
echo "Repository successfully cloned."
echo "cleaning"
cd $r/
rm -rf LICENSE.txt STATUS.txt README.md RELEASE_NOTES.txt modman
cd ../
cp -af $r/* .
rm -rf $r/
#eval $3
php "/srv/www/scripts/mage/install-invoke-app.php"
#if [ -z "$3" ]
#then
# echo "no callback"
#else
# eval $3
#fi
else
echo "Something went wrong!"
fi
sleep 1 # slow it down to insure that we have the items put in place.
}
#declare -A list = ( [repo]=gitUser )
install_repolist(){
gitRepos=$1
for r in "${!gitRepos[@]}" #loop with key as the var
do
giturl="git://github.com/${gitRepos[$r]}/$r.git"
echo "Adding $r From $giturl"
if [ -z "$r" ];
then
echo
else
install_repo $giturl $2 $3
fi
echo
done
return 1
}
install-Mage.shDies wird nach der Bereitstellung aufgerufen. Das Skript hat alle Grundlagen des Servers installiert. Es sollte schon haben nginx
und php5
/php-fpm
und alle restlichen Module benötigten.
#!/bin/bash
cd /srv/www/mage/ #move to the root web folder
dbhost="localhost"
dbname="mage"
dbuser="devsqluser"
dbpass="devsqluser"
url="local.mage.dev"
adminuser="admin"
adminpass="admin2013"
adminfname="Mc"
adminlname="Lovin"
adminemail="test.user@wsu.edu"
echo
echo "We will clear any past install"
echo
echo "--Clear old caches reports and sessions"
cd /srv/www/mage/ #move to the root web folder
rm -rf ./var/cache/* ./var/session/* ./var/report/* ./var/locks/*
rm -rf ./var/log/* ./app/code/core/Zend/Cache/* ./media/css/* ./media/js/*
echo
if [ -f /srv/www/scripts/mage/clean.sql ]
then
mysql -u root -pblank $dbname < /srv/www/scripts/mage/clean.sql | echo -e "\n Initial custom mage cleaning MySQL scripting..."
else
echo -e "\n COUNLDN'T FIND THE CLEANER SQL FILE"
fi
echo "Now installing Magento with sample data..."
#chack to see if there is already the files ready for instalation
if [ ! -f /srv/www/mage/app/Mage.php ]
then
if [ ! -f /srv/www/mage/magento-1.7.0.2.tar.gz ]
then
echo
echo "didn't find the packages, so now Downloading them..."
echo
wget http://www.magentocommerce.com/downloads/assets/1.7.0.2/magento-1.7.0.2.tar.gz
wget http://www.magentocommerce.com/downloads/assets/1.6.1.0/magento-sample-data-1.6.1.0.tar.gz
fi
echo
echo "Extracting data..."
echo
pv -per magento-1.7.0.2.tar.gz | tar xzf - -C ./
pv -per magento-sample-data-1.6.1.0.tar.gz | tar xzf - -C ./
echo
echo "Moving files..."
echo
cp -af magento-sample-data-1.6.1.0/media/* media/
cp -af magento-sample-data-1.6.1.0/magento_sample_data_for_1.6.1.0.sql data.sql
cp -af magento/* magento/.htaccess .
cd /srv/www/mage/ #move to the root web folder
echo
echo "Setting permissions..."
echo
chmod o+w var var/.htaccess app/etc
chmod -R o+w media
fi
echo
echo "Installing Adminer..."
if [ ! -f /srv/www/mage/adminer.php ]
then
wget http://downloads.sourceforge.net/adminer/adminer-3.7.1-mysql-en.php > adminer.php
fi
echo
echo "Importing sample products..."
mysql -h $dbhost -u $dbuser -p$dbpass $dbname < data.sql
#pear mage-setup .
#pear install magento-core/Mage_All_Latest-stable
#./mage mage-setup .
#./mage config-set preferred_state stable
echo
echo "Initializing PEAR registry..."
pear mage-setup .
echo
echo "Downloading packages..."
pear install magento-core/Mage_All_Latest
echo
echo "Cleaning up files..."
rm -rf downloader/pearlib/cache/* downloader/pearlib/download/*
rm -rf magento/ magento-sample-data-1.6.1.0/
#rm -rf magento-1.7.0.2.tar.gz magento-sample-data-1.6.1.0.tar.gz data.sql
rm -rf index.php.sample .htaccess.sample php.ini.sample LICENSE.txt
rm -rf STATUS.txt LICENSE.html LICENSE_AFL.txt RELEASE_NOTES.txt
echo
echo "Installing Magento..."
php -f install.php --\
--license_agreement_accepted yes \
--locale en_US \
--timezone America/Los_Angeles \
--default_currency USD \
--db_host $dbhost \
--db_name $dbname \
--db_user $dbuser \
--db_pass $dbpass \
--url $url \
--use_rewrites yes \
--skip_url_validation yes \
--use_secure no \
--secure_base_url "" \
--use_secure_admin no \
--admin_firstname "$adminfname" \
--admin_lastname "$adminlname" \
--admin_email "$adminemail" \
--admin_username "$adminuser" \
--admin_password "$adminpass"
if [ ! -f /srv/www/mage/app/etc/local.xml ]
then
echo "failed install try it again"
else
if [ -f /srv/database/init-mage.sql ]
then
mysql -u root -pblank < /srv/database/init-mage.sql | echo -e "\nInitial custom mage MySQL scripting..."
else
echo -e "\nNo custom MySQL scripting found in database/init-mage.sql, skipping..."
fi
cd /srv/www/mage/
echo "Starting to import base WSU modules from connect"
#./mage install http://connect20.magentocommerce.com/community Flagbit_ChangeAttributeSet
./mage config-set preferred_state alpha
./mage clear-cache
./mage sync
./mage download community Flagbit_ChangeAttributeSet
./mage download community BL_CustomGrid
./mage install community Flagbit_ChangeAttributeSet
#./mage install community BL_CustomGrid
echo "Starting to import base WSU modules fro github"
declare -A gitRepos
#[repo]=gitUser
gitRepos=(
[wsu_admin_base]=jeremyBass
[wsu_base_theme]=jeremyBass
[Storeutilities]=jeremyBass
[StructuredData]=jeremyBass
#[Storeuser]=jeremyBass
[sitemaps]=jeremyBass
[webmastertools]=jeremyBass
[ldap]=jeremyBass
[Aoe_FilePicker]=jeremyBass #https://github.com/fbrnc/Aoe_FilePicker.git
[Aoe_ClassPathCache]=jeremyBass #https://github.com/fbrnc/Aoe_ClassPathCache.git
[Aoe_Profiler]=jeremyBass #https://github.com/fbrnc/Aoe_Profiler.git
[Aoe_ManageStores]=jeremyBass #https://github.com/fbrnc/Aoe_ManageStores.git
[Aoe_LayoutConditions]=jeremyBass #https://github.com/fbrnc/Aoe_LayoutConditions.git
[Aoe_AsyncCache]=jeremyBass #https://github.com/fbrnc/Aoe_AsyncCache.git
[Aoe_ApiLog]=jeremyBass #https://github.com/fbrnc/Aoe_ApiLog.git
#[mage-enhanced-admin-grids]=mage-eag
)
cd /srv/www/mage/
install_repolist $gitRepos 0 "wget http://$url"
unset gitRepos #unset and re-declare to clear associative arrays
declare -A gitRepos
cd /srv/www/mage/
echo "importing WSU favicon"
wget -q http://images.dev.edu/favicon.ico -O favicon.ico
#run actions that are hard to do direct sql quries on
php /srv/www/scripts/mage/install-post.php
echo
echo "doing the first index"
echo
cd shell && php -f indexer.php reindexall
mysql -u root -pblank $dbname -e "DELETE FROM $dbname.adminnotification_inbox;" | echo -e "\n >> Removed admin notifications ..."
# Enable developer mode
#if [ $MAG_DEVELOPER_MODE == 1 ]; then
# sed -i -e '/Mage::run/i\
#Mage::setIsDeveloperMode(true);
#' -e '1,$s//Mage::run/' $WWW_PATH/index.php
#fi
echo
echo "Finished installing Magento"
echo
fi
install-post.phpDiese Datei erfolgt, nachdem die Datei install-Mage.sh die Magento-Installation abgeschlossen hat. Alle Module wurden heruntergeladen und Was wir brauchen, ist, alle Tabellen des Moduls installiert zu haben. IE: Die SQL -Installationen für die Module hätten inzwischen ausgeführt werden sollen
<?php
//just as a guide, no real purpose
echo getcwd() . " (working from)\n";
//set up the store instance
require_once "app/Mage.php";
umask(0);
Mage::app();
Mage::app()->getTranslator()->init('frontend');
Mage::getSingleton('core/session', array('name' => 'frontend'));
Mage::registry('isSecureArea'); // acting is if we are in the admin
Mage::app('admin')->setUseSessionInUrl(false);
Mage::getConfig()->init();
/**
* Get the resource model
*/
$resource = Mage::getSingleton('core/resource');
/**
* Retrieve the read connection
*/
$readConnection = $resource->getConnection('core_read');
/**
* Retrieve the write connection
*/
$writeConnection = $resource->getConnection('core_write');
// switch off error reporting
error_reporting ( E_ALL & ~ E_NOTICE );
$changeData = new Mage_Core_Model_Config();
echo "applying default store settings\n";
//pattern
//\((.*?), '(.*?)', (.*?), '(.*?)', '?(.*?)'?\),
//$changeData->saveConfig('$4', "$5", 'default', 0);
echo " - applying design settings\n";
$changeData->saveConfig('design/package/name', "wsu_base", 'default', 0);
$changeData->saveConfig('design/theme/template', "default", 'default', 0);
$changeData->saveConfig('design/theme/skin', "default", 'default', 0);
$changeData->saveConfig('design/theme/layout', "default", 'default', 0);
$changeData->saveConfig('design/theme/default', "default", 'default', 0);
$changeData->saveConfig('design/theme/locale', "NULL", 'default', 0);
function make_store($categoryName,$site,$store,$view){
//#adding a root cat for the new store we will create
// Create category object
$category = Mage::getModel('catalog/category');
$category->setStoreId(0); // No store is assigned to this category
$rootCategory['name'] = $categoryName;
$rootCategory['path'] = "1"; // this is the catgeory path - 1 for root category
$rootCategory['display_mode'] = "PRODUCTS";
$rootCategory['is_active'] = 1;
$category->addData($rootCategory);
$rootCategoryId=0;
try {
$category->save();
$rootCategoryId = $category->getId();
}
catch (Exception $e){
echo $e->getMessage();
}
if($rootCategoryId>0){
//#addWebsite
/** @var $website Mage_Core_Model_Website */
$website = Mage::getModel('core/website');
$website->setCode($site['code'])
->setName($site['name'])
->save();
//#addStoreGroup
/** @var $storeGroup Mage_Core_Model_Store_Group */
$storeGroup = Mage::getModel('core/store_group');
$storeGroup->setWebsiteId($website->getId())
->setName($store['name'])
->setRootCategoryId($rootCategoryId)
->save();
//#addStore
/** @var $store Mage_Core_Model_Store */
$store = Mage::getModel('core/store');
$store->setCode($view['code'])
->setWebsiteId($storeGroup->getWebsiteId())
->setGroupId($storeGroup->getId())
->setName($view['name'])
->setIsActive(1)
->save();
}
return $rootCategoryId;
}
echo "Applying the default multi-store setup\n";
$installed_stores = array();
$installed_stores['studentstore'] = make_store("Student store root",
array('code'=>'studentstore','name'=>'Student store'),
array('name'=>'Student Store'),
array('code'=>'studentstore','name'=>'base default veiw')
);
$installed_stores['teststore'] = make_store("Test store root",
array('code'=>'teststore','name'=>'Test store'),
array('name'=>'Test Store'),
array('code'=>'teststore','name'=>'base default veiw')
);
// let us refresh the cache
try {
$allTypes = Mage::app()->useCache();
foreach($allTypes as $type => $blah) {
Mage::app()->getCacheInstance()->cleanType($type);
}
} catch (Exception $e) {
// do something
error_log($e->getMessage());
}
$types = Mage::app()->getCacheInstance()->getTypes();
try {
echo "Cleaning data cache... \n";
flush();
foreach ($types as $type => $data) {
echo "Removing $type ... ";
echo Mage::app()->getCacheInstance()->clean($data["tags"]) ? "[OK]" : "[ERROR]";
echo "\n";
}
} catch (exception $e) {
die("[ERROR:" . $e->getMessage() . "]");
}
echo "\n";
try {
echo "Cleaning stored cache... ";
flush();
echo Mage::app()->getCacheInstance()->clean() ? "[OK]" : "[ERROR]";
echo "\n\n";
} catch (exception $e) {
die("[ERROR:" . $e->getMessage() . "]");
}
$modules = Mage::getConfig()->getNode('modules')->children();
$modulesArray = (array)$modules;
echo "Test modules";
if(isset($modulesArray['Aoe_AsyncCache'])) {
echo "AsyncCache exists.";
$tableName = $resource->getTableName('asynccache');
/**
* if prefix was 'mage_' then the below statement
* would print out mage_catalog_product_entity
*/
echo "known as ".$tableName;
} else {
echo "AsyncCachedoesn't exist.";
}
Installieren Sie-Invoke-App.php
<?php
//just as a guide, no real purpose
echo getcwd() . " (working from)\n";
//set up the store instance
require_once "app/Mage.php";
umask(0);
Mage::app();
Mage::app()->getTranslator()->init('frontend');
Mage::getSingleton('core/session', array('name' => 'frontend'));
Mage::registry('isSecureArea'); // acting is if we are in the admin
Mage::app('admin')->setUseSessionInUrl(false);
Mage::getConfig()->init();
// switch off error reporting
error_reporting ( E_ALL & ~ E_NOTICE );
// let us refresh the cache
try {
$allTypes = Mage::app()->useCache();
foreach($allTypes as $type => $blah) {
Mage::app()->getCacheInstance()->cleanType($type);
}
} catch (Exception $e) {
// do something
error_log($e->getMessage());
}
$types = Mage::app()->getCacheInstance()->getTypes();
try {
echo "Cleaning data cache... \n";
flush();
foreach ($types as $type => $data) {
echo "Removing $type ... ";
echo Mage::app()->getCacheInstance()->clean($data["tags"]) ? "[OK]" : "[ERROR]";
echo "\n";
}
} catch (exception $e) {
die("[ERROR:" . $e->getMessage() . "]");
}
echo "\n";
try {
echo "Cleaning stored cache... ";
flush();
echo Mage::app()->getCacheInstance()->clean() ? "[OK]" : "[ERROR]";
echo "\n\n";
} catch (exception $e) {
die("[ERROR:" . $e->getMessage() . "]");
}
echo "finish invoking the mage app.";
//time to login as admin
Mage::app('admin')->setUseSessionInUrl(false);
Mage::getSingleton('core/session', array('name' => 'adminhtml'));
// supply username
$user = Mage::getModel('admin/user')->loadByUsername('admin'); // user your admin username
if (Mage::getSingleton('adminhtml/url')->useSecretKey()) {
Mage::getSingleton('adminhtml/url')->renewSecretUrls();
}
$session = Mage::getSingleton('admin/session');
$session->setIsFirstVisit(true);
$session->setUser($user);
$session->setAcl(Mage::getResourceModel('admin/acl')->loadAcl());
Mage::dispatchEvent('admin_session_user_login_success',array('user'=>$user));
if ($session->isLoggedIn()) { echo "Logged in \n"; } else{ echo "Not Logged \n"; }
Lösung
Antworten
Es stellt sich heraus, dass nur das Löschen des Cache und das Ausführen eines WGE oder einen Benutzer programmgesteuert oder sogar beides nicht ausreicht, um den Code für die Installation eines Moduls auszulösen.
Das funktioniert.
rm -rf var/cache/*
php "/srv/www/mage/index.php"
Wo /mage
Ist der Store Root -Ordner, ich musste nur das ausführen index.php
Datei und dann hat es funktioniert. Ich kann nicht sagen, warum es nicht so wäre wget
, oder warum anrufen MAGE:app()
Und alle Kombinationen funktionierten nicht, aber das Löschen des Cache -Ordners und das Aufrufen der Datei ist das Ticket für den stabilen Wiederaufbau des Cache aus der Befehlszeile.
Hoffe das rettet jemanden etwas Zeit. Prost
Andere Tipps
Ich bin mir nicht sicher, ob ich Ihre Frage richtig gemacht habe, aber wenn Sie ein Setup -Skript auslösen möchten, ohne die Website in Ihrem Browser zu öffnen, warum nicht einfach das Shell -Skript erstellen, das gerade gerecht wird wget
Die Startseite Ihrer Magento -Installation?
Sie können das folgende PHP -Skript verwenden, um den Cache aus der Befehlszeile zu löschen, nachdem Sie alle Updates durch Git angewendet haben. Danach können Sie mit WGet die Homepage Ihrer Website zum Wiederaufbau des Cache und zum Ausführen aller Datenbankänderungen erhalten.
(Code von http://www.yameveo.com/development/php/flush-ety-magento-cache-from-the-command-line):
<?php
date_default_timezone_set("Europe/Madrid");
echo "Start Cleaning all caches at ... " . date("Y-m-d H:i:s") . "\n\n";
ini_set("display_errors", 1);
require '../app/Mage.php';
Mage::app('admin')->setUseSessionInUrl(false);
Mage::getConfig()->init();
$types = Mage::app()->getCacheInstance()->getTypes();
try {
echo "Cleaning data cache... \n";
flush();
foreach ($types as $type => $data) {
echo "Removing $type ... ";
echo Mage::app()->getCacheInstance()->clean($data["tags"]) ? "[OK]" : "[ERROR]";
echo "\n";
}
} catch (exception $e) {
die("[ERROR:" . $e->getMessage() . "]");
}
echo "\n";
try {
echo "Cleaning stored cache... ";
flush();
echo Mage::app()->getCacheInstance()->clean() ? "[OK]" : "[ERROR]";
echo "\n\n";
} catch (exception $e) {
die("[ERROR:" . $e->getMessage() . "]");
}