1
0
mirror of https://github.com/wallabag/docker synced 2025-12-13 09:46:27 +00:00

35 Commits
2.0.7 ... 2.1.3

Author SHA1 Message Date
Marvin Steadfast
f7bd58c73a fixed location of php configuration to /etc/php7 2016-11-07 13:20:39 +01:00
Marvin Steadfast
ba8f6ec5d3 limit upload size to 100M 2016-11-07 13:20:39 +01:00
xsteadfastx
68db53e09c Merge pull request #28 from wallabag/release-213
Update Dockerfile for wallabag 2.1.3
2016-11-05 15:13:27 +01:00
Nicolas Lœuillet
530e59329a Update Dockerfile for wallabag 2.1.3 2016-11-04 15:40:24 +01:00
Marvin Steadfast
2ae7dee8af fixed typo in README 2016-11-02 11:57:04 +01:00
Marvin Steadfast
c2052c2681 env variable to disable user registration 2016-11-02 11:52:22 +01:00
xsteadfastx
310d55bdea Merge pull request #27 from xsteadfastx/master
set email settings through ansible template
2016-10-31 09:29:08 +01:00
Marvin Steadfast
76f5ecb61e set email settings through ansible template 2016-10-28 13:06:52 +02:00
Marvin Steadfast
92f5db7ba9 added test for default configuration 2016-10-24 09:53:42 +02:00
Marvin Steadfast
ee4a7e4a46 defaults for environment variable lookup for parameters.yml template
fixes #26
2016-10-21 14:48:32 +02:00
xsteadfastx
e0bc4e895d Merge pull request #25 from xsteadfastx/master
version 2.1.2 and some cleanups
2016-10-19 11:30:00 +02:00
Marvin Steadfast
ed6b4437b8 version 2.1.2 and some cleanups 2016-10-19 11:17:24 +02:00
Marvin Steadfast
af2fb30389 fixed docs to get redis working
thanks to @bobberb for pointing in the right direction.
2016-10-13 11:18:24 +02:00
xsteadfastx
af6c68a312 Merge pull request #21 from xsteadfastx/master
2.1.1 image
2016-10-12 15:26:12 +02:00
Marvin Steadfast
1f4d9af316 added db migration part to the docs 2016-10-11 16:18:52 +02:00
Marvin Steadfast
6a5ab7c126 added new dependencies and added redis support
somehow there is a problem with the parameters.yml and environment
variables. ansible templates are now used.

database migration is still a big problem.
2016-10-11 16:18:52 +02:00
Nicolas Lœuillet
f66d2aeab0 Merge pull request #20 from tomsquest/patch-1
Fix typo `the a volume` -> `a volume`
2016-10-11 12:16:32 +02:00
Thomas Queste
0d2bf2999a Fix typo the a volume -> a volume 2016-10-11 12:08:50 +02:00
Jeremy Benoist
8bd298316a Merge pull request #18 from m0/m0-fixRunCommandInExample
fixes example run-commands in README
2016-09-17 07:53:59 +02:00
Moritz Maisel
d9f9efcf13 fixes example run-commands in README 2016-09-17 01:04:01 +02:00
Nicolas Lœuillet
cccc5fb91e Merge pull request #17 from wallabag/wllbg-208
wallabag 2.0.8
2016-09-07 15:36:33 +02:00
Nicolas Lœuillet
79ae48bfac wallabag 2.0.8 2016-09-07 14:38:00 +02:00
xsteadfastx
d0691598b6 Merge pull request #16 from xsteadfastx/master
Login testing works now
2016-09-02 10:24:10 +02:00
Marvin Steadfast
28b4b03b21 readme: added badges 2016-09-01 12:04:11 +02:00
Marvin Steadfast
c65be008ec tests: some pep8 and real failing if csrf dont match 2016-09-01 09:33:17 +02:00
xsteadfastx
63ee463365 Merge pull request #1 from Strubbl/test_login
test_login: add login with csrf token and check if it was successful
2016-09-01 09:15:18 +02:00
Sven Fischer
efbcf75701 test_login: add login with csrf token and check if it was successful 2016-08-31 23:13:32 +02:00
Marvin Steadfast
b4b1469215 try to test login
i use requests to test login. the session should be saved and this
should work. but i get a error that th session expired. to run this
start wallabag and run it with pytest: `py.test -s tests/`. it will
output the html of the response.
2016-08-31 16:38:13 +02:00
Marvin Steadfast
4a81bc45db added travis testing
travis builds and spins up containers for sqlite, mariadb and postgres
and runs a simple python test script for accessing the wallabag.
2016-08-29 13:51:14 +02:00
Jeremy Benoist
107beb115c Merge pull request #14 from mmounirou/feature/allow-db-root-user-config
allow overwrite of the root postgres username
2016-08-25 11:02:11 +02:00
Mohamed MOUNIROU
67030c1c36 remove an unnecessary white space 2016-08-25 10:23:31 +02:00
Mohamed MOUNIROU
255fe53dfc set the default value for POSTGRES_USER to postgres
This is done in order to ensure backward compatibility
2016-08-24 18:28:34 +02:00
Mohamed MOUNIROU
4094d3c9ff give the ability to change postgres root user
This can be acheived by setting the environment variable POSTGRES_USER
2016-08-24 18:25:03 +02:00
Jeremy Benoist
93651c95f5 Fix bad SQLite title
and update few others titles
2016-08-24 15:17:36 +02:00
Marvin Steadfast
97783ac312 fixed README 2016-08-24 12:33:22 +02:00
15 changed files with 291 additions and 49 deletions

3
.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
.cache
__pycache__/*
*.pyc

26
.travis.yml Normal file
View File

@@ -0,0 +1,26 @@
language: python
python:
- 3.5
services:
- docker
env:
- DB_TYPE=default
- DB_TYPE=sqlite
- DB_TYPE=mariadb
- DB_TYPE=postgresql
install:
- docker-compose -f tests/docker-compose.$DB_TYPE.yml build
- docker-compose -f tests/docker-compose.$DB_TYPE.yml up -d
before_script:
- pip install pytest
- pip install requests
script:
- docker ps | grep -q wallabag
- sleep 60
- py.test tests/

View File

@@ -1,19 +1,8 @@
FROM alpine:edge
MAINTAINER Marvin Steadfast <marvin@xsteadfastx.org>
ENV WALLABAG_VERSION=2.0.7 \
SYMFONY__ENV__DATABASE_DRIVER=pdo_sqlite \
SYMFONY__ENV__DATABASE_HOST=127.0.0.1 \
SYMFONY__ENV__DATABASE_PORT=~ \
SYMFONY__ENV__DATABASE_NAME=symfony \
SYMFONY__ENV__DATABASE_USER=root \
SYMFONY__ENV__DATABASE_PASSWORD=~ \
SYMFONY__ENV__SECRET=ovmpmAWXRCabNlMgzlzFXDYmCFfzGv \
SYMFONY__ENV__MAILER_HOST=127.0.0.1 \
SYMFONY__ENV__MAILER_USER=~ \
SYMFONY__ENV__MAILER_PASSWORD=~ \
SYMFONY__ENV__FROM_EMAIL=wallabag@example.com
ENV WALLABAG_VERSION=2.1.3 \
POSTGRES_USER=postgres
RUN echo "@testing http://dl-4.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories \
&& apk add --update \
@@ -25,6 +14,8 @@ RUN echo "@testing http://dl-4.alpinelinux.org/alpine/edge/testing" >> /etc/apk/
nginx \
pcre \
php7 \
php7-amqp@testing \
php7-bcmath \
php7-ctype@testing \
php7-curl@testing \
php7-dom@testing \
@@ -46,6 +37,7 @@ RUN echo "@testing http://dl-4.alpinelinux.org/alpine/edge/testing" >> /etc/apk/
py-psycopg2 \
py-simplejson \
s6 \
tar \
&& rm -rf /var/cache/apk/*
RUN ln -s /usr/bin/php7 /usr/bin/php \

View File

@@ -1,5 +1,9 @@
# What is wallabag?
[![Build Status](https://travis-ci.org/wallabag/docker.svg?branch=master)](https://travis-ci.org/wallabag/docker)
[![Docker Stars](https://img.shields.io/docker/stars/wallabag/wallabag.svg?maxAge=2592000)](https://hub.docker.com/r/wallabag/wallabag/)
[![Docker Pulls](https://img.shields.io/docker/pulls/wallabag/wallabag.svg?maxAge=2592000)](https://hub.docker.com/r/wallabag/wallabag/)
[wallabag](https://www.wallabag.org/) is a self hostable application for saving web pages. Unlike other services, wallabag is free (as in freedom) and open source.
With this application you will not miss content anymore. Click, save, read it when you want. It saves the content you select so that you can read it when you have time.
@@ -12,6 +16,7 @@ Default login is `wallabag:wallabag`.
- `-e MYSQL_ROOT_PASSWORD=...` (needed for the mariadb container to initialise and for the entrypoint in the wallabag container to create a database and user if its not there)
- `-e POSTGRES_PASSWORD=...` (needed for the posgres container to initialise and for the entrypoint in the wallabag container to create a database and user if not there)
- `-e POSTGRES_USER=...` (needed for the posgres container to initialise and for the entrypoint in the wallabag container to create a database and user if not there)
- `-e SYMFONY__ENV__DATABASE_DRIVER=...` (defaults to "pdo_sqlite", this sets the database driver to use)
- `-e SYMFONY__ENV__DATABASE_HOST=...` (defaults to "127.0.0.1", if use mysql this should be the name of the mariadb container)
- `-e SYMFONY__ENV__DATABASE_PORT=...` (port of the database host)
@@ -23,36 +28,55 @@ Default login is `wallabag:wallabag`.
- `-e SYMFONY__ENV__MAILER_USER=...` (defaults to "~", the SMTP user)
- `-e SYMFONY__ENV__MAILER_PASSWORD=...`(defaults to "~", the SMTP password)
- `-e SYMFONY__ENV__FROM_EMAIL=...`(defaults to "wallabag@example.com", the address wallabag uses for outgoing emails)
## sqlite
- `-e SYMFONY__ENV__FOSUSER_REGISTRATION=...`(defaults to "true", enable or disable public user registration)
The easiest way to start wallabag is to use the sqlite backend. You can spin that up with
## SQLite
The easiest way to start wallabag is to use the SQLite backend. You can spin that up with
```
$ docker run -p 80:80 xsteadfastx/wallabag
$ docker run -p 80:80 wallabag/wallabag
```
and point your browser to `http://localhost:80`. For persistent storage you should start the container with the a volume:
and point your browser to `http://localhost:80`. For persistent storage you should start the container with a volume:
```
$ docker run -v /opt/wallabag:/var/www/wallabag/data -p 80:80 xsteadfastx/wallabag
$ docker run -v /opt/wallabag:/var/www/wallabag/data -p 80:80 wallabag/wallabag
```
## mariadb / mysql
## MariaDB / MySQL
For using mariadb or mysql you have to define some environment variables with the container. Example:
For using MariaDB or MySQL you have to define some environment variables with the container. Example:
```
$ docker run docker run --name wallabag-db -e "MYSQL_ROOT_PASSWORD=my-secret-pw" -d mariadb
$ docker run --name wallabag-db -e "MYSQL_ROOT_PASSWORD=my-secret-pw" -d mariadb
$ docker run --name wallabag --link wallabag-db:wallabag-db -e "MYSQL_ROOT_PASSWORD=my-secret-pw" -e "SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql" -e "SYMFONY__ENV__DATABASE_HOST=wallabag-db" -e "SYMFONY__ENV__DATABASE_PORT=3306" -e "SYMFONY__ENV__DATABASE_NAME=wallabag" -e "SYMFONY__ENV__DATABASE_USER=wallabag" -e "SYMFONY__ENV__DATABASE_PASSWORD=wallapass" -p 80:80 wallabag/wallabag
```
## postgresql
## PostgreSQL
For using postgresql you have to define some environment variables with the container. Example:
For using PostgreSQL you have to define some environment variables with the container. Example:
```
$ docker run docker run --name wallabag-db -e "POSTGRES_PASSWORD=my-secret-pw" -d postgres
$ docker run --name wallabag --link wallabag-db:wallabag-db -e "POSTGRES_PASSWORD=my-secret-pw" -e "SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql" -e "SYMFONY__ENV__DATABASE_HOST=wallabag-db" -e "SYMFONY__ENV__DATABASE_PORT=5432" -e "SYMFONY__ENV__DATABASE_NAME=wallabag" -e "SYMFONY__ENV__DATABASE_USER=wallabag" -e "SYMFONY__ENV__DATABASE_PASSWORD=wallapass" -p 80:80 wallabag/wallabag
$ docker run --name wallabag-db -e "POSTGRES_PASSWORD=my-secret-pw" -e "POSTGRES_USER=my-super-user" -d postgres
$ docker run --name wallabag --link wallabag-db:wallabag-db -e "POSTGRES_PASSWORD=my-secret-pw" -e "POSTGRES_USER=my-super-user" -e "SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql" -e "SYMFONY__ENV__DATABASE_HOST=wallabag-db" -e "SYMFONY__ENV__DATABASE_PORT=5432" -e "SYMFONY__ENV__DATABASE_NAME=wallabag" -e "SYMFONY__ENV__DATABASE_USER=wallabag" -e "SYMFONY__ENV__DATABASE_PASSWORD=wallapass" -p 80:80 wallabag/wallabag
```
## Redis
To use redis support a linked redis container with the name `redis` is needed.
```
$ docker run -p 6379:6379 --name redis redis:alpine
$ docker run -p 80:80 --link redis:redis wallabag/wallabag
```
## DB migration
If there is a version upgrade that needs a database migration, you should start the container with the new image and run the migration command.
```
$ docker exec -t wallabag /var/www/wallabag/bin/console doctrine:migrations:migrate --env=prod --no-interaction
```
## docker-compose
@@ -84,7 +108,10 @@ services:
- MYSQL_ROOT_PASSWORD=wallaroot
volumes:
- /opt/wallabag:/var/lib/mysql
redis:
image: redis:alpine
```
Note that you must fill out the mail related variables according to your mail config.
## nginx

View File

@@ -4,14 +4,21 @@
vars:
database_driver: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_DRIVER') }}"
database_host: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_HOST') }}"
database_name: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_NAME') }}"
database_password: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_PASSWORD') }}"
database_port: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_PORT') }}"
database_driver: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_DRIVER')|default('pdo_sqlite', true) }}"
database_host: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_HOST')|default('127.0.0.1', true) }}"
database_name: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_NAME')|default('symfony', true) }}"
database_password: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_PASSWORD')|default('~', true) }}"
database_port: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_PORT')|default('~', true) }}"
database_root_password_mariadb: "{{ lookup('env', 'MYSQL_ROOT_PASSWORD') }}"
database_root_user_postgres: "{{ lookup('env', 'POSTGRES_USER') }}"
database_root_password_postgres: "{{ lookup('env', 'POSTGRES_PASSWORD') }}"
database_user: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_USER') }}"
database_user: "{{ lookup('env', 'SYMFONY__ENV__DATABASE_USER')|default('root', true) }}"
secret: "{{ lookup('env', 'SYMFONY__ENV__SECRET')|default('ovmpmAWXRCabNlMgzlzFXDYmCFfzGv', true) }}"
mailer_host: "{{ lookup('env', 'SYMFONY__ENV__MAILER_HOST')|default('127.0.0.1', true) }}"
mailer_user: "{{ lookup('env', 'SYMFONY__ENV__MAILER_USER')|default('~', true) }}"
mailer_password: "{{ lookup('env', 'SYMFONY__ENV__MAILER_PASSWORD')|default('~', true) }}"
from_email: "{{ lookup('env', 'SYMFONY__ENV__FROM_EMAIL')|default('wallabag@example.com', true) }}"
registration: "{{ lookup('env', 'SYMFONY__ENV__FOSUSER_REGISTRATION')|default('true', true) }}"
tasks:
@@ -20,10 +27,18 @@
path={{ item }}
state=directory
with_items:
- /var/www/wallabag/data/db
- /var/www/wallabag/app
- /var/www/wallabag/app/config
- /var/www/wallabag/data
- /var/www/wallabag/data/assets
- /var/www/wallabag/data/db
notify: chown dir
- name: write parameters.yml
template:
src=templates/parameters.yml.j2
dest=/var/www/wallabag/app/config/parameters.yml
- stat:
path=/var/www/wallabag/data/db/wallabag.sqlite
register: wallabag_sqlite_db
@@ -75,7 +90,7 @@
state=present
login_host="{{ database_host }}"
port={{ database_port }}
login_user=postgres
login_user="{{ database_root_user_postgres }}"
login_password="{{ database_root_password_postgres }}"
notify: run install
when: database_driver == 'pdo_pgsql'
@@ -88,7 +103,7 @@
priv=ALL
login_host="{{ database_host }}"
port={{ database_port }}
login_user=postgres
login_user="{{ database_root_user_postgres }}"
login_password="{{ database_root_password_postgres }}"
state=present
when: (database_driver == 'pdo_pgsql') and

View File

@@ -0,0 +1,44 @@
parameters:
database_driver: {{ database_driver }}
database_host: {{ database_host }}
database_port: {{ database_port }}
database_name: {{ database_name }}
database_user: {{ database_user }}
database_password: {{ database_password }}
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite"
database_table_prefix: wallabag_
database_socket: null
mailer_transport: smtp
mailer_host: {{ mailer_host }}
mailer_user: {{ mailer_user }}
mailer_password: {{ mailer_password }}
locale: en
# A secret key that's used to generate certain security-related tokens
secret: {{ secret }}
# two factor stuff
twofactor_auth: true
twofactor_sender: no-reply@wallabag.org
# fosuser stuff
fosuser_registration: {{ registration }}
fosuser_confirmation: true
from_email: {{ from_email }}
rss_limit: 50
# RabbitMQ processing
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
# Redis processing
redis_scheme: tcp
redis_host: redis
redis_port: 6379
redis_path: null

View File

@@ -23,7 +23,7 @@ http {
gzip on;
gzip_disable "msie6";
open_file_cache max=100;
client_max_body_size 50M;
client_max_body_size 100M;
upstream php-upstream {

View File

@@ -670,7 +670,7 @@ auto_globals_jit = On
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; http://php.net/post-max-size
post_max_size = 20G
post_max_size = 100M
; Automatically add files before PHP document.
; http://php.net/auto-prepend-file
@@ -802,7 +802,7 @@ upload_tmp_dir = /tmp/
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 20G
upload_max_filesize = 100M
; Maximum number of files that can be uploaded via a single request
max_file_uploads = 20

View File

@@ -1,12 +1,13 @@
parameters:
database_driver: %env.database_driver%
database_host: %env.database_host%
database_port: %env.database_port%
database_name: %env.database_name%
database_user: %env.database_user%
database_password: %env.database_password%
database_driver: pdo_sqlite
database_host: 127.0.0.1
database_port: ~
database_name: symfony
database_user: root
database_password: ~
database_path: "%kernel.root_dir%/../data/db/wallabag.sqlite"
database_table_prefix: wallabag_
database_socket: null
test_database_driver: pdo_sqlite
test_database_host: 127.0.0.1
@@ -17,20 +18,35 @@ parameters:
test_database_path: "%kernel.root_dir%/../data/db/wallabag_test.sqlite"
mailer_transport: smtp
mailer_host: %env.mailer_host%
mailer_user: %env.mailer_user%
mailer_password: %env.mailer_password%
mailer_host: 127.0.0.1
mailer_user: ~
mailer_password: ~
locale: en
# A secret key that's used to generate certain security-related tokens
secret: %env.secret%
secret: ovmpmAWXRCabNlMgzlzFXDYmCFfzGv
# two factor stuff
twofactor_auth: true
twofactor_sender: %env.from_email%
twofactor_sender: no-reply@wallabag.org
# fosuser stuff
fosuser_registration: true
fosuser_confirmation: true
from_email: %env.from_email%
from_email: no-reply@wallabag.org
rss_limit: 50
# RabbitMQ processing
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
# Redis processing
redis_scheme: tcp
redis_host: localhost
redis_port: 6379
redis_path: null

View File

@@ -0,0 +1,9 @@
version: '2'
services:
wallabag:
build:
context: ../
image: wallabag:default
container_name: wallabag
ports:
- "127.0.0.1:80:80"

View File

@@ -0,0 +1,22 @@
version: '2'
services:
wallabag:
build:
context: ../
image: wallabag:mariadb
container_name: wallabag
environment:
- MYSQL_ROOT_PASSWORD=wallaroot
- SYMFONY__ENV__SECRET=F00B4R
- SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql
- SYMFONY__ENV__DATABASE_HOST=db
- SYMFONY__ENV__DATABASE_PORT=3306
- SYMFONY__ENV__DATABASE_NAME=wallabag
- SYMFONY__ENV__DATABASE_USER=wallabag
- SYMFONY__ENV__DATABASE_PASSWORD=wallapass
ports:
- "127.0.0.1:80:80"
db:
image: mariadb
environment:
- MYSQL_ROOT_PASSWORD=wallaroot

View File

@@ -0,0 +1,24 @@
version: '2'
services:
wallabag:
build:
context: ../
image: wallabag:postgresql
container_name: wallabag
environment:
- POSTGRES_PASSWORD=my-secret-pw
- POSTGRES_USER=my-super-user
- SYMFONY__ENV__SECRET=F00B4R
- SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql
- SYMFONY__ENV__DATABASE_HOST=db
- SYMFONY__ENV__DATABASE_PORT=5432
- SYMFONY__ENV__DATABASE_NAME=wallabag
- SYMFONY__ENV__DATABASE_USER=wallabag
- SYMFONY__ENV__DATABASE_PASSWORD=wallapass
ports:
- "127.0.0.1:80:80"
db:
image: postgres
environment:
- POSTGRES_PASSWORD=my-secret-pw
- POSTGRES_USER=my-super-user

View File

@@ -0,0 +1,17 @@
version: '2'
services:
wallabag:
build:
context: ../
image: wallabag:sqlite
container_name: wallabag
environment:
- SYMFONY__ENV__DATABASE_DRIVER=pdo_sqlite
- SYMFONY__ENV__DATABASE_HOST=127.0.0.1
- SYMFONY__ENV__DATABASE_PORT=~
- SYMFONY__ENV__DATABASE_NAME=symfony
- SYMFONY__ENV__DATABASE_USER=root
- SYMFONY__ENV_DATABASE_PASSWORD=~
- SYMFONY__ENV__SECRET=F00B4R
ports:
- "127.0.0.1:80:80"

47
tests/test_login.py Normal file
View File

@@ -0,0 +1,47 @@
import pytest
import re
import requests
URL = 'http://127.0.0.1:80'
def test_accessing_login_page():
r = requests.get(URL, allow_redirects=True)
assert r.status_code == 200
assert 'Login' in r.text
assert 'Password' in r.text
assert 'Register' in r.text
assert 'Username' in r.text
def test_logging_in():
client = requests.session()
r = client.get(URL, allow_redirects=True)
jar = r.cookies
# get csrf token
csrf_match = re.search(
'<input type="hidden" name="_csrf_token" value="(.*)" />',
r.text
)
if csrf_match:
csrf = csrf_match.group(1)
else:
# if there is no csrf token the test will fail
pytest.fail('csrf not matched')
data = {
'_username': 'wallabag',
'_password': 'wallabag',
'_csrf_token': csrf
}
r = client.post(URL + '/login_check', cookies=jar, data=data)
assert r.status_code == 200
assert '/unread/list' in r.text
assert '/starred/list' in r.text
assert '/archive/list' in r.text
assert '/all/list' in r.text