mirror of
https://github.com/wallabag/wallabag.git
synced 2024-12-22 23:56:29 +00:00
453 lines
15 KiB
YAML
453 lines
15 KiB
YAML
imports:
|
|
- { resource: parameters.yml }
|
|
- { resource: security.yml }
|
|
- { resource: services.yml }
|
|
- { resource: wallabag.yml }
|
|
|
|
parameters:
|
|
# Allows to use the live reload feature for changes in assets
|
|
use_webpack_dev_server: false
|
|
craue_config.cache_adapter.class: Craue\ConfigBundle\CacheAdapter\SymfonyCacheComponentAdapter
|
|
env(DATABASE_URL): '%database_scheme%://%database_user%:%database_password%@%database_host%:%database_port%/%database_name%?unix_socket=%database_socket%&charset=%database_charset%'
|
|
|
|
framework:
|
|
#esi: ~
|
|
translator:
|
|
enabled: true
|
|
fallback: "%locale%"
|
|
default_path: '%kernel.project_dir%/translations'
|
|
secret: "%secret%"
|
|
router:
|
|
resource: "%kernel.project_dir%/app/config/routing.yml"
|
|
strict_requirements: ~
|
|
form: ~
|
|
csrf_protection: ~
|
|
validation:
|
|
enable_annotations: true
|
|
default_locale: "%locale%"
|
|
trusted_hosts: ~
|
|
session:
|
|
# handler_id set to null will use default session handler from php.ini
|
|
handler_id: session.handler.native_file
|
|
save_path: "%kernel.project_dir%/var/sessions/%kernel.environment%"
|
|
cookie_secure: auto
|
|
fragments: ~
|
|
http_method_override: true
|
|
assets: ~
|
|
mailer:
|
|
dsn: "%mailer_dsn%"
|
|
http_client:
|
|
scoped_clients:
|
|
download_images.client:
|
|
scope: '.*'
|
|
pocket.client:
|
|
scope: '.*'
|
|
headers:
|
|
Content-Type: 'application/json'
|
|
X-Accept: 'application/json'
|
|
|
|
# Twig Configuration
|
|
twig:
|
|
default_path: '%kernel.project_dir%/templates'
|
|
debug: "%kernel.debug%"
|
|
strict_variables: "%kernel.debug%"
|
|
form_themes:
|
|
- "@SpiriitFormFilter/Form/form_div_layout.html.twig"
|
|
globals:
|
|
registration_enabled: '%fosuser_registration%'
|
|
|
|
# Doctrine Configuration
|
|
doctrine:
|
|
dbal:
|
|
url: '%env(resolve:DATABASE_URL)%'
|
|
types:
|
|
json_array: Wallabag\Doctrine\JsonArrayType
|
|
|
|
orm:
|
|
auto_generate_proxy_classes: "%kernel.debug%"
|
|
entity_managers:
|
|
default:
|
|
auto_mapping: true
|
|
mappings:
|
|
Wallabag:
|
|
type: annotation
|
|
is_bundle: false
|
|
dir: '%kernel.project_dir%/src/Entity'
|
|
prefix: 'Wallabag\Entity'
|
|
alias: Wallabag
|
|
|
|
stof_doctrine_extensions:
|
|
default_locale: "%locale%"
|
|
translation_fallback: true
|
|
orm:
|
|
default:
|
|
tree: true
|
|
sluggable: true
|
|
|
|
doctrine_migrations:
|
|
migrations_paths:
|
|
'Application\Migrations': '%kernel.project_dir%/migrations'
|
|
storage:
|
|
table_storage:
|
|
table_name: 'migration_versions'
|
|
version_column_name: 'version'
|
|
version_column_length: 192
|
|
executed_at_column_name: 'executed_at'
|
|
|
|
fos_rest:
|
|
param_fetcher_listener: true
|
|
body_listener: true
|
|
view:
|
|
mime_types:
|
|
csv:
|
|
- 'text/csv'
|
|
- 'text/plain'
|
|
pdf:
|
|
- 'application/pdf'
|
|
epub:
|
|
- 'application/epub+zip'
|
|
view_response_listener: 'force'
|
|
formats:
|
|
xml: true
|
|
json: true
|
|
txt: true
|
|
csv: true
|
|
pdf: true
|
|
epub: true
|
|
failed_validation: HTTP_BAD_REQUEST
|
|
routing_loader: false
|
|
format_listener:
|
|
enabled: true
|
|
rules:
|
|
- { path: "^/api/entries/([0-9]+)/export.(.*)", priorities: ['epub', 'pdf', 'txt', 'csv'], fallback_format: json, prefer_extension: false }
|
|
- { path: "^/api", priorities: ['json', 'xml'], fallback_format: json, prefer_extension: false }
|
|
- { path: "^/annotations", priorities: ['json', 'xml'], fallback_format: json, prefer_extension: false }
|
|
# for an unknown reason, EACH REQUEST goes to FOS\RestBundle\EventListener\FormatListener
|
|
# so we need to add custom rule for custom api export but also for all other routes of the application...
|
|
- { path: '^/', priorities: ['text/html', '*/*'], fallback_format: html, prefer_extension: false }
|
|
exception:
|
|
messages:
|
|
Symfony\Component\HttpKernel\Exception\BadRequestHttpException: true
|
|
|
|
nelmio_api_doc:
|
|
areas:
|
|
default:
|
|
disable_default_routes: true
|
|
documentation:
|
|
info:
|
|
title: wallabag API documentation
|
|
description: This is the API documentation of wallabag
|
|
version: 2.x
|
|
components:
|
|
securitySchemes:
|
|
Bearer:
|
|
type: apiKey
|
|
description: 'Value: Bearer {jwt}'
|
|
name: Authorization
|
|
in: header
|
|
security:
|
|
- Bearer: []
|
|
|
|
nelmio_cors:
|
|
defaults:
|
|
allow_credentials: false
|
|
allow_origin: []
|
|
allow_headers: []
|
|
allow_methods: []
|
|
expose_headers: []
|
|
max_age: 0
|
|
hosts: []
|
|
#origin_regex: false
|
|
paths:
|
|
'^/api/':
|
|
allow_origin: ['*']
|
|
allow_headers: ['Authorization','content-type']
|
|
allow_methods: ['POST', 'PUT', 'PATCH','GET', 'DELETE']
|
|
max_age: 3600
|
|
'^/oauth/':
|
|
allow_origin: ['*']
|
|
allow_headers: ['Authorization','content-type']
|
|
allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
|
|
max_age: 3600
|
|
'^/':
|
|
#origin_regex: true
|
|
allow_origin: ['*']
|
|
allow_headers: ['Authorization','content-type']
|
|
allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
|
|
max_age: 3600
|
|
hosts: ['^api\.']
|
|
|
|
fos_user:
|
|
db_driver: orm
|
|
firewall_name: secured_area
|
|
user_class: Wallabag\Entity\User
|
|
registration:
|
|
confirmation:
|
|
enabled: "%fosuser_confirmation%"
|
|
from_email:
|
|
address: "%from_email%"
|
|
sender_name: wallabag
|
|
service:
|
|
mailer: Wallabag\Mailer\UserMailer
|
|
|
|
fos_oauth_server:
|
|
db_driver: orm
|
|
client_class: Wallabag\Entity\Api\Client
|
|
access_token_class: Wallabag\Entity\Api\AccessToken
|
|
refresh_token_class: Wallabag\Entity\Api\RefreshToken
|
|
auth_code_class: Wallabag\Entity\Api\AuthCode
|
|
service:
|
|
user_provider: fos_user.user_provider.username_email
|
|
options:
|
|
refresh_token_lifetime: "%fos_oauth_server_refresh_token_lifetime%"
|
|
access_token_lifetime: "%fos_oauth_server_access_token_lifetime%"
|
|
|
|
scheb_two_factor:
|
|
trusted_device:
|
|
enabled: true
|
|
cookie_name: wllbg_trusted_computer
|
|
lifetime: 2592000
|
|
|
|
backup_codes:
|
|
enabled: true
|
|
|
|
google:
|
|
enabled: true
|
|
issuer: "%server_name%"
|
|
template: "Authentication/form.html.twig"
|
|
|
|
email:
|
|
enabled: true
|
|
sender_email: "%twofactor_sender%"
|
|
digits: 6
|
|
template: "Authentication/form.html.twig"
|
|
mailer: Wallabag\Mailer\AuthCodeMailer
|
|
|
|
rulerz:
|
|
targets:
|
|
doctrine: true
|
|
|
|
old_sound_rabbit_mq:
|
|
connections:
|
|
default:
|
|
host: "%rabbitmq_host%"
|
|
port: "%rabbitmq_port%"
|
|
user: "%rabbitmq_user%"
|
|
password: "%rabbitmq_password%"
|
|
vhost: /
|
|
lazy: true
|
|
producers:
|
|
import_pocket:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.pocket'
|
|
type: topic
|
|
import_readability:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.readability'
|
|
type: topic
|
|
import_pinboard:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.pinboard'
|
|
type: topic
|
|
import_delicious:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.delicious'
|
|
type: topic
|
|
import_instapaper:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.instapaper'
|
|
type: topic
|
|
import_wallabag_v1:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.wallabag_v1'
|
|
type: topic
|
|
import_wallabag_v2:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.wallabag_v2'
|
|
type: topic
|
|
import_elcurator:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.elcurator'
|
|
type: topic
|
|
import_firefox:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.firefox'
|
|
type: topic
|
|
import_chrome:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.chrome'
|
|
type: topic
|
|
import_shaarli:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.shaarli'
|
|
type: topic
|
|
import_pocket_html:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.pocket_html'
|
|
type: topic
|
|
consumers:
|
|
import_pocket:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.pocket'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.pocket'
|
|
callback: wallabag.consumer.amqp.pocket
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_readability:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.readability'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.readability'
|
|
callback: wallabag.consumer.amqp.readability
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_instapaper:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.instapaper'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.instapaper'
|
|
callback: wallabag.consumer.amqp.instapaper
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_pinboard:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.pinboard'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.pinboard'
|
|
callback: wallabag.consumer.amqp.pinboard
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_delicious:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.delicious'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.delicious'
|
|
callback: wallabag.consumer.amqp.delicious
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_wallabag_v1:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.wallabag_v1'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.wallabag_v1'
|
|
callback: wallabag.consumer.amqp.wallabag_v1
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_wallabag_v2:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.wallabag_v2'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.wallabag_v2'
|
|
callback: wallabag.consumer.amqp.wallabag_v2
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_elcurator:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.elcurator'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.elcurator'
|
|
callback: wallabag.consumer.amqp.elcurator
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_firefox:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.firefox'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.firefox'
|
|
callback: wallabag.consumer.amqp.firefox
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_chrome:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.chrome'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.chrome'
|
|
callback: wallabag.consumer.amqp.chrome
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_shaarli:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.shaarli'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.shaarli'
|
|
callback: wallabag.consumer.amqp.shaarli
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
import_pocket_html:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.pocket_html'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.pocket_html'
|
|
callback: wallabag.consumer.amqp.pocket_html
|
|
qos_options: {prefetch_count: "%rabbitmq_prefetch_count%"}
|
|
|
|
fos_js_routing:
|
|
routes_to_expose:
|
|
- homepage
|
|
- starred
|
|
- archive
|
|
- all
|
|
- tag
|
|
- config
|
|
- import
|
|
- developer
|
|
- howto
|
|
- fos_user_security_logout
|
|
- new
|
|
|
|
jms_serializer:
|
|
handlers:
|
|
# to be removed if we switch to (default) ISO8601 datetime instead of ATOM
|
|
# see: https://github.com/schmittjoh/JMSSerializerBundle/pull/494
|
|
datetime:
|
|
default_format: "Y-m-d\\TH:i:sO" # ATOM
|
|
|
|
# see https://github.com/symfony/symfony-standard/pull/1133
|
|
sensio_framework_extra:
|
|
router:
|
|
annotations: false
|
|
|
|
httplug:
|
|
clients:
|
|
wallabag:
|
|
factory: Wallabag\Helper\HttpClientFactory
|
|
config:
|
|
defaults:
|
|
timeout: 10
|
|
plugins: ['httplug.plugin.logger']
|
|
discovery:
|
|
client: false
|
|
|
|
# define custom entity so we can override length attribute to fix utf8mb4 issue
|
|
craue_config:
|
|
entity_name: Wallabag\Entity\InternalSetting
|
|
|
|
when@dev:
|
|
maker:
|
|
root_namespace: 'Wallabag'
|