Cloud Code ל-VS Code נועד להקל על ההגדרה של Kubernetes ו-Cloud Build על ידי ניתוח של סכימות כדי לבדוק את המבנה והערכים התקינים שלהן, ומתן שגיאות תיאוריות. Cloud Code כולל פתרונות מוכנים מראש לסכימה נפוצה, להשלמות חכמות ולתיעוד בהצבעה.
קבצים נתמכים של הגדרות ב-YAML
ב-Cloud Code יש גם תמיכה מובנית בהגדרות פופולריות של משאבים מותאמים אישית (CRD) של Kubernetes, כמו Kubeflow.
שימוש בסכימה מותאמת אישית
באמצעות Cloud Code, אתם יכולים לספק סכימת CRD משלכם עם ההגדרה cloudcode.yaml.crdSchemaLocations בקובץ settings.json.
אפשר להפנות לקובץ מקומי או לכתובת URL. כתובות URL שמפנות אל github.com מומרות אוטומטית ל-raw.githubusercontent.com.
שליפת סכימה מאשכול
כשעוברים לאשכול שמופעלת בו גרסה 1.16 של Kubernetes ואילך בתצוגת Kubernetes, Cloud Code שולף באופן אוטומטי את הסכימה של כל ה-CRD המותקנים.
הגדרה באמצעות קטעי קוד
קטעי קוד מוכנים מראש לסכימת YAML נפוצה (באמצעות Command/Ctrl+Space כדי לראות אפשרויות) מאפשרים להתחיל בקובץ YAML חדש או להוסיף לקובץ קיים בקלות וללא שגיאות, תוך הקפדה על שיטות מומלצות. Cloud Code מקל על העבודה עם שדות חוזרים על ידי מילוי המופעים הנותרים אחרי שממלאים את השדה הראשון.
Cloud Code מציע את קטעי הקוד הבאים:
Anthos Config Management - ClusterAnthos Config Management - Cluster SelectorAnthos Config Management - Config ManagementAnthos Config Management - Namespace SelectorCloud Build - Cloud Run deploymentCloud Build - Docker container buildCloud Build - GKE deploymentCloud Build - GKE Skaffold deploymentCloud Build - Go buildCloud Build - Terraform plan + applyConfig Connector - BigQueryDatasetConfig Connector - BigQueryTableConfig Connector - BigtableClusterConfig Connector - BigtableInstanceConfig Connector - PubSubSubscriptionConfig Connector - PubSubTopicConfig Connector - RedisInstanceConfig Connector - SpannerInstanceKubernetes - ConfigMapKubernetes - DeploymentKubernetes - IngressKubernetes - PodKubernetes - SecretKubernetes - ServiceMigrate to Containers - ExportMigrate to Containers - PersistentVolumeClaimMigrate to Containers - StatefulSetSkaffold - BazelSkaffold - Getting-startedSkaffold - Helm deploymentSkaffold - Kaniko
השלמה עם הקשר
על סמך הסכימה הנוכחית, Cloud Code מספק השלמות בהקשר וכן מסמכים רלוונטיים שיעזרו לכם לבחור את האפשרות הנכונה.

אימות סכימת YAML
Cloud Code תומך באימות סכימות על ידי סימון תגים וערכים לא תקינים בקובצי ה-YAML והצעת תיקונים כשזה אפשרי.

הצגת תיעוד בהעברת העכבר מעל
כשמחזיקים את הסמן מעל ערך בסכימה, Cloud Code מציג תיעוד רלוונטי.

גישה להגדרות של משאבים
כדי לראות הגדרות של משאב, לוחצים לחיצה ימנית על המשאב ואז בוחרים באפשרות מעבר להגדרה או הצגת ההגדרה בתצוגה מקדימה.
החלת קובץ YAML
כדי להחיל שינוי בהגדרות באמצעות הקובץ הנוכחי, פותחים את לוח הפקודות (מקישים על Ctrl/Cmd+Shift+P או לוחצים על תצוגה > לוח הפקודות) ומריצים את הפקודה Cloud Code: החלת קובץ JSON/YAML נוכחי על משאב שנפרס ב-K8s.
הפקודה הזו מציגה תצוגת השוואה כדי שתוכלו לבדוק את השינויים. כשמופיעה ההודעה עם השאלה אם להחיל את השינוי, לוחצים על אישור. הפעולה הזו מריצה את kubectl apply -f.
הצגת ההבדלים בין קובצי YAML
כדי לראות את ההבדלים בין קובץ YAML בבקרת מקורות לבין קובץ YAML שנפרס, פותחים את לוח הפקודות (מקישים על Ctrl/Cmd+Shift+P או לוחצים על View (תצוגה) > Command Palette (לוח הפקודות)) ואז מריצים את הפקודה Cloud Code: Diff Current JSON/YAML File with K8s Deployed Resource (Cloud Code: השוואה בין קובץ JSON/YAML נוכחי לבין משאב שנפרס ב-K8s).
ביצוע הרצה יבשה של קובץ YAML
Cloud Code מבצע הרצות ניסיון אוטומטיות בזמן שאתם מקלידים מידע בקובץ ה-YAML, ומסמן שגיאות בקו צהוב גלי.
קו גלי צהוב מופיע כשהשרת מחשיב חלק מהקוד כשגיאה על סמך התוצאה של הרצת בדיקה. הבעיות האלה יכולות לכלול הפרות מדיניות, שמות כפולים או אימותים ש-Cloud Code לא מבצע בצד הלקוח (כמו מספרי יציאות מקסימליים).
כדי לראות את תיאור השגיאה בקובץ ה-YAML, מעבירים את מצביע העכבר מעל הקוד עם קו צהוב מתחתיו.

קווים אדומים גליים מופיעים בשגיאות שזוהו לפני ש-Cloud Code בודק את שרת Kubernetes. לדוגמה, אם מזינים מספר במקום מחרוזת, מופיע קו אדום מתפתל.
עבודה עם סודות
שימוש במיפוי תצורה ובסודות הוא חלק מרכזי בעבודה עם Kubernetes. כדי לראות את ההקשר של סוד בקידוד base64 באמצעות Cloud Code, מעבירים את מצביע העכבר מעל הסוד כדי לפענח אותו.

המאמרים הבאים
- יוצרים קובץ Cloud Code Kubernetes run configuration
skaffold.yaml. - יוצרים באופן ידני הגדרת Skaffold לאפליקציה.
- לעיון במאמרי העזרה של
Skaffold.yaml