มันน่ารำคาญสำหรับฉันเพราะฉันกำลังทดสอบแพคเกจหางเสือมากมายดังนั้นฉันจึงเขียนสคริปต์สั้น ๆ ซึ่งสามารถปรับเปลี่ยนเพื่อเรียงลำดับเวิร์กโฟลว์ของคุณได้จากด้านล่าง
เวิร์กโฟลว์ใหม่เรียกข้อมูลแผนภูมิเป็น tgz ไปยังไดเรกทอรีทำงานของคุณ
helm fetch repo/chart
จากนั้นในการทำงานของคุณโดยตรงรันสคริปต์ทุบตีด้านล่าง - ซึ่งฉันชื่อ helmk
helmk myreleasename mynamespace chart.tgz [any parameters for kubectl create]
เนื้อหาของ helmk - ต้องแก้ไขกลุ่ม kubeconfig ของคุณให้ทำงาน
#!/bin/bash
echo usage $0 releasename namespace chart.tgz [createparameter1] [createparameter2] ... [createparameter n]
echo This will use your namespace then shift back to default so be careful!!
kubectl create namespace $2 #this will create harmless error if namespace exists have to ignore
kubectl config set-context MYCLUSTERNAME --namespace $2
helm template -n $1 --namespace $2 $3 | kubectl convert -f /dev/stdin | kubectl create --save-config=true ${@:4} -f /dev/stdin
#note the --namespace parameter in helm template above seems to be ignored so we have to manually switch context
kubectl config set-context MYCLUSTERNAME --namespace default
เป็นการแฮ็คที่อันตรายเล็กน้อยเนื่องจากฉันสลับไปที่บริบทเนมสเปซใหม่ที่คุณต้องการจากนั้นกลับมาอีกครั้งดังนั้นจึงจะใช้สำหรับผู้ใช้คนเดียวหรือจริงๆแล้วแสดงความคิดเห็น
คุณจะได้รับคำเตือนเกี่ยวกับการใช้สิ่งอำนวยความสะดวกในการแปลง kubectl เช่นนี้
หากคุณต้องการแก้ไข YAML เพื่อปรับแต่ง - เพียงแค่แทนที่หนึ่งในไฟล์ / dev / stdin เป็นไฟล์ระดับกลาง แต่น่าจะดีกว่าถ้าคุณใช้ "สร้าง" ด้วยการบันทึกการตั้งค่าตามที่ฉันมีแล้วเพียงแค่ "ใช้" การเปลี่ยนแปลงของคุณ ซึ่งหมายความว่าพวกเขาจะถูกบันทึกใน kubernetes ด้วย โชคดี