Installation

Préalable

RECOMMANDATION
Bien que l'installation de phpredis est fortement conseillé, le plugin peut très bien fonctionner sans, et utilisera Redisent, déjà livré avec le plugin.


Installation

Rajouter CakeResque comme une dépendence dans votre fichier composer.json

{
    "require": {
        ... vos autres dépendences
        "kamisama/cake-resque": ">=4.1.0"
    }
}

puis executer composer install.

Si votre application ne contient pas encore de fichier composer.json, vous pouvez le génerer avec les commandes suivante, à executer dans votre console.

cd chemin/vers/votre/app
curl -s https://getcomposer.org/installer | php
php composer.phar require --no-update kamisama/cake-resque:4.1.0
php composer.phar config vendor-dir Vendor
php composer.phar install

Ces commandes vont * Installer Composer * Générer le fichier composer.json * Installer le plugin


Configuration

Charger le plugin dans votre application CakePHP

  • Charger votre plugin dans app/Config/bootstrap.php
CakePlugin::load(array( # ou CakePlugin::loadAll(array(
    'CakeResque' => array('bootstrap' => true)
));
  • Créer le fichier AppShell.php dans le dossier app/Console/Command, si celui n'existe pas encore.

  • Ajouter la fonction suivante dans AppShell.php

public function perform() {
    $this->initialize();
    $this->loadTasks();
    return $this->runCommand($this->args[0], $this->args);
}
Fichier AppShell.php final
<?php
App::uses('AppModel', 'Model');
class AppShell extends Shell
{
    public function perform()
    {
        $this->initialize();
        $this->loadTasks();
        $this->{array_shift($this->args)}();
    }
}


  • Si ce n'est deja fait, charger le autoloader de composer dans votre application, en rajoutant la ligne suivante à la fin de app/Config/core.php
require_once dirname(__DIR__) . '/Vendor/autoload.php';

Configurer CakeResque

Tous les paramètres peuvent être définis dans le fichier bootstrap du plugin. Referez-vous a la documentation a l'intérieur du fichier.

Il est recommandé de ne pas editer directement les fichiers dans le dossier Config du plugin, mais de créer vos propres fichier configs.

Example

# app/Config/cakeresque_config.php
Configure::write('CakeResque.Redis.host', 'mylocalhost');

Vous devez alors activer le plugin avec cette commande

CakePlugin::load(array( # or CakePlugin::loadAll(array(
    'CakeResque' => array('bootstrap' => array(
        'bootstrap_config',
        '../../../Config/cakeresque_config', # Chemin vers votre propre fichier config
        'bootstrap')
    )
));

Dans l'exemple ci-dessus, votre configuration se trouve dans app/Config/cakeresque_config.php. Vous n'avez pas besoin de require ou d'include le fichier config original.
Séparer votre propre config dans un fichier séparé, en dehors du plugin, facilitera les futures mise à jour du plugin.


Mise a jour

Dans votre console, simplement executer

cd chemin/vers/votre/app

php composer.phar update
# Ou bien
composer update

DebugKit

Le log des activités de CakeResque peut être visualisable grâce au panneau "Resque", disponible en installant DebugKitEx.

DebugKit Resque panel