문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
java:sonarqube [2021/08/17 14:14] kwon37xi [Quality Gates] |
java:sonarqube [2022/10/19 10:08] (현재) kwon37xi |
||
|---|---|---|---|
| 줄 2: | 줄 2: | ||
| * http:// | * http:// | ||
| * 코드 품질 관리 툴 | * 코드 품질 관리 툴 | ||
| + | * [[programming: | ||
| * [[gradle: | * [[gradle: | ||
| 줄 14: | 줄 15: | ||
| * 해당 규칙이 false positive 인 경우 '' | * 해당 규칙이 false positive 인 경우 '' | ||
| * '' | * '' | ||
| + | |||
| + | <note warning> | ||
| + | SonarQube 의 코드 퀄리티를 만족시키기 위해서 우리 사정상 어쩔 수 없거나 SonarQube 의 경고 자체가 잘못된 경우가 있는데, 억지로 이게 맞추려고 코드를 꼬아서 만들거나 해서는 안 된다. 이게 오히려 버그를 만든다. | ||
| + | |||
| + | 이럴때는 즉각 팀에 공유하고, | ||
| + | </ | ||
| ==== @SuppressWarnings(" | ==== @SuppressWarnings(" | ||
| 줄 47: | 줄 54: | ||
| * 분석 결과 품질이 저하되거나 하면 알림을 줄 수 있다. | * 분석 결과 품질이 저하되거나 하면 알림을 줄 수 있다. | ||
| * 알림은 자기 계정의 **My Account -> Notifications**에서 프로젝트 단위, 혹은 전체 프로젝트를 지정할 수 있다. | * 알림은 자기 계정의 **My Account -> Notifications**에서 프로젝트 단위, 혹은 전체 프로젝트를 지정할 수 있다. | ||
| - | * '' | + | |
| ==== sonar.qualitygate.wait=true ==== | ==== sonar.qualitygate.wait=true ==== | ||
| * [[https:// | * [[https:// | ||
| * sonarqube 8.x 에서는 client 에서 '' | * sonarqube 8.x 에서는 client 에서 '' | ||
| ===== Jenkins Pipeline에서 Quality Gate 응답 대기 ===== | ===== Jenkins Pipeline에서 Quality Gate 응답 대기 ===== | ||
| + | * sonarqube 8.x 에서는 불필요. sonarqube gradle/ | ||
| * [[https:// | * [[https:// | ||
| * Jenkins 설정에서 sonarqube URL / 인증등을 설정해주고서 | * Jenkins 설정에서 sonarqube URL / 인증등을 설정해주고서 | ||
| 줄 65: | 줄 73: | ||
| </ | </ | ||
| * Declarative Pipeline 에서 아래 사용시 무조건 FAILURE로 바꿔버림< | * Declarative Pipeline 에서 아래 사용시 무조건 FAILURE로 바꿔버림< | ||
| - | waitForQualityGate abortPipeline: | + | stage(" |
| + | steps { | ||
| + | timeout(time: | ||
| + | | ||
| + | } | ||
| + | } | ||
| + | } | ||
| </ | </ | ||
| * Sonarqube의 [[https:// | * Sonarqube의 [[https:// | ||