멘토님들께서 계속해서 피드백을 주셨다.
[원철 멘토님 피드백]
1) cloud_mssql.go에서 region_code attribute 삭제하기
2) IntDivisibleBy(1433) 대신 IntBetween(1433, 1433) 이나 IntInSlice([]int{ 1433}) 또는 validation 함수를 추가하는 형태로 변경
"port": {
Type: schema.TypeInt,
Optional: true,
ValidateDiagFunc: validation.ToDiagFunc(validation.Any(
//validation.
validation.IntBetween(10000, 20000),
validation.IntBetween(1433, 1433), // 변경 부분
)),
Description: "Port of Cloud DB for MSSQL instance.",
Default: 1433,
ForceNew: true,
},
3) data source는 리소스의 값을 얻어오는 용도로 사용 → 사용자가 직접 변경하지 않기 때문에 ForceNew가 사용되지 않는 것이 일반적임
id attribute와 다른 attribute에 정의된 ForceNew 설정 생략하기
ForceNew: true, //모두 지워줌
4) types.go에서 json tag를 camel case에서 snake case로 변경
이 부분은 테스트를 해보았을 때, 코드에서 인터페이스 타입을 문자열로 변환 시 그 인터페이스가 널 (nil) 값인 것으로 감지되어 패닉이 발생해서 다시 원래대로 camel case로 변경하였다.
[영민 멘토님 피드백]
1) backup_file_retention_period에도 validation.ToDiagFunc 필요
"backup_file_retention_period": {
Type: schema.TypeInt,
Optional: true,
ValidateDiagFunc: validation.ToDiagFunc(validation.IntBetween(1, 30)),
Description: "Retention period of back-up files.",
Default: 1,
ForceNew: true,
},
[의선 멘토님 피드백]
1) read 요청 시 필요한 파라미터들 제외, Optional 속성 제거 및 ForceNew 지우기
read 요청 시 필요한 파라미터들은 type CloudMssqlInstance struct 에 정의된 파라미터들이다.
[test 해보기]
test는 잘 통과했다.
data source test는 원철 멘토님 피드백 test 결과이다.
[pr 반영 및 comment 남기기]
pr 반영 및 comment를 남겼다.
'개발 > Terraform on NaverCloud' 카테고리의 다른 글
멘토님 피드백 반영 (3) & 회고 (1) | 2023.12.07 |
---|---|
멘토님 피드백 반영 (1) (0) | 2023.12.07 |
MSSQL 가이드 문서 pr 반영하기 (0) | 2023.09.23 |
MSSQL 가이드 문서 작성하기 (0) | 2023.09.21 |
MSSQL 개발 코드 보완하기: data source (0) | 2023.09.21 |