개발 환경
문제
apiserver-runtime을 이용해 k8s 관련하여 개발하다,
/Users/username/go/pkg/mod/sigs.k8s.io/apiserver-runtime@v1.1.1/pkg/builder/rest/provider.go:60:10:
cannot use parentPlumbedStorageGetterUpdaterProvider{…}
(value of type parentPlumbedStorageGetterUpdaterProvider) as "k8s.io/apiserver/pkg/registry/rest".Storage value
in return statement: parentPlumbedStorageGetterUpdaterProvider does not implement "k8s.io/apiserver/pkg/registry/rest".Storage
(missing method Destroy)
다음과 같은
missing method Destroy 에러를 마주했다.
원인
https://github.com/kubernetes-sigs/apiserver-runtime/blob/main/pkg/builder/rest/provider.go
apiserver-runtime/pkg/builder/rest/provider.go at main · kubernetes-sigs/apiserver-runtime
Libraries for implementing aggregated apiservers. Contribute to kubernetes-sigs/apiserver-runtime development by creating an account on GitHub.
github.com
공식 레포지토리와 비교하였을 때,
공식 레포: 105번 줄에 Destroy 함수를 implement하는 코드가 포함되어 있는데,
현재 내 파일: 해당 코드가 없다 !!
시도
시도 1 (실패)
/Users/username/go/pkg/mod/sigs.k8s.io/apiserver-runtime@v1.1.1/pkg/builder/rest/provider.go:60:10:
cannot use parentPlumbedStorageGetterUpdaterProvider{…}
(value of type parentPlumbedStorageGetterUpdaterProvider) as "k8s.io/apiserver/pkg/registry/rest".Storage value
in return statement: parentPlumbedStorageGetterUpdaterProvider does not implement "k8s.io/apiserver/pkg/registry/rest".Storage
(missing method Destroy)
에러 로그를 보니,
k8s.io/apiserver/pkg/registry/rest에 문제가 있나 싶어 새롭게 다운로드 해줬다.
$ go get k8s.io/apiserver/pkg/registry/rest@latest
해결
문제 원인 단계에서 인지한 대로,
로컬 파일의 apiserver-runtime 패키지 코드를 수정한다!
수정 파일:
/Users/username/go/pkg/mod/sigs.k8s.io/apiserver-runtime@v1.1.1/pkg/builder/rest/provider.go:60:10:
추가 내용:
이후 goland에서 invalidate cache를 하고 재접속시 !!!
잘 동작하는 것을 볼 수 있다!
(야호~~~!!)
'기타' 카테고리의 다른 글
2024 당근 테크 밋업 (1회) 참여후기 : D (플랫폼) (0) | 2024.10.11 |
---|---|
맥북에서 .app 파일 실행하기 (0) | 2024.03.25 |
파이참 .gitignore 추가하기 (1) | 2024.01.17 |
(맥 사파리/크롬) 웹브라우저에서 개발자모드로 요청 패킷 헤더보기 (0) | 2024.01.07 |
글꼴 사이트 / 티스토리 글꼴 편집 (0) | 2024.01.05 |