Failed Conditions
Branch master (1fae15)
by Bas
08:59
created

Repository Config

checks:
    php:
        code_rating: true
        duplication: true

build_failure_conditions:
    - 'project.metric_change("scrutinizer.quality", < -0.10)'
    - 'elements.rating(<= D).exists'                                # No classes/methods with a rating of D or worse
    - 'elements.rating(<= D).new.exists'                            # No new classes/methods with a rating of D or worse allowed
    - 'issues.label("coding-style").exists'                         # No coding style issues allowed
    - 'issues.label("coding-style").new.exists'                     # No new coding style issues allowed
    - 'issues.severity(>= MAJOR).new.exists'                        # New issues of major or higher severity
    - 'issues.severity(>= MAJOR).exists'                            # New major or higher severity issues
    - 'project.metric("scrutinizer.quality", < 9)'                  # Code Quality Rating drops below 9
    - 'project.metric("scrutinizer.test_coverage", < 0.80)'         # Code Coverage drops below 80%
    - 'project.metric_change("scrutinizer.test_coverage", < -0.1)'  # Code Coverage decreased from previous inspection by more than 10%
    - 'patches.label("Doc Comments").exists'                        # No doc comments patches allowed
    - 'patches.label("Spacing").exists'                             # No spacing patches allowed

build:
    cache:
        directories:
            - vendor        # Cache for already installed composer package -> speed up composer install
#            - bin           # As vendor directory is cached, bin directory must be also cached (as some dependency will not installed if they are already present and so, related binary will not be linked)
#            - ~/.composer   # Composer home directory (avoid fetching already fetched packages)
    dependencies:
        before:
            # override parameters to use scrutinizer user/password
            # Could be ommited if project doesn't require specific configuration (db, rmq, ...) but could anyway added at project beginning to avoid updating scrutinizer configuration when project will need custom configuration
#            - mv app/config/parameters_scrutinizer.yml.dist app/config/parameters.yml.dist
        override:
            - composer run-script build-scrutinizer # will launch "composer install" but for CI (no loader optimization compared to the build command for production for instance)

    environment:
        # Depends of what the project requires
#        arangodb: true
        variables:
            SYMFONY_ENV: 'test' # In case project use Environment variables

tools:
    php_analyzer:
        enabled: true
        config:
            checkstyle:
                enabled: false
            doc_comment_fixes:
                enabled: false
            reflection_fixes:
                enabled: false
            use_statement_fixes:
                enabled: false
            simplify_boolean_return:
                enabled: true
    external_code_coverage: false
    php_code_coverage: false
    php_changetracking: true
    php_cpd: true
    php_cs_fixer: false
    php_mess_detector: true
    php_pdepend: true
    sensiolabs_security_checker: true

filter:
    paths:
        - src/*