aboutsummaryrefslogtreecommitdiffhomepage
path: root/docs/en/developer
diff options
context:
space:
mode:
Diffstat (limited to 'docs/en/developer')
-rw-r--r--docs/en/developer/api.rst2
-rw-r--r--docs/en/developer/maintenance.rst4
-rw-r--r--docs/en/developer/rabbitmq.rst80
-rw-r--r--docs/en/developer/redis.rst75
-rw-r--r--docs/en/developer/testsuite.rst10
5 files changed, 168 insertions, 3 deletions
diff --git a/docs/en/developer/api.rst b/docs/en/developer/api.rst
index 83f0bb8f..4828cddd 100644
--- a/docs/en/developer/api.rst
+++ b/docs/en/developer/api.rst
@@ -8,7 +8,7 @@ Requirements
8 8
9* wallabag freshly (or not) installed on http://localhost:8000 9* wallabag freshly (or not) installed on http://localhost:8000
10* ``httpie`` installed on your computer (`see project website <https://github.com/jkbrzt/httpie>`__). Note that you can also adapt the commands using curl or wget. 10* ``httpie`` installed on your computer (`see project website <https://github.com/jkbrzt/httpie>`__). Note that you can also adapt the commands using curl or wget.
11* all the API methods are documented here http://localhost:8000/api/doc 11* all the API methods are documented here http://localhost:8000/api/doc (on your instance) and `on our example instance <http://v2.wallabag.org/api/doc>`_
12 12
13Creating a new API client 13Creating a new API client
14------------------------- 14-------------------------
diff --git a/docs/en/developer/maintenance.rst b/docs/en/developer/maintenance.rst
index 8277fb1f..6d55ed60 100644
--- a/docs/en/developer/maintenance.rst
+++ b/docs/en/developer/maintenance.rst
@@ -11,7 +11,7 @@ To enable maintenance mode, execute this command:
11 11
12:: 12::
13 13
14 bin/console lexik:maintenance:lock --no-interaction 14 bin/console lexik:maintenance:lock --no-interaction -e=prod
15 15
16You can set your IP address in ``app/config/config.yml`` if you want to access to wallabag even if maintenance mode is enabled. For example: 16You can set your IP address in ``app/config/config.yml`` if you want to access to wallabag even if maintenance mode is enabled. For example:
17 17
@@ -29,4 +29,4 @@ To disable maintenance mode, execute this command:
29 29
30:: 30::
31 31
32 bin/console lexik:maintenance:unlock 32 bin/console lexik:maintenance:unlock -e=prod
diff --git a/docs/en/developer/rabbitmq.rst b/docs/en/developer/rabbitmq.rst
new file mode 100644
index 00000000..673228e9
--- /dev/null
+++ b/docs/en/developer/rabbitmq.rst
@@ -0,0 +1,80 @@
1Install RabbitMQ for asynchronous tasks
2=======================================
3
4In order to launch asynchronous tasks (useful for huge imports for example), we can use RabbitMQ.
5
6Requirements
7------------
8
9You need to have RabbitMQ installed on your server.
10
11Installation
12~~~~~~~~~~~~
13
14.. code:: bash
15
16 wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
17 apt-key add rabbitmq-signing-key-public.asc
18 apt-get update
19 apt-get install rabbitmq-server
20
21Configuration and launch
22~~~~~~~~~~~~~~~~~~~~~~~~
23
24.. code:: bash
25
26 rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
27 rabbitmq-server -detached
28
29Stop RabbitMQ
30~~~~~~~~~~~~~
31
32.. code:: bash
33
34 rabbitmqctl stop
35
36
37Configure RabbitMQ in wallabag
38------------------------------
39
40Edit your ``parameters.yml`` file to edit RabbitMQ configuration. The default one should be ok:
41
42.. code:: yaml
43
44 rabbitmq_host: localhost
45 rabbitmq_port: 5672
46 rabbitmq_user: guest
47 rabbitmq_password: guest
48
49Enable RabbitMQ in wallabag
50---------------------------
51
52In internal settings, in the **Import** section, enable RabbitMQ (with the value 1).
53
54Launch RabbitMQ consumer
55------------------------
56
57Depending on which service you want to import from you need to enable one (or many if you want to support many) cron job:
58
59.. code:: bash
60
61 # for Pocket import
62 bin/console rabbitmq:consumer -e=prod import_pocket -w
63
64 # for Readability import
65 bin/console rabbitmq:consumer -e=prod import_readability -w
66
67 # for Instapaper import
68 bin/console rabbitmq:consumer -e=prod import_instapaper -w
69
70 # for wallabag v1 import
71 bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w
72
73 # for wallabag v2 import
74 bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w
75
76 # for Firefox import
77 bin/console rabbitmq:consumer -e=prod import_firefox -w
78
79 # for Chrome import
80 bin/console rabbitmq:consumer -e=prod import_chrome -w
diff --git a/docs/en/developer/redis.rst b/docs/en/developer/redis.rst
new file mode 100644
index 00000000..2e2bbbea
--- /dev/null
+++ b/docs/en/developer/redis.rst
@@ -0,0 +1,75 @@
1Install Redis for asynchronous tasks
2====================================
3
4In order to launch asynchronous tasks (useful for huge imports for example), we can use Redis.
5
6Requirements
7------------
8
9You need to have Redis installed on your server.
10
11Installation
12~~~~~~~~~~~~
13
14.. code:: bash
15
16 apt-get install redis-server
17
18Launch
19~~~~~~
20
21The server might be already running after installing, if not you can launch it using:
22
23.. code:: bash
24
25 redis-server
26
27
28Configure Redis in wallabag
29---------------------------
30
31Edit your ``parameters.yml`` file to edit Redis configuration. The default one should be ok:
32
33.. code:: yaml
34
35 redis_host: localhost
36 redis_port: 6379
37
38Enable Redis in wallabag
39------------------------
40
41In internal settings, in the **Import** section, enable Redis (with the value 1).
42
43Launch Redis consumer
44---------------------
45
46Depending on which service you want to import from you need to enable one (or many if you want to support many) cron job:
47
48.. code:: bash
49
50 # for Pocket import
51 bin/console wallabag:import:redis-worker -e=prod pocket -vv >> /path/to/wallabag/var/logs/redis-pocket.log
52
53 # for Readability import
54 bin/console wallabag:import:redis-worker -e=prod readability -vv >> /path/to/wallabag/var/logs/redis-readability.log
55
56 # for Instapaper import
57 bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-instapaper.log
58
59 # for wallabag v1 import
60 bin/console wallabag:import:redis-worker -e=prod wallabag_v1 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v1.log
61
62 # for wallabag v2 import
63 bin/console wallabag:import:redis-worker -e=prod wallabag_v2 -vv >> /path/to/wallabag/var/logs/redis-wallabag_v2.log
64
65 # for Firefox import
66 bin/console wallabag:import:redis-worker -e=prod firefox -vv >> /path/to/wallabag/var/logs/redis-firefox.log
67
68 # for Chrome import
69 bin/console wallabag:import:redis-worker -e=prod instapaper -vv >> /path/to/wallabag/var/logs/redis-chrome.log
70
71If 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 :
72
73.. code:: bash
74
75 bin/console wallabag:import:redis-worker -e=prod pocket -vv --maxIterations=12
diff --git a/docs/en/developer/testsuite.rst b/docs/en/developer/testsuite.rst
new file mode 100644
index 00000000..b2b16cdc
--- /dev/null
+++ b/docs/en/developer/testsuite.rst
@@ -0,0 +1,10 @@
1Testsuite
2=========
3
4To ensure wallabag development quality, we wrote tests with `PHPUnit <https://phpunit.de>`_.
5
6If you contribute to the project (by translating the application, by fixing bugs or by adding a new feature), please write your own tests.
7
8To launch wallabag testsuite, you need to install `ant <http://ant.apache.org>`_.
9
10Then, execute this command ``make test``.