คำถามติดแท็ก client-go

1
การใช้ไคลเอนต์ไปที่ 'kubectl ใช้' กับ Kubernetes API โดยตรงกับหลายประเภทในไฟล์ YAML เดียว
ฉันใช้https://github.com/kubernetes/client-goและใช้งานได้ดี ฉันมีรายการ (YAML) สำหรับแผงควบคุม Kubernetes อย่างเป็นทางการ: https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-beta4/aio/deploy/recommended.yaml ฉันต้องการเลียนแบบkubectl applyรายการนี้ในโค้ด Go โดยใช้ client-go ฉันเข้าใจว่าฉันจำเป็นต้องทำ marshalling (ไม่) จำนวนหนึ่งของ YAML เป็นประเภท API ที่ถูกต้องที่กำหนดไว้ในแพ็คเกจ: https://github.com/kubernetes/api ฉันประสบความสำเร็จในการสร้างCreateAPI ชนิดเดียวให้กับคลัสเตอร์ของฉันแต่ฉันจะทำสิ่งนี้เพื่อรายการที่มีรายการประเภทที่ไม่เหมือนกันได้อย่างไร มีทรัพยากรkind: List*ที่สนับสนุนประเภทต่าง ๆ เหล่านี้หรือไม่? วิธีแก้ปัญหาปัจจุบันของฉันคือการแยกไฟล์ YAML ที่ใช้csplitด้วย --- เป็นตัวคั่น csplit /path/to/recommended.yaml /---/ '{*}' --prefix='dashboard.' --suffix-format='%03d.yaml' ต่อไปฉันวนซ้ำส่วน (14) ใหม่ที่สร้างขึ้นอ่านไบต์สลับประเภทของวัตถุที่ส่งคืนโดยตัวถอดรหัสของ UniversalDeserializer และเรียกวิธีการ API ที่ถูกต้องโดยใช้ไคลเอนต์ k8s ของฉัน ฉันต้องการทำสิ่งนี้โดยทางโปรแกรมเพื่อทำการอัพเดตแดชบอร์ดเวอร์ชันใหม่ใด ๆ ลงในคลัสเตอร์ของฉัน …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.