# Setting coverage targets per flag coverage: status: project: false patch: frontend: # codecov will not fail status checks for master only_pulls: true informational: false # Fail the check target: 60% flags: - frontend backend: # codecov will not fail status checks for master only_pulls: true informational: false # Fail the check target: 90% flags: - backend ignore: - src/*/migrations/ - src/bitfield/ - src/sentry/debug/ - src/sentry/runner/ - src/social_auth/ - static/app/routes.tsx - static/app/**/*.stories.tsx - tests/ component_management: individual_components: # Profiling team components - component_id: 'profiling_views' name: 'Profiling Views' paths: - 'static/app/views/profiling/**' - component_id: 'profiling_components' name: 'Profiling Components' paths: - 'src/sentry/static/sentry/app/components/profiling/**' - component_id: 'profiling_utils' name: 'Profiling Utils' paths: - 'src/sentry/static/sentry/app/utils/profiling/**' flags: frontend: paths: - 'static/app/' carryforward: true # FE uploads 4 coverage reports. This property ensures codecov waits # for all reports to be uploaded before creating a GitHub status check. # NOTE: If you change this, make sure to change `comment.after_n_builds` below as well. after_n_builds: 4 backend: paths: - 'src/sentry/**/*.py' carryforward: true # Do not send any status checks until n coverage reports are uploaded. # NOTE: If you change this, make sure to change `comment.after_n_builds` below as well. after_n_builds: 18 # https://docs.codecov.com/docs/flags#two-approaches-to-flag-management flag_management: individual_flags: - name: smart-tests # Prevents the upload with this flag from being copied accross commits carryforward: false # https://docs.codecov.com/docs/getting-started-with-ats#step-2-configure-the-codecovyml-for-automated-test-selection # carryforward_mode: "labels" statuses: # https://github.com/codecov/shared/blob/main/shared/validation/user_schema.py#L310 - type: 'patch' only_pulls: true # Read more here: https://docs.codecov.com/docs/pull-request-comments comment: #### FOR TESTING #### # If you want to test in your PR commenting configurations changes, # comment out this line and uncomment the next line in the next section # require_bundle_changes: false ###################### # Post comment if there are changes in bundle size increases greater than value specified require_bundle_changes: 'bundle_increase' ###################### # This is the addition of carry forward builds and fresh builds, thus, it's the addition # of the FE and BE builds after_n_builds: 22 # What to render in the comment layout: 'diff, condensed_files' # Do not show the project coverage in the comment hide_project_coverage: true # Update, if exists. Otherwise post new. Skip if deleted. behavior: once # Only post if coverage drops OR there are uncovered lines of code require_changes: 'coverage_drop OR uncovered_patch' require_base: true # must have a base report to post require_head: true # must have a head report to post bundle_change_threshold: '10Kb' cli: # This would be used when uploading the ats results # But we will not be doing that yet plugins: pycoverage: report_type: 'json' compress-pycoverage: file_to_compress: '.artifacts/python.coverage.json' # We don't want to upload the original coverage report by accident # Because it's too big delete_uncompressed: true runners: pytest: # Same args used for the backend tests # See Makefile:135 collect_tests_options: - 'tests' - '--ignore=tests/acceptance' - '--ignore=tests/apidocs' - '--ignore=tests/js' - '--ignore=tests/tools'