מאגר ידע

פריסה באמצעות Zinnector®: קישור, בדיקה, דחיפה

מפרויקט מקומי ועד לאתר פעיל: התחבר באמצעות מפתח API, קשר את הפרויקט לחלצת אחסון, קרא את בדיקת ההכנה שמשווה את ה-PHP, נפח הדיסק וה-WordPress שלך מול החלצה, ובצע דחיפה — בתוספת פריסות מחדש, היסטוריית פריסות ולוגים של בנייה כאשר משהו משתבש.

ברגע שפרויקט פועל באופן מקומי, ארבע פקודות מעבירות אותו לאתר חי באחסון Zinn Digital®: התחברות, קישור הפרויקט לחריץ אחסון, קריאת בדיקת קדם-הטיסה, ודחיפה. מאמר זה סוקר כל אחת מהן, את מה שהן מדפיסות, ואת הפקודות שמשתמשים בהן לאחר מכן — פריסות מחדש, היסטוריית פריסות ולוגים של בנייה.

התחברות באמצעות מפתח API

צרו מפתח בלוח הבקרה תחת הגדרות → מפתחות API, ואז:

zinnector login

המפתח מוזן בשורת ההוראה — הוא לעולם אינו מתקבל בשורת הפקודה, ולכן הוא לא יכול להופיע בהיסטוריית ה-shell או ברשימת תהליכים. ב-CI, העבירו אותו בצינור (pipe): echo "$ZINN_API_KEY" | zinnector login --profile ci, או הגדירו את ZINNECTOR_TOKEN ודלגו לחלוטין על login. המפתח מאומת לפני שהוא נשמור, ונשמר עם הרשאות קובץ 600. הפקודה zinnector whoami --scopes מציגה לאיזה ארגון התחברתם ואילו הרשאות המפתח נושא; מפתח ארגז חול מסומן כמפתח כזה.

קישור הפרויקט לחריץ

zinnector link                                   # בחירת אתר מתוך רשימה
zinnector link example.com --repo acme/site --branch main

הפקודה link כותבת את מזהה האתר לתוך הקובץ zinnector.json, ואלא אם כן תעבירו את --no-repo, מחברת את ה-remote של ה-git של הפרויקט לאתר בפלטפורמה כך שדחיפה תבצע פריסה שלו. מבצעים Commit לקובץ zinnector.json: קולגה שמבצע clone למאgetRepository ואז פורס לאותו מקום מבלי שצריך לומר לו דבר. הוא אינו מכיל סוד.

קריאת בדיקת קדם-הטיסה

zinnector check

זו הפקודה שלשמה קיים ה-CLI. היא משווה את הפרויקט שלך לחריץ שאליו הוא עומד להיפרס ומדפיסה כל אי-התאמה — וכל השוואה שלא יכלה להתבצע:

  • גרסת PHP, כאשר פער בגרסה הראשית מדורג כ-גבוה משום שהוא שובר את האתר באופן אמין ופער משני מדורג נמוך יותר, מכיוון שדירוג הכל כקריטי מלמד אנשים להתעלם מהאזהרה.
  • האם החריץ יכול לעבור לגרסה שעליה בנית, האם ה-PHP של החריץ עבר את סוף חייו, והאם המכונה החילה את גרסת ה-PHP או שרק קיבלה הנחיה.
  • גודל הפרויקט וספירת הקבצים שלך מול נפח הדיסק ויתרת ה-inodes שנותרו בפעולה בחריץ — עץ WordPress יכול להיגמר לו הקבצים בעודו נמצא הרבה מתחת לתקרת הדיסק שלו.
  • גרסאות WordPress בכל צד, האם החריץ סיים את ההקמה, והאם מאגר קוד מחובר כדי לדחוף אליו.

הכלי מזהיר; הוא לעולם אינו חוסם. ניתן לעקוף כל ממצא באמצעות zinnector push --force, מכיוון שאתה יודע דברים על האתר שלך שבודק אינו יודע. השוואה שלא יכלה להתבצע מדווחת כ-לא ידועה, לעולם לא כהצלחה, והסיכום תמיד מציין כמה כאלו היו. כברירת מחדל, גרסת ה-PHP המקומית היא זו שמוצהרת בקוביות הקוד של zinnector.json; הפלאג --probe מריץ את בסביבת הריצה המקומית ומודד אותה במקום זאת. הפלאג --strict יוצא עם סטטוס שאינו אפס גם במקרים לא ידועים, וזה מה ששער ה-CI דורש.

דחיפה

zinnector push

הפקודה push מריצה את בדיקת קדם-הטיסה, דוחפת את ה-commits שלך, מפעילה את הפריסה ועוקבת אחריה עד להשלמתה, תוך הדפסת הסטטוס הסופי וה-commit שנפרס. --dry-run מבצע הכל מלבד הפריסה; --no-wait מפעיל אותה ויוצא; --no-git פורס את מה שכבר קיים בפלטפורמה מבלי לדחוף. אם ה-commit שנפרס אינו זה שזה עתה נדוחה, המערכת תציין זאת.

כאשר משהו משתבש

zinnector deploys example.com        # היסטוריית פריסות — סטטוס, commit, מפעיל, הודעה
zinnector logs example.com --build   # לוג הבנייה של הפריסה העדכנית ביותר
zinnector logs example.com --error   # לוג השגיאות של האתר
zinnector deploy example.com         # פריסה מחדש של מה שהפלטפורמה כבר מחזיקה
zinnector ai "why is my deploy failing?"

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

קשורים

עדיין תקועים?

התמיכה כלולה בכל תוכנית והמענים ניתנים בשפה שלך.

צור קשר עם התמיכה כל המאמרים