# SonarCloud project configuration for kubernetes.core # Parameters: https://docs.sonarqube.org/latest/analysis/analysis-parameters/ sonar.projectKey=ansible-collections_kubernetes.core sonar.organization=ansible-collections sonar.sources=. sonar.projectName=kubernetes.core sonar.python.coverage.reportPaths=coverage.xml sonar.tests=tests/unit,tests/integration sonar.python.version=3.12 sonar.newCode.referenceBranch=stable-5 sonar.exclusions=tests/**,.tox/** # Ansible module argument_spec is conventionally defined with the dict(...) # constructor (not {...} literals) for readability and consistency across the # collection. Suppress python:S7498 ("prefer literal syntax"), which conflicts # with that convention and otherwise re-fires on every new module argument. sonar.issue.ignore.multicriteria=e1,e2,e3 sonar.issue.ignore.multicriteria.e1.ruleKey=python:S7498 sonar.issue.ignore.multicriteria.e1.resourceKey=**/*.py # Unit tests pass hardcoded '/tmp/...' strings as fake module arguments (e.g. # chart_ref) to fully mocked commands; no file is ever created there. Suppress # python:S5443 ("temporary files in publicly writable directories") for test # code only. Production code creates temp files via tempfile.mkstemp / # NamedTemporaryFile and stays covered by the rule. sonar.issue.ignore.multicriteria.e2.ruleKey=python:S5443 sonar.issue.ignore.multicriteria.e2.resourceKey=tests/**/*.py # GitHub Actions workflows in this repo use @main for internal reusable actions # (ansible-network/github_actions, ansible-collections/cloud-content-ci-automation) # to simplify maintenance. Suppress githubactions:S7637 ("use full commit SHA"). sonar.issue.ignore.multicriteria.e3.ruleKey=githubactions:S7637 sonar.issue.ignore.multicriteria.e3.resourceKey=.github/workflows/**/*.yaml