helmsdeep/config/fistful/sys.config

448 lines
19 KiB
Plaintext
Raw Normal View History

[
{kernel, [
{logger_level, info},
{logger, [
{handler, default, logger_std_h, #{
level => debug,
config => #{
type => standard_io,
sync_mode_qlen => 500,
drop_mode_qlen => 500,
flush_qlen => 2000
},
filters => [{access_log, {fun logger_filters:domain/2, {stop, equal, [cowboy_access_log]}}}],
formatter => {logger_logstash_formatter, #{}}
}},
{handler, access_logger, logger_std_h, #{
level => info,
config => #{
type => standard_io,
sync_mode_qlen => 20,
burst_limit_enable => true,
burst_limit_max_count => 600,
burst_limit_window_time => 1000
},
filters => [{access_log, {fun logger_filters:domain/2, {stop, not_equal, [cowboy_access_log]}}}],
formatter => {logger_logstash_formatter, #{}}
}}
]}
]},
{scoper, [
{storage, scoper_storage_logger}
]},
{dmt_client, [
{max_cache_size, #{
elements => 80,
memory => 209715200 % 200Mb
}},
{cache_update_interval, 5000}, % milliseconds
{cache_server_call_timeout, 30000}, % milliseconds
{woody_event_handlers, [
{scoper_woody_event_handler, #{
event_handler_opts => #{
formatter_opts => #{
max_length => 1000,
max_printable_string_length => 80
}
}
}}
]},
{service_urls, #{
'Repository' => <<"http://dominant:8022/v1/domain/repository">>,
'RepositoryClient' => <<"http://dominant:8022/v1/domain/repository_client">>
}}
]},
{party_client, [
{services, #{
party_management => "http://hellgate:8022/v1/processing/partymgmt"
}},
{woody, #{
cache_mode => safe, % disabled | safe | aggressive
options => #{
woody_client => #{
event_handler => {
scoper_woody_event_handler,
{scoper_event_handler_options, #{
event_handler_opts => #{
formatter_opts => #{
max_length => 1000,
max_printable_string_length => 80
}
}
}
}
}
}
}
}}
]},
{fistful, [
{providers, #{
<<"test">> => #{
routes => [<<"mocketbank">>],
payment_institution_id => {{ payinst_test }},
identity_classes => #{
<<"person">> => #{
name => <<"Person">>,
contract_template_id => {{ contract_tpl_test_person }},
initial_level => <<"anonymous">>,
levels => #{
<<"anonymous">> => #{
name => <<"Anonymous">>,
contractor_level => none
},
<<"partly-identified">> => #{
name => <<"Partially identified">>,
contractor_level => partial
},
<<"identified">> => #{
name => <<"Fully identified">>,
contractor_level => full
}
},
challenges => #{
<<"esia">> => #{
name => <<"Routine checkup">>,
base => <<"anonymous">>,
target => <<"partly-identified">>
}
}
},
<<"company">> => #{
name => <<"Legal Entity">>,
contract_template_id => {{ contract_tpl_test_company }},
initial_level => <<"identified">>,
levels => #{
<<"identified">> => #{
name => <<"Fully identified">>,
contractor_level => full
}
}
}
}
},
<<"dpl">> => #{
payment_institution_id => {{ payinst_dpl }},
routes => [<<"accentpay">>],
identity_classes => #{
<<"company">> => #{
name => <<"Legal Entity">>,
contract_template_id => {{ contract_tpl_dpl_company }},
initial_level => <<"identified">>,
levels => #{
<<"identified">> => #{
name => <<"Fully identified">>,
contractor_level => full
}
}
}
}
}
}},
{services, #{
'accounter' => "http://shumway:8022/shumpune",
'identification' => "http://identification:8022/v1/identification",
'binbase' => "http://binbase:8022/v1/binbase",
Improove (#193) * add epic branch with java services * Introduce analytics (#166) * Introduce questionary (#175) * Introduce questionary * actualize questionary * actualize questionary * Introduce claim-management (#173) * Introduce questionary-aggr-proxy (#176) * management.endpoint.prometheus.enabled=true * Change Claim database name for PG compatability * move CH pasword from template * Introduce magista (#169) * Introduce magista-kafka * Introduce magista-kafka * Introduce magista-kafka * Introduce mst * move kafka comment to the end of file * actualize magista * actualize magista * actualize mgista * management.endpoint.prometheus.enabled=true Co-authored-by: Dmitry Skokov <d.skokov@rbkmoney.com> Co-authored-by: vilorij <vilorij@ya.ru> * fix url in anapi for correct rendering in logs * Add LE certs issuer to ingress * erl default templating disable ServiceMonitor * new db init * riak fix ConfigMap * shortener config templating * Dashboard fix realm, 404 error and add ingress * disable SM in hooker * add objectselector in vault * Shumway add schema * add ingress tls variable into defaults.values * Fistful templatimg erl defaults typo fix in MG address * add default realms * Consuela for MG add namespace for payouts * helmfile deps bump * add fistful-magista * add payouter * add columbus * add columbus * disable SM * analitics fix clickhouse node for analytics * claimmgmt add * fix iddqd appconfig mounts * deanonimus add * add antifraud * kafka scale and infinity retention * KK realms readability fix password for manager add roles mapping * disable consuella for the issues in consul * typo fix in checkout * DB for antifraud * add schema setting for questionary * shortener fix with KK public key * HG ingress for iddqd * Dominant ingress for iddqd * messages add disable vault password control because of foreign keys in DB * papi add * idkfa add * dark-api add * fix hooker DB name add DB for fraudbusters * add new services in helmfile and bump deps * delete useless keycloak values Co-authored-by: karleowne <a.karlov@rbkmoney.com> Co-authored-by: Dmitry Skokov <d.skokov@rbkmoney.com>
2021-07-08 01:10:39 +00:00
'eventsink' => "http://machinegun:8022/v1/event_sink",
'automaton' => "http://machinegun:8022/v1/automaton"
}}
]},
{ff_server, [
{ip, "::"},
{port, 8022},
{woody_opts, #{
net_opts => [
% Bump keepalive timeout up to a minute
{timeout, 60000}
]
}},
{net_opts, [
% Bump keepalive timeout up to a minute
{timeout, 60000}
]},
{health_check, #{
disk => {erl_health, disk , ["/", 99]},
memory => {erl_health, cg_memory, [99]},
service => {erl_health, service , [<<"wapi">>]}
}},
{eventsink, #{
identity => #{
namespace => 'ff/identity'
},
wallet => #{
namespace => 'ff/wallet_v2'
},
withdrawal => #{
namespace => 'ff/withdrawal_v2'
},
deposit => #{
namespace => 'ff/deposit_v1'
},
destination => #{
namespace => 'ff/destination_v2'
},
source => #{
namespace => 'ff/source_v1'
},
withdrawal_session => #{
namespace => 'ff/withdrawal/session_v2'
},
p2p_transfer => #{
namespace => 'ff/p2p_transfer_v1'
},
p2p_session => #{
namespace => 'ff/p2p_transfer/session_v1'
},
w2w_transfer => #{
namespace => 'ff/w2w_transfer_v1'
},
p2p_template => #{
namespace => 'ff/p2p_template_v1'
}
}}
]},
{ff_transfer, [
{max_session_poll_timeout, 14400}, % 4h
{withdrawal,
#{
provider => #{
<<"mocketbank">> => #{
adapter => #{
event_handler => scoper_woody_event_handler,
url => <<"http://adapter_mocketbank:8022/proxy/mocketbank/p2p-credit">>
},
fee => #{<<"RUB">> => #{postings => []}},
accounts => #{}
},
<<"royalpay-payout">> => #{
adapter => #{
event_handler => scoper_woody_event_handler,
url => <<"http://adapter_royalpay_payout:8022/adapter/royalpay-payout/oct">>
},
adapter_opts => #{
<<"timer_timeout">> => <<"10">>
},
accounts => #{
<<"RUB">> => #{
id => <<"royalpay_rub_account_14998">>,
identity => <<"555">>,
currency => <<"RUB">>,
accounter_account_id => 14998
},
<<"UAH">> => #{
id => <<"royalpay_uah_account_18842">>,
identity => <<"555">>,
currency => <<"UAH">>,
accounter_account_id => 18842
}
},
fee => #{
<<"RUB">> => #{
postings => [
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {product, {max_of, [
{fixed, {3500, <<"RUB">>} },
{share, { {13, 1000}, operation_amount, round_half_away_from_zero} }
]}}
}
]
},
<<"UAH">> => #{
postings => [
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {product, {max_of, [
{share, { {2, 100}, operation_amount, round_half_away_from_zero} }
]}}
}
]
}
}
},
<<"accentpay">> => #{
adapter => #{
event_handler => scoper_woody_event_handler,
url => <<"http://adapter_accentpay:8022/adapter/accentpay/oct">>
},
adapter_opts => #{
<<"project_id">> => <<"470">>,
<<"customer_id">> => <<"rbk.money">>,
<<"polling_delay">> => <<"10">>,
<<"max_time_polling">> => <<"120">>
},
accounts => #{
<<"RUB">> => #{
id => <<"accentpay_rub_account_48370">>,
identity => <<"555">>,
currency => <<"RUB">>,
accounter_account_id => 48370
},
<<"USD">> => #{
id => <<"accentpay_usd_account_48371">>,
identity => <<"555">>,
currency => <<"USD">>,
accounter_account_id => 48371
},
<<"EUR">> => #{
id => <<"accentpay_eur_account_48372">>,
identity => <<"555">>,
currency => <<"EUR">>,
accounter_account_id => 48372
},
<<"KZT">> => #{
id => <<"accentpay_kzt_account_48373">>,
identity => <<"555">>,
currency => <<"KZT">>,
accounter_account_id => 48373
},
<<"UAH">> => #{
id => <<"accentpay_uah_account_88463">>,
identity => <<"555">>,
currency => <<"UAH">>,
accounter_account_id => 88463
}
},
fee => #{
<<"RUB">> => #{
postings => [
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {share, { {6, 1000}, operation_amount, round_half_away_from_zero} }
},
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {fixed, {4000, <<"RUB">>} }
}
]
},
<<"USD">> => #{
postings => [
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {share, { {5, 1000}, operation_amount, round_half_away_from_zero} }
},
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {fixed, {200, <<"USD">>} }
}
]
},
<<"EUR">> => #{
postings => [
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {share, { {5, 1000}, operation_amount, round_half_away_from_zero} }
},
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {fixed, {250, <<"EUR">>} }
}
]
},
<<"KZT">> => #{
postings => [
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {share, { {6, 1000}, operation_amount, round_half_away_from_zero} }
},
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {fixed, {30000, <<"KZT">>} }
}
]
},
<<"UAH">> => #{
postings => [
#{
sender => {system, settlement},
receiver => {provider, settlement},
volume => {product, {max_of, [
{share, { {17, 1000}, operation_amount, round_half_away_from_zero} }
]}}
}
]
}
}
}
},
system => #{
accounts => #{
settlement => #{
<<"RUB">> => #{
id => <<"system_rub_account_14997">>,
identity => <<"519">>,
currency => <<"RUB">>,
accounter_account_id => 14997
},
<<"USD">> => #{
id => <<"system_usd_account_48383">>,
identity => <<"519">>,
currency => <<"USD">>,
accounter_account_id => 48383
},
<<"EUR">> => #{
id => <<"system_eur_account_48382">>,
identity => <<"519">>,
currency => <<"EUR">>,
accounter_account_id => 48382
},
<<"UAH">> => #{
id => <<"system_uah_account_18841">>,
identity => <<"519">>,
currency => <<"UAH">>,
accounter_account_id => 18841
},
<<"KZT">> => #{
id => <<"system_kzt_account_48381">>,
identity => <<"519">>,
currency => <<"KZT">>,
accounter_account_id => 48381
}
}
}
},
default_transient_errors => [
<<"authorization_failed">>
],
party_transient_errors => #{}
}
}
]},
{bender_client, [
{service_url, <<"http://bender:8022/v1/bender">>},
{deadline, 30000}
]},
{os_mon, [
{disksup_posix_only, true}
]},
%% TODO
{snowflake, [{machine_id, 1}]},
{p2p, [
{score_id, <<"fraud">>}
]},
{prometheus, [
{collectors, [default]}
]}
].