306c69ba89
- Unified CI workflow with fail-fast behavior, streamlining stages for formatting, linting, testing, and SonarCloud analysis. - Enhanced SonarCloud configuration to exclude test files and improve security hotspot analysis. - Removed outdated coverage and lint workflows, consolidating functionality into the main CI pipeline. - Updated README to reflect changes in CI structure and added details on workflow stages and requirements.
47 lines
1.6 KiB
Properties
47 lines
1.6 KiB
Properties
sonar.projectKey=0x524a_onvif-go
|
|
sonar.organization=0x524a
|
|
|
|
# Project metadata
|
|
sonar.projectName=onvif-go
|
|
sonar.projectVersion=1.0.0
|
|
|
|
# Source code location
|
|
sonar.sources=.
|
|
sonar.exclusions=**/vendor/**,**/*_test.go,**/examples/**,**/cmd/**,**/testdata/**,**/testing/**
|
|
|
|
# Test settings
|
|
sonar.tests=.
|
|
sonar.test.inclusions=**/*_test.go
|
|
sonar.test.exclusions=**/vendor/**
|
|
|
|
# Go specific settings
|
|
sonar.go.coverage.reportPaths=coverage.out
|
|
sonar.go.tests.reportPaths=test-report.json
|
|
|
|
# Source encoding
|
|
sonar.sourceEncoding=UTF-8
|
|
|
|
# Coverage exclusions - exclude non-production code from coverage metrics
|
|
sonar.coverage.exclusions=**/cmd/**,**/examples/**,**/server/**,**/testing/**,**/testdata/**,**/*_test.go
|
|
|
|
# Duplications exclusions
|
|
sonar.cpd.exclusions=**/*_test.go,**/testdata/**
|
|
|
|
# Security Hotspot exclusions - skip test files and CI configuration
|
|
# These files don't represent production security concerns
|
|
sonar.security.hotspots.exclusions=**/*_test.go,**/testing/**,**/testdata/**,**/.github/**,**/examples/**,**/cmd/**
|
|
|
|
# Issue exclusions for specific rules in test files
|
|
sonar.issue.ignore.multicriteria=e1,e2,e3
|
|
|
|
# Ignore security issues in test files
|
|
sonar.issue.ignore.multicriteria.e1.ruleKey=go:S5042
|
|
sonar.issue.ignore.multicriteria.e1.resourceKey=**/*_test.go
|
|
|
|
# Ignore hardcoded credentials in test/example files (test credentials are expected)
|
|
sonar.issue.ignore.multicriteria.e2.ruleKey=go:S6418
|
|
sonar.issue.ignore.multicriteria.e2.resourceKey=**/*_test.go
|
|
|
|
sonar.issue.ignore.multicriteria.e3.ruleKey=go:S6418
|
|
sonar.issue.ignore.multicriteria.e3.resourceKey=**/examples/**
|