mirror of
https://github.com/wallabag/wallabag.git
synced 2024-12-12 10:46:29 +00:00
7625e36b5a
Update annotations to OpenApi 3
424 lines
14 KiB
YAML
424 lines
14 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
|
|
|
|
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
|
|
templating:
|
|
engines: ['twig']
|
|
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%"
|
|
fragments: ~
|
|
http_method_override: true
|
|
assets: ~
|
|
mailer:
|
|
dsn: "%mailer_dsn%"
|
|
|
|
# Twig Configuration
|
|
twig:
|
|
debug: "%kernel.debug%"
|
|
strict_variables: "%kernel.debug%"
|
|
form_themes:
|
|
- "@LexikFormFilter/Form/form_div_layout.html.twig"
|
|
exception_controller: Wallabag\CoreBundle\Controller\ExceptionController:showAction
|
|
globals:
|
|
registration_enabled: '%fosuser_registration%'
|
|
|
|
# Doctrine Configuration
|
|
doctrine:
|
|
dbal:
|
|
driver: "%database_driver%"
|
|
host: "%database_host%"
|
|
port: "%database_port%"
|
|
dbname: "%database_name%"
|
|
user: "%database_user%"
|
|
password: "%database_password%"
|
|
charset: "%database_charset%"
|
|
path: "%database_path%"
|
|
unix_socket: "%database_socket%"
|
|
types:
|
|
json_array: Wallabag\CoreBundle\Doctrine\JsonArrayType
|
|
|
|
orm:
|
|
auto_generate_proxy_classes: "%kernel.debug%"
|
|
entity_managers:
|
|
default:
|
|
auto_mapping: true
|
|
|
|
stof_doctrine_extensions:
|
|
default_locale: "%locale%"
|
|
translation_fallback: true
|
|
orm:
|
|
default:
|
|
tree: true
|
|
sluggable: true
|
|
|
|
doctrine_migrations:
|
|
migrations_paths:
|
|
'Application\Migrations': "%kernel.project_dir%/app/DoctrineMigrations"
|
|
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'
|
|
mobi:
|
|
- 'application/x-mobipocket-ebook'
|
|
view_response_listener: 'force'
|
|
formats:
|
|
xml: true
|
|
json: true
|
|
txt: true
|
|
csv: true
|
|
pdf: true
|
|
epub: true
|
|
mobi: true
|
|
failed_validation: HTTP_BAD_REQUEST
|
|
routing_loader: false
|
|
format_listener:
|
|
enabled: true
|
|
rules:
|
|
- { path: "^/api/entries/([0-9]+)/export.(.*)", priorities: ['epub', 'mobi', '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 }
|
|
|
|
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\UserBundle\Entity\User
|
|
registration:
|
|
confirmation:
|
|
enabled: "%fosuser_confirmation%"
|
|
from_email:
|
|
address: "%from_email%"
|
|
sender_name: wallabag
|
|
service:
|
|
mailer: Wallabag\UserBundle\Mailer\UserMailer
|
|
|
|
fos_oauth_server:
|
|
db_driver: orm
|
|
client_class: Wallabag\ApiBundle\Entity\Client
|
|
access_token_class: Wallabag\ApiBundle\Entity\AccessToken
|
|
refresh_token_class: Wallabag\ApiBundle\Entity\RefreshToken
|
|
auth_code_class: Wallabag\ApiBundle\Entity\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: "%twofactor_auth%"
|
|
|
|
google:
|
|
enabled: "%twofactor_auth%"
|
|
issuer: "%server_name%"
|
|
template: "@WallabagUser/Authentication/form.html.twig"
|
|
|
|
email:
|
|
enabled: "%twofactor_auth%"
|
|
sender_email: "%twofactor_sender%"
|
|
digits: 6
|
|
template: "@WallabagUser/Authentication/form.html.twig"
|
|
mailer: Wallabag\UserBundle\Mailer\AuthCodeMailer
|
|
|
|
kphoen_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
|
|
consumers:
|
|
import_pocket:
|
|
connection: default
|
|
exchange_options:
|
|
name: 'wallabag.import.pocket'
|
|
type: topic
|
|
queue_options:
|
|
name: 'wallabag.import.pocket'
|
|
callback: wallabag_import.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_import.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_import.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_import.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_import.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_import.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_import.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_import.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_import.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_import.consumer.amqp.chrome
|
|
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_core:
|
|
factory: Wallabag\CoreBundle\Helper\HttpClientFactory
|
|
config:
|
|
defaults:
|
|
timeout: 10
|
|
plugins: ['httplug.plugin.logger']
|
|
wallabag_core.entry.download_images:
|
|
factory: 'httplug.factory.auto'
|
|
plugins: ['httplug.plugin.logger']
|
|
wallabag_import.pocket.client:
|
|
factory: 'httplug.factory.auto'
|
|
plugins:
|
|
- 'httplug.plugin.logger'
|
|
- header_defaults:
|
|
headers:
|
|
'content-type': 'application/json'
|
|
'X-Accept': 'application/json'
|
|
discovery:
|
|
client: false
|
|
|
|
# define custom entity so we can override length attribute to fix utf8mb4 issue
|
|
craue_config:
|
|
entity_name: Wallabag\CoreBundle\Entity\InternalSetting
|