외부 유형을 가져오지 않고 kubebuilder에서 외부 사용자 정의 리소스 변경 사항을 모니터링하는 방법

WBOY
풀어 주다: 2024-02-06 10:00:11
앞으로
576명이 탐색했습니다.

如何在 kubebuilder 中监视外部自定义资源更改而不导入外部类型

질문 내용

외부 리소스 "외부"를 모니터링하는 코디네이터를 설정하는 다음 코드 조각이 있다고 가정합니다.

으아아아

내 문제는 somev1.external 유형을 내 프로젝트로 가져올 수 없다는 것입니다. 이 유형이 포함된 go 모듈을 가져오면 현재 프로젝트의 종속성이 손상될 수 있기 때문입니다.

kubebuilder에서 해당 유형을 명시적으로 가져오지 않고 외부 리소스를 모니터링할 수 있는 방법이 있나요? gvk 같은 거요?


정답


네, 가능합니다.

다음과 같이 main.go에서 리소스에 대한 나머지 클라이언트를 만들 수 있습니다.

으아아아

그런 다음 나머지 클라이언트(rest.interface) 的字段添加到您的协调器 (yournativeresource_controller.go) 구조를 넣으세요. 예를 들면 다음과 같습니다.

으아아아

마지막으로 이 나머지 클라이언트(main.go)를 사용하여 코디네이터를 초기화하세요.

으아아아

Rbac 태그를 프로젝트(가급적 코디네이터)에 추가하는 것을 잊지 마세요. 그러면 작업을 허용하는 rbac 규칙이 생성됩니다. external 리소스:

으아아아

이 단계를 완료한 후 yournativeresource 코디네이터를 통해 나머지 클라이언트를 사용할 수 있습니다(r.restclient를 사용하여 yournativeresource 协调器(使用 r.restclient 来操作 external 리소스를 조작하세요.

).

편집자:

소스를 보고 싶다면 동적 클라이언트가 도움이 될 수 있습니다. main.go에서 동적 클라이언트 만들기:

으아아아

위 단계를 적용하고 코디네이터 등에 추가하세요. 그러면 아래와 같이 external 리소스를 볼 수 있습니다.

으아아아

위 내용은 외부 유형을 가져오지 않고 kubebuilder에서 외부 사용자 정의 리소스 변경 사항을 모니터링하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!