build: root_path: './' services: # For available tags, see https://hub.docker.com/_/mariadb/ mariadb: 10.4 environment: php: version: 7.2 ini: 'date.timezone': 'UTC' hosts: api.baka.ld: '127.0.0.1' apache2: modules: ['rewrite'] sites: api: web_root: 'public' host: 'api.baka.ld' dependencies: override: - true tests: override: - php-scrutinizer-run --enable-security-analysis filter: paths: ['./*'] excluded_paths: - 'tests/*' - 'storage/*' - 'vendor/*' - 'phinx.php' - 'src/Http/SwooleRequest.php' #it need to be this big , since the phalcon interfase requires it build_failure_conditions: # No classes/methods with a rating of D or worse - 'elements.rating(< D).exists' # No new classes/methods with a rating of D or worse allowed - 'elements.rating(< D).new.exists' # No coding style issues allowed - Removing it for now until we fix index.php - 'issues.label("coding-style").exists' # No new coding style issues allowed - 'issues.label("coding-style").new.exists' # More than 5 new coding style issues. - 'issues.label("coding-style").new.count > 5' # New issues of major or higher severity - 'issues.severity(>= MAJOR).new.exists' # Code Quality Rating drops below 8 - 'project.metric("scrutinizer.quality", < 8)' tools: php_analyzer: true php_mess_detector: true php_code_sniffer: config: standard: PSR2 php_loc: enabled: true excluded_dirs: ['vendor', 'tests', 'storage'] php_cpd: enabled: true excluded_dirs: ['vendor', 'tests', 'storage'] checks: php: verify_property_names: true verify_argument_usable_as_reference: true verify_access_scope_valid: true variable_existence: true useless_calls: true use_statement_alias_conflict: true unused_variables: true unused_properties: true unused_parameters: true unused_methods: true unreachable_code: true too_many_arguments: true symfony_request_injection: true switch_fallthrough_commented: true sql_injection_vulnerabilities: true simplify_boolean_return: true security_vulnerabilities: true return_in_constructor: true return_doc_comments: true return_doc_comment_if_not_inferrable: true require_scope_for_methods: true require_php_tag_first: true property_assignments: true properties_in_camelcaps: true precedence_mistakes: true precedence_in_conditions: true phpunit_assertions: true parse_doc_comments: true parameters_in_camelcaps: true parameter_non_unique: true parameter_doc_comments: true param_doc_comment_if_not_inferrable: true overriding_private_members: true overriding_parameter: true non_commented_empty_catch_block: true no_trait_type_hints: true no_trailing_whitespace: true no_short_variable_names: minimum: '3' no_short_open_tag: true no_short_method_names: minimum: '3' no_property_on_interface: true no_non_implemented_abstract_methods: true no_long_variable_names: maximum: '20' no_goto: true no_exit: true no_eval: true no_error_suppression: true no_debug_code: true more_specific_types_in_doc_comments: true missing_arguments: true method_calls_on_non_object: true instanceof_class_exists: true foreach_usable_as_reference: true foreach_traversable: true fix_use_statements: remove_unused: true preserve_multiple: true preserve_blanklines: false order_alphabetically: true fix_line_ending: true fix_doc_comments: true encourage_shallow_comparison: true duplication: true deprecated_code_usage: true deadlock_detection_in_loops: true comparison_always_same_result: true code_rating: true closure_use_not_conflicting: true closure_use_modifiable: true check_method_contracts: verify_interface_like_constraints: true verify_documented_constraints: true verify_parent_constraints: true catch_class_exists: true call_to_parent_method: true avoid_superglobals: true avoid_length_functions_in_loops: true avoid_duplicate_types: true avoid_closing_tag: true assignment_of_null_return: true argument_type_checks: true remove_extra_empty_lines: true naming_conventions: #local_variable: '^[a-z][a-zA-Z0-9]*$' #abstract_class_name: ^Abstract|Factory$ utility_class_name: '^[A-Z][a-zA-Z0-9]*$' constant_name: '^[A-Z][A-Z0-9]*(?:_[A-Z0-9]+)*$' property_name: '^[a-z][a-zA-Z0-9]*$' method_name: '^(?:[a-z]|__)[a-zA-Z0-9]*$' parameter_name: '^[a-z][a-zA-Z0-9]*$' interface_name: '^[A-Z][a-zA-Z0-9]*Interface$' exception_name: '^[A-Z][a-zA-Z0-9]*Exception$' #isser_method_name: '^(?:is|has|should|may|supports|before|after)'
build: # Variables for all nodes environment: variables: STRIPE_PUBLIC: 'pk_test_JR2CcTZLWGTKsBqbP2zxF1Wb' STRIPE_SECRET: 'sk_test_I5Fl273qWEovn3MHoUJNgUal' EMAIL_USER: '[email protected]' EMAIL_PASS: 111111111111111 nodes: my-node: services: # For available tags, see https://hub.docker.com/_/rabbitmq/ rabbitmq: 3.7-management