]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
Merge pull request #2315 from wallabag/fixes-about-upgrade
authorNicolas Lœuillet <nicolas@loeuillet.org>
Thu, 29 Sep 2016 09:35:47 +0000 (11:35 +0200)
committerGitHub <noreply@github.com>
Thu, 29 Sep 2016 09:35:47 +0000 (11:35 +0200)
Fixes about upgrade

23 files changed:
app/DoctrineMigrations/Version20160812120952.php
docs/de/conf.py
docs/de/developer/rabbitmq.rst [new file with mode: 0644]
docs/de/developer/redis.rst [new file with mode: 0644]
docs/de/index.rst
docs/de/user/upgrade-2.0.x-2.0.y.rst [moved from docs/de/user/upgrade.rst with 77% similarity]
docs/de/user/upgrade-2.0.x-2.1.y.rst [new file with mode: 0644]
docs/en/conf.py
docs/en/developer/rabbitmq.rst
docs/en/developer/redis.rst
docs/en/index.rst
docs/en/user/upgrade-2.0.x-2.0.y.rst [moved from docs/en/user/upgrade.rst with 70% similarity]
docs/en/user/upgrade-2.0.x-2.1.y.rst [new file with mode: 0644]
docs/fr/conf.py
docs/fr/developer/rabbitmq.rst [new file with mode: 0644]
docs/fr/developer/redis.rst [new file with mode: 0644]
docs/fr/index.rst
docs/fr/user/upgrade-2.0.x-2.0.y.rst [moved from docs/fr/user/upgrade.rst with 74% similarity]
docs/fr/user/upgrade-2.0.x-2.1.y.rst [new file with mode: 0644]
src/Wallabag/CoreBundle/Resources/translations/messages.fr.yml
tests/Wallabag/CoreBundle/Controller/TagControllerTest.php
tests/Wallabag/CoreBundle/WallabagCoreTestCase.php
tests/Wallabag/UserBundle/Mailer/AuthCodeMailerTest.php

index 9adfdc8be35e87f66fcc49fac5c161e56ef1ae75..a8d3bcf25a9382852a9d90e69c330b0b2eb4df71 100644 (file)
@@ -29,7 +29,11 @@ class Version20160812120952 extends AbstractMigration implements ContainerAwareI
      */
     public function up(Schema $schema)
     {
-        $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext COLLATE \'utf8_unicode_ci\' DEFAULT NULL');
+        if ($this->connection->getDatabasePlatform()->getName() == 'sqlite') {
+            $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext DEFAULT NULL');
+        } else {
+            $this->addSql('ALTER TABLE '.$this->getTable('oauth2_clients').' ADD name longtext COLLATE \'utf8_unicode_ci\' DEFAULT NULL');
+        }
     }
 
     /**
index 8f2d130d08b202bf8956de229cec206ee9aa5029..cc9dcdf810698b3d6428ce929e2de2c541471c0f 100644 (file)
@@ -12,7 +12,7 @@ source_suffix = '.rst'
 master_doc = 'index'
 project = u'wallabag-fr'
 copyright = u'2013-2016, Nicolas Lœuillet - MIT Licence'
-version = '2.0.0'
+version = '2.1.0'
 release = version
 exclude_patterns = ['_build']
 pygments_style = 'sphinx'
diff --git a/docs/de/developer/rabbitmq.rst b/docs/de/developer/rabbitmq.rst
new file mode 100644 (file)
index 0000000..bea02ff
--- /dev/null
@@ -0,0 +1,77 @@
+Installiere RabbitMQ für asynchrone Aufgaben
+============================================
+
+Um asynchrone Aufgaben zu starten (nützlich z.B. für große Imports), können wir RabbitMQ nutzen.
+
+Voraussetzungen
+---------------
+
+Du musst RabbitMQ auf deinem Server installiert haben.
+
+Installation
+~~~~~~~~~~~~
+
+.. code:: bash
+
+  wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
+  apt-key add rabbitmq-signing-key-public.asc
+  apt-get update
+  apt-get install rabbitmq-server
+
+Konfiguration und Starten
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+.. code:: bash
+
+  rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
+  rabbitmq-server -detached
+
+RabbitMQ stoppen
+~~~~~~~~~~~~~~~
+
+.. code:: bash
+
+  rabbitmqctl stop
+
+
+Konfigure RabbitMQ in wallabag
+------------------------------
+
+Bearbeite die Datei ``parameters.yml``, um die RabbitMQ Konfiguration einzurichten. Die Standardkonfiguration sollte ok sein:
+
+.. code:: yaml
+
+    rabbitmq_host: localhost
+    rabbitmq_port: 5672
+    rabbitmq_user: guest
+    rabbitmq_password: guest
+
+
+Starte den RabbitMQ Consumer
+----------------------------
+
+Abhängig von welchem Service du importieren möchtest, solltest du einen Cron Job aktivieren (oder mehrere, wenn du viele unterstützen willst):
+
+.. code:: bash
+
+  # for Pocket import
+  bin/console rabbitmq:consumer import_pocket -w
+
+  # for Readability import
+  bin/console rabbitmq:consumer import_readability -w
+
+  # for Instapaper import
+  bin/console rabbitmq:consumer import_instapaper -w
+
+  # for wallabag v1 import
+  bin/console rabbitmq:consumer import_wallabag_v1 -w
+
+  # for wallabag v2 import
+  bin/console rabbitmq:consumer import_wallabag_v2 -w
+
+  # for Firefox import
+  bin/console rabbitmq:consumer import_firefox -w
+
+  # for Chrome import
+  bin/console rabbitmq:consumer import_chrome -w
+
diff --git a/docs/de/developer/redis.rst b/docs/de/developer/redis.rst
new file mode 100644 (file)
index 0000000..d613ce6
--- /dev/null
@@ -0,0 +1,71 @@
+Installiere Redis für asynchrone Aufgaben
+=========================================
+
+Um asynchrone Aufgaben zu starten (nützlich z.B. für große Imports), können wir Redis nutzen.
+
+Voraussetzungen
+---------------
+
+Du musst Redis auf deinem Server installiert haben.
+
+Installation
+~~~~~~~~~~~~
+
+.. code:: bash
+
+  apt-get install redis-server
+
+Starten
+~~~~~~
+
+Der Redis Service läuft eventuell schon direkt nach der Installation. Falls nicht kannst du ihn wie folgt starten:
+
+.. code:: bash
+
+  redis-server
+
+
+Konfigure Redis in wallabag
+---------------------------
+
+Bearbeite die Datei ``parameters.yml``, um die RabbitMQ Konfiguration einzurichten. Die Standardkonfiguration sollte ok sein:
+
+.. code:: yaml
+
+    redis_host: localhost
+    redis_port: 6379
+
+
+Starte den Redis Consumer
+-------------------------
+
+Abhängig von welchem Service du importieren möchtest, solltest du einen Cron Job aktivieren (oder mehrere, wenn du viele unterstützen willst):
+
+.. code:: bash
+
+  # for Pocket import
+  bin/console wallabag:import:redis-worker pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
+
+  # for Readability import
+  bin/console wallabag:import:redis-worker readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
+
+  # for Instapaper import
+  bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
+
+  # for wallabag v1 import
+  bin/console wallabag:import:redis-worker wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
+
+  # for wallabag v2 import
+  bin/console wallabag:import:redis-worker wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
+
+  # for Firefox import
+  bin/console wallabag:import:redis-worker firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
+
+  # for Chrome import
+  bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
+
+Wenn du den Import nur für ein paar Nachrichten und nicht für alle starten willst, kannst du die Nummer (im folgenden Beispiel 12) angeben. Der Redis Worker wird dann nach der 12. Nachricht stoppen:
+
+.. code:: bash
+
+  bin/console wallabag:import:redis-worker pocket -vv --maxIterations=12
index d8cd8f396bbfe3e6baca7f48d51f0341ade171d9..b3cd33b07a8b471d877bee4eaa3721a60b7416e3 100644 (file)
@@ -30,7 +30,8 @@ Die Dokumentation ist in anderen Sprachen verfügbar :
 
    user/faq
    user/installation
-   user/upgrade
+   user/upgrade-2.0.x-2.1.y
+   user/upgrade-2.0.x-2.0.y
    user/migration
    user/import
    user/create_account
@@ -55,3 +56,5 @@ Die Dokumentation ist in anderen Sprachen verfügbar :
    developer/documentation
    developer/translate
    developer/maintenance
+   developer/redis
+   developer/rabbitmq
similarity index 77%
rename from docs/de/user/upgrade.rst
rename to docs/de/user/upgrade-2.0.x-2.0.y.rst
index 953c84ff7cd1c5437551298cf219378f21d4355f..adf288bd501db0139ede85abd3efd417c187df06 100644 (file)
@@ -1,17 +1,18 @@
-Wallabag updaten
-================
+Wallabag updaten 2.0.x -> 2.1.x
+===============================
 
 Update auf einem dedizierten Webserver
 --------------------------------------
 
-Das neueste Release ist auf https://www.wallabag.org/pages/download-wallabag.html veröffentlicht. Um deine wallabag Installation auf die neueste Version upzudaten, führe die folgenden Kommandos in deinem wallabag Ordner aus (ersetze ``2.1.0`` mit der neuesten Releasenummer):
+Das neueste Release ist auf https://www.wallabag.org/pages/download-wallabag.html veröffentlicht. Um deine wallabag Installation auf die neueste Version upzudaten, führe die folgenden Kommandos in deinem wallabag Ordner aus (ersetze ``2.0.8`` mit der neuesten Releasenummer):
 
 ::
 
     git fetch origin
     git fetch --tags
-    git checkout 2.1.0
-    ./install.sh
+    git checkout 2.0.8
+    SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
+    php bin/console cache:clear --env=prod
 
 Update auf einem Shared Webhosting
 ----------------------------------
diff --git a/docs/de/user/upgrade-2.0.x-2.1.y.rst b/docs/de/user/upgrade-2.0.x-2.1.y.rst
new file mode 100644 (file)
index 0000000..85229d3
--- /dev/null
@@ -0,0 +1,64 @@
+Wallabag updaten
+================
+
+.. warning::
+Wenn du den Import von Pocket durch das Hinzufügen des Consumer Key in den internen Einstellungen konfiguriert hast, fertige bitte ein Backup deines Keys an, bevor du auf das neue Release migrierst: Du wirst den Key nach dem Update in der Konfiguration erneut eintragen müssen.
+
+Update auf einem dedizierten Webserver
+--------------------------------------
+
+Das neueste Release ist auf https://www.wallabag.org/pages/download-wallabag.html veröffentlicht. Um deine wallabag-Installation auf die neueste Version zu aktualisieren, führe die folgenden Kommandos in deinem wallabag-Ordner aus (ersetze ``2.1.0`` mit der neuesten Releasenummer):
+
+::
+
+    git fetch origin
+    git fetch --tags
+    git checkout 2.1.0
+    ASSETS=build ./install.sh
+    php bin/console doctrine:migrations:migrate --env=prod
+    php bin/console cache:clear --env=prod
+
+Update auf einem Shared Webhosting
+----------------------------------
+
+Sichere deine ``app/config/parameters.yml`` Datei.
+
+Lade das neueste Release von wallabag herunter:
+
+.. code-block:: bash
+
+    wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
+
+(md5 hash: ``4f84c725d1d6e3345eae0a406115e5ff``)
+
+Entpacke das Archiv in deinen wallabag-Ordner und ersetze ``app/config/parameters.yml`` mit deiner Datei.
+
+Bitte beachte, dass wir in dieser Version neue Parameter hinzugefügt haben. Du musst die Datei ``app/config/parameters.yml`` bearbeiten und die folgenden Zeilen hinzufügen (ersetze die Werte mit deiner Konfiguration):
+
+.. code-block:: bash
+
+    # RabbitMQ processing
+    rabbitmq_host: localhost
+    rabbitmq_port: 5672
+    rabbitmq_user: guest
+    rabbitmq_password: guest
+
+    # Redis processing
+    redis_host: localhost
+    redis_port: 6379
+
+Wenn du SQLite nutzt, musst auch das ``data/`` Verzeichnis in die neue Installation kopieren.
+
+Leere den ``var/cache`` Ordner.
+
+Du musst einige SQL-Abfragen ausführen, um die Datenbank zu aktualisieren. Wir nehmen in diesem Fall an, dass das Tabellenpräfix ``wallabag_`` ist und eine MySQL-Datenbank genutzt wird:
+
+.. code-block:: sql
+
+    ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL;
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry');
+    ALTER TABLE `wallabag_oauth2_clients` ADD name longtext COLLATE 'utf8_unicode_ci' DEFAULT NULL;
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_redis', '0', 'import');
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_rabbitmq', '0', 'import');
+    ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL;
+    DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key';
index 86e337040978a243bb746120fb8281a00ca3f214..717b35f1433fb2cfe290e82eb5b00132d6efbf6b 100644 (file)
@@ -12,7 +12,7 @@ source_suffix = '.rst'
 master_doc = 'index'
 project = u'wallabag'
 copyright = u'2013-2016, Nicolas Lœuillet - MIT Licence'
-version = '2.0.0'
+version = '2.1.0'
 release = version
 exclude_patterns = ['_build']
 pygments_style = 'sphinx'
index 8cee45fb6eb5c90a84656b21361d1d9a1019d2b3..63b851063f85c49b27deae04118235bfbffc817e 100644 (file)
@@ -57,11 +57,20 @@ Depending on which service you want to import from you need to enable one (or ma
   # for Pocket import
   bin/console rabbitmq:consumer import_pocket -w
 
-  # for Readbility import
+  # for Readability import
   bin/console rabbitmq:consumer import_readability -w
 
+  # for Instapaper import
+  bin/console rabbitmq:consumer import_instapaper -w
+
   # for wallabag v1 import
   bin/console rabbitmq:consumer import_wallabag_v1 -w
 
   # for wallabag v2 import
   bin/console rabbitmq:consumer import_wallabag_v2 -w
+
+  # for Firefox import
+  bin/console rabbitmq:consumer import_firefox -w
+
+  # for Chrome import
+  bin/console rabbitmq:consumer import_chrome -w
index 5748e260de9e363ceeab11987251dac52f1499ff..820a52e9e62603509b9f3705a12cdbec9a1fb862 100644 (file)
@@ -1,5 +1,5 @@
 Install Redis for asynchronous tasks
-=======================================
+====================================
 
 In order to launch asynchronous tasks (useful for huge imports for example), we can use Redis.
 
@@ -37,7 +37,7 @@ Edit your ``parameters.yml`` file to edit Redis configuration. The default one s
 
 
 Launch Redis consumer
-------------------------
+---------------------
 
 Depending on which service you want to import from you need to enable one (or many if you want to support many) cron job:
 
@@ -46,15 +46,24 @@ Depending on which service you want to import from you need to enable one (or ma
   # for Pocket import
   bin/console wallabag:import:redis-worker pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
 
-  # for Readbility import
+  # for Readability import
   bin/console wallabag:import:redis-worker readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
 
+  # for Instapaper import
+  bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
+
   # for wallabag v1 import
   bin/console wallabag:import:redis-worker wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
 
   # for wallabag v2 import
   bin/console wallabag:import:redis-worker wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
 
+  # for Firefox import
+  bin/console wallabag:import:redis-worker firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
+
+  # for Chrome import
+  bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
+
 If you want to launch the import only for some messages and not all, you can specify this number (here 12) and the worker will stop right after the 12th message :
 
 .. code:: bash
index 46450b8f0fd5cf0455828679df875c07e57af8f6..beb3816e1a9fa02d5cbf5dda8fc523cf72ca32e6 100644 (file)
@@ -30,7 +30,8 @@ The documentation is available in other languages:
 
    user/faq
    user/installation
-   user/upgrade
+   user/upgrade-2.0.x-2.1.y
+   user/upgrade-2.0.x-2.0.y
    user/migration
    user/import
    user/create_account
@@ -56,3 +57,5 @@ The documentation is available in other languages:
    developer/documentation
    developer/translate
    developer/maintenance
+   developer/redis
+   developer/rabbitmq
similarity index 70%
rename from docs/en/user/upgrade.rst
rename to docs/en/user/upgrade-2.0.x-2.0.y.rst
index 5c37be95088ad052f03719b8086bd32e03dead05..6a0818b3a5e234474c98b099ce19494f66854a33 100644 (file)
@@ -1,17 +1,18 @@
-Upgrade wallabag
-================
+Upgrade from 2.0.x to 2.0.y
+===========================
 
 Upgrade on a dedicated web server
 ---------------------------------
 
-The last release is published on https://www.wallabag.org/pages/download-wallabag.html. In order to upgrade your wallabag installation and get the last version, run the following commands in you wallabag folder (replace ``2.1.0`` by the last release number):
+The last release is published on https://www.wallabag.org/pages/download-wallabag.html. In order to upgrade your wallabag installation and get the last version, run the following commands in you wallabag folder (replace ``2.0.8`` by the last release number):
 
 ::
 
     git fetch origin
     git fetch --tags
-    git checkout 2.1.0
-    ./install.sh
+    git checkout 2.0.8
+    SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
+    php bin/console cache:clear --env=prod
 
 Upgrade on a shared hosting
 ---------------------------
@@ -24,7 +25,7 @@ Download the last release of wallabag:
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(md5 hash of the package: ``4f84c725d1d6e3345eae0a406115e5ff``)
+(md5 hash of the 2.0.8 package: ``4f84c725d1d6e3345eae0a406115e5ff``)
 
 Extract the archive in your wallabag folder and replace ``app/config/parameters.yml`` with yours.
 
diff --git a/docs/en/user/upgrade-2.0.x-2.1.y.rst b/docs/en/user/upgrade-2.0.x-2.1.y.rst
new file mode 100644 (file)
index 0000000..5ae5eb4
--- /dev/null
@@ -0,0 +1,64 @@
+Upgrading from 2.0.x to 2.1.y
+=============================
+
+.. warning::
+Before this migration, if you configured the Pocket import by adding your consumer key in Internal settings, please do a backup of it: you'll have to add it into the Config page after the upgrade.
+
+Upgrade on a dedicated web server
+---------------------------------
+
+The last release is published on https://www.wallabag.org/pages/download-wallabag.html. In order to upgrade your wallabag installation and get the last version, run the following commands in you wallabag folder (replace ``2.1.0`` by the last release number):
+
+::
+
+    git fetch origin
+    git fetch --tags
+    git checkout 2.1.0
+    ASSETS=build ./install.sh
+    php bin/console doctrine:migrations:migrate --env=prod
+    php bin/console cache:clear --env=prod
+
+Upgrade on a shared hosting
+---------------------------
+
+Backup your ``app/config/parameters.yml`` file.
+
+Download the last release of wallabag:
+
+.. code-block:: bash
+
+    wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
+
+(md5 hash of the package: ``4f84c725d1d6e3345eae0a406115e5ff``)
+
+Extract the archive in your wallabag folder and replace ``app/config/parameters.yml`` with yours.
+
+Please note that we added new parameters in this version. You have to edit ``app/config/parameters.yml`` by adding these lines (replace with your configuration) :
+
+.. code-block:: bash
+
+    # RabbitMQ processing
+    rabbitmq_host: localhost
+    rabbitmq_port: 5672
+    rabbitmq_user: guest
+    rabbitmq_password: guest
+
+    # Redis processing
+    redis_host: localhost
+    redis_port: 6379
+
+If you use SQLite, you must also copy your ``data/`` folder inside the new installation.
+
+Empty ``var/cache`` folder.
+
+You must run some SQL queries to upgrade your database. We assume that the table prefix is ``wallabag_`` and the database server is a MySQL one:
+
+.. code-block:: sql
+
+    ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL;
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry');
+    ALTER TABLE `wallabag_oauth2_clients` ADD name longtext COLLATE 'utf8_unicode_ci' DEFAULT NULL;
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_redis', '0', 'import');
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_rabbitmq', '0', 'import');
+    ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL;
+    DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key';
index f1fe39676a13cc2e88bda28cdc1c9a3f10ea3247..49a57e2d5dc97b22216363860139796f533f1fed 100644 (file)
@@ -12,7 +12,7 @@ source_suffix = '.rst'
 master_doc = 'index'
 project = u'wallabag-fr'
 copyright = u'2013-2016, Nicolas Lœuillet - MIT Licence'
-version = '2.0.0'
+version = '2.1.0'
 release = version
 exclude_patterns = ['_build']
 pygments_style = 'sphinx'
diff --git a/docs/fr/developer/rabbitmq.rst b/docs/fr/developer/rabbitmq.rst
new file mode 100644 (file)
index 0000000..20182e6
--- /dev/null
@@ -0,0 +1,76 @@
+Installer RabbitMQ pour des tâches asynchrones
+==============================================
+
+Pour lancer des tâches asynchrones (utile pour des imports importants par exemple), nous pouvons utiliser RabbitMQ.
+
+Pré-requis
+----------
+
+Vous devez installer RabbitMQ sur votre serveur.
+
+Installation
+~~~~~~~~~~~~
+
+.. code:: bash
+
+  wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
+  apt-key add rabbitmq-signing-key-public.asc
+  apt-get update
+  apt-get install rabbitmq-server
+
+Configuration et démarrage
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+.. code:: bash
+
+  rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
+  rabbitmq-server -detached
+
+Arrêter RabbitMQ
+~~~~~~~~~~~~~~~~
+
+.. code:: bash
+
+  rabbitmqctl stop
+
+
+Configurer RabbitMQ dans wallabag
+---------------------------------
+
+Modifiez votre fichier ``parameters.yml`` pour éditer la configuration RabbitMQ. Celle par défaut devrait convenir :
+
+.. code:: yaml
+
+    rabbitmq_host: localhost
+    rabbitmq_port: 5672
+    rabbitmq_user: guest
+    rabbitmq_password: guest
+
+
+Démarrer les clients RabbitMQ
+-----------------------------
+
+En fonction du service dont vous souhaitez importer vos données, vous devez activer un (ou plusieurs si vous souhaitez en supporter plusieurs) cron job :
+
+.. code:: bash
+
+  # for Pocket import
+  bin/console rabbitmq:consumer import_pocket -w
+
+  # for Readability import
+  bin/console rabbitmq:consumer import_readability -w
+
+  # for Instapaper import
+  bin/console rabbitmq:consumer import_instapaper -w
+
+  # for wallabag v1 import
+  bin/console rabbitmq:consumer import_wallabag_v1 -w
+
+  # for wallabag v2 import
+  bin/console rabbitmq:consumer import_wallabag_v2 -w
+
+  # for Firefox import
+  bin/console rabbitmq:consumer import_firefox -w
+
+  # for Chrome import
+  bin/console rabbitmq:consumer import_chrome -w
diff --git a/docs/fr/developer/redis.rst b/docs/fr/developer/redis.rst
new file mode 100644 (file)
index 0000000..097e375
--- /dev/null
@@ -0,0 +1,71 @@
+Installer Redis pour des tâches asynchrones
+===========================================
+
+Pour lancer des tâches asynchrones (utile pour des imports importants par exemple), nous pouvons utiliser Redis.
+
+Pré-requis
+----------
+
+Vous devez installer Redis sur votre serveur.
+
+Installation
+~~~~~~~~~~~~
+
+.. code:: bash
+
+  apt-get install redis-server
+
+Démarrage
+~~~~~~~~~
+
+Le serveur devrait déjà être démarré après l'installation. Si ce n'est pas le cas, vous pouvez le démarrer ainsi :
+
+.. code:: bash
+
+  redis-server
+
+
+Configurer Redis dans wallabag
+-------------------------------
+
+Modifiez votre fichier ``parameters.yml`` pour éditer la configuration Redis. Celle par défaut devrait convenir :
+
+.. code:: yaml
+
+    redis_host: localhost
+    redis_port: 6379
+
+
+Démarrer les clients Redis
+--------------------------
+
+En fonction du service dont vous souhaitez importer vos données, vous devez activer un (ou plusieurs si vous souhaitez en supporter plusieurs) cron job :
+
+.. code:: bash
+
+  # for Pocket import
+  bin/console wallabag:import:redis-worker pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
+
+  # for Readability import
+  bin/console wallabag:import:redis-worker readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
+
+  # for Instapaper import
+  bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
+
+  # for wallabag v1 import
+  bin/console wallabag:import:redis-worker wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
+
+  # for wallabag v2 import
+  bin/console wallabag:import:redis-worker wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
+
+  # for Firefox import
+  bin/console wallabag:import:redis-worker firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
+
+  # for Chrome import
+  bin/console wallabag:import:redis-worker instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
+
+Si vous souhaitez démarrer l'import pour quelques messages uniquement, vous pouvez spécifier cette valeur en paramètre (ici 12) et le client va s'arrêter après le 12ème message :
+
+.. code:: bash
+
+  bin/console wallabag:import:redis-worker pocket -vv --maxIterations=12
index dfa55afe676049c629c26545d94d29e7c4032a05..359b103c0aa14231a2fb5c75cb1e8116b82a5564 100644 (file)
@@ -31,7 +31,8 @@ La documentation est disponible dans d'autres langues :
 
    user/faq
    user/installation
-   user/upgrade
+   user/upgrade-2.0.x-2.1.y
+   user/upgrade-2.0.x-2.0.y
    user/migration
    user/import
    user/create_account
@@ -56,3 +57,5 @@ La documentation est disponible dans d'autres langues :
    developer/documentation
    developer/translate
    developer/maintenance
+   developer/redis
+   developer/rabbitmq
similarity index 74%
rename from docs/fr/user/upgrade.rst
rename to docs/fr/user/upgrade-2.0.x-2.0.y.rst
index e3798979c4ac4bb7bb613d03d6728ee9481aac49..d8dfac6ebff807079a1b7b3175b899d6d0d1d9be 100644 (file)
@@ -1,17 +1,18 @@
-Mettre à jour wallabag
-======================
+Mettre à jour de la 2.0.x à la 2.0.y
+====================================
 
 Mise à jour sur un serveur dédié
 --------------------------------
 
-La dernière version de wallabag est publiée à cette adresse : https://www.wallabag.org/pages/download-wallabag.html. Pour mettre à jour votre installation de wallabag, exécutez les commandes suivantes dans votre répertoire d'installation (remplacez ``2.1.0`` par le numéro de la dernière version) :
+La dernière version de wallabag est publiée à cette adresse : https://www.wallabag.org/pages/download-wallabag.html. Pour mettre à jour votre installation de wallabag, exécutez les commandes suivantes dans votre répertoire d'installation (remplacez ``2.0.8`` par le numéro de la dernière version) :
 
 ::
 
     git fetch origin
     git fetch --tags
-    git checkout 2.1.0
-    ./install.sh
+    git checkout 2.0.8
+    SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
+    php bin/console cache:clear --env=prod
 
 Mise à jour sur un hébergement mutualisé
 ----------------------------------------
@@ -24,7 +25,7 @@ Téléchargez la dernière version de wallabag :
 
     wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
 
-(hash md5 de l'archive : ``4f84c725d1d6e3345eae0a406115e5ff``)
+(hash md5 de l'archive 2.0.8 : ``4f84c725d1d6e3345eae0a406115e5ff``)
 
 Décompressez l'archive dans votre répertoire d'installation et remplacez le fichier ``app/config/parameters.yml`` avec le votre.
 
diff --git a/docs/fr/user/upgrade-2.0.x-2.1.y.rst b/docs/fr/user/upgrade-2.0.x-2.1.y.rst
new file mode 100644 (file)
index 0000000..a4afe76
--- /dev/null
@@ -0,0 +1,65 @@
+Mettre à jour de la 2.0.x à la 2.1.y
+====================================
+
+.. warning::
+Avant cette migration, si vous aviez configuré l'import depuis Pocket en ajoutant votre consumer key dans les paramètres internes, pensez à effectuer une sauvegarde de celle-ci : vous devrez l'ajouter dans la configuration de wallabag après la mise à jour.
+
+Mise à jour sur un serveur dédié
+--------------------------------
+
+La dernière version de wallabag est publiée à cette adresse : https://www.wallabag.org/pages/download-wallabag.html. Pour mettre à jour votre installation de wallabag, exécutez les commandes suivantes dans votre répertoire d'installation (remplacez ``2.1.0`` par le numéro de la dernière version) :
+
+::
+
+    git fetch origin
+    git fetch --tags
+    git checkout 2.1.0
+    ASSETS=build ./install.sh
+    php bin/console doctrine:migrations:migrate --env=prod
+    php bin/console cache:clear --env=prod
+
+Mise à jour sur un hébergement mutualisé
+----------------------------------------
+
+Effectuez une sauvegarde du fichier ``app/config/parameters.yml``.
+
+Téléchargez la dernière version de wallabag :
+
+.. code-block:: bash
+
+    wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package
+
+(hash md5 de l'archive : ``4f84c725d1d6e3345eae0a406115e5ff``)
+
+Décompressez l'archive dans votre répertoire d'installation et remplacez le fichier ``app/config/parameters.yml`` avec le votre.
+
+Nous avons ajouté de nouveaux paramètres dans cette nouvelle version. Vous devez donc éditer le fichier ``app/config/parameters.yml`` en ajoutant ces lignes (et en remplaçant par votre configuration) :
+
+.. code-block:: bash
+
+    # RabbitMQ processing
+    rabbitmq_host: localhost
+    rabbitmq_port: 5672
+    rabbitmq_user: guest
+    rabbitmq_password: guest
+
+    # Redis processing
+    redis_host: localhost
+    redis_port: 6379
+
+Si vous utilisez SQLite, vous devez également conserver le contenu du répertoire ``data/``.
+
+Videz le répertoire ``var/cache``.
+
+Vous allez devoir également exécuter des requêtes SQL pour mettre à jour votre base de données. Nous partons du principe que le préfixe de vos tables est ``wallabag_`` et que le serveur SQL est un serveur MySQL :
+
+.. code-block:: sql
+
+    ALTER TABLE `wallabag_entry` ADD `uuid` LONGTEXT DEFAULT NULL;
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('share_public', '1', 'entry');
+    ALTER TABLE `wallabag_oauth2_clients` ADD name longtext COLLATE 'utf8_unicode_ci' DEFAULT NULL;
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_redis', '0', 'import');
+    INSERT INTO `wallabag_craue_config_setting` (`name`, `value`, `section`) VALUES ('import_with_rabbitmq', '0', 'import');
+    ALTER TABLE `wallabag_config` ADD `pocket_consumer_key` VARCHAR(255) DEFAULT NULL;
+    DELETE FROM `wallabag_craue_config_setting` WHERE `name` = 'pocket_consumer_key';
+
index 968deaf9ab92db344cf6b0c4c20bec34a22fbbb3..b70ca64dfbe18ef345dd42c7c45a51e42f2986c4 100644 (file)
@@ -45,9 +45,9 @@ footer:
         social: 'Social'
         powered_by: 'propulsé par'
         about: 'À propos'
-    page_title: 'Configuration'
 
 config:
+    page_title: 'Configuration'
     tab_menu:
         settings: 'Paramètres'
         rss: 'RSS'
index 71652760d8a592c2729147ff4691527d1c819d3b..2c32393f74449f373c3a0e168c40dc36ca213cdb 100644 (file)
@@ -47,7 +47,7 @@ class TagControllerTest extends WallabagCoreTestCase
 
         $this->assertEquals(1, count($entry->getTags()));
 
-        # tag already exists and already assigned
+        // tag already exists and already assigned
         $client->submit($form, $data);
         $this->assertEquals(302, $client->getResponse()->getStatusCode());
 
@@ -58,7 +58,7 @@ class TagControllerTest extends WallabagCoreTestCase
 
         $this->assertEquals(1, count($newEntry->getTags()));
 
-        # tag already exists but still not assigned to this entry
+        // tag already exists but still not assigned to this entry
         $data = [
             'tag[label]' => 'foo',
         ];
index 75b7ee0bd4a110437cdd226455eea0dda7634304..4f103921a78cf6c7c56aa36da70cfb48726ec274 100644 (file)
@@ -83,7 +83,7 @@ abstract class WallabagCoreTestCase extends WebTestCase
 
     /**
      * Check if Redis is installed.
-     * If not, mark test as skip
+     * If not, mark test as skip.
      */
     protected function checkRedis()
     {
index f670c92582d7b0931dc6e890f17d415211f9183b..441d6519f5723537239b9e24f11863418e2abcba 100644 (file)
@@ -37,7 +37,7 @@ class AuthCodeMailerTest extends \PHPUnit_Framework_TestCase
         );
         $this->mailer = new \Swift_Mailer($transport);
 
-        $twigTemplate = <<<TWIG
+        $twigTemplate = <<<'TWIG'
 {% block subject %}subject{% endblock %}
 {% block body_html %}html body {{ code }}{% endblock %}
 {% block body_text %}text body {{ support_url }}{% endblock %}