WEBA
D

Dependabot

סורק תלויות בקוד ופותח בקשות משיכה לעדכון גרסאות וסגירת חולשות אבטחה ישירות במאגר.

515 מיליםבדיקות ו-CI/CD

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

הוא זמין לכולם.

העבודה שלו בנויה על מודולים של קוד פתוח תחת רישיון MIT, כולל dependabot-core שנכתב בעיקר ב-Ruby ומחזיק את הלוגיקה לעדכון הגרסאות, ו-cli שנכתב ב-Go להרצת משימות העדכון. המערכת כוללת גם רכיבים כמו proxy שנכתב ב-Go לניהול אימות מול שרתי גיט ומאגרי חבילות, ו-fetch-metadata ב-TypeScript לחילוץ נתונים על התלויות. מי שרוצה להריץ אותו עצמאית יכול להשתמש במאגר הרשמי שמסביר איך להרים את הכלים בשרתים פרטיים, אבל רוב המפתחים פשוט מפעילים אותו מתוך המאגר המאוחסן בלי לגעת בתשתיות.

כמה זה עולה בפועל

השימוש הבסיסי בעדכוני אבטחה וגרסאות מגיע במחיר של 0 דולר לחודש למשתמש בחשבון Free, והוא פועל במאגרים ציבוריים ופרטיים בלי הגבלה על כמות הפרויקטים. אם אתם עובדים בצוות וזקוקים לניהול הרשאות ענפים מתקדם, בעלי קוד או בדיקות מרובות, מסלול Team עולה 4 דולר למשתמש לחודש לשנה הראשונה. מעבר לכך, מסלול Enterprise מתחיל במחיר של 21 דולר למשתמש לחודש לשנה הראשונה, וכולל תקופת ניסיון חינם של 30 יום לארגונים שרוצים לבדוק ניהול מרכזי ומדיניות אבטחה רחבה.

החשבון קופץ בעיקר בגלל צרכים ארגוניים ולא בגלל כמות העדכונים של הספריות. תשלומים נוספים נכנסים לתמונה רק אם אתם צורכים משאבי מחשוב מורחבים מעבר למכסה החינמית של בדיקות CI/CD, או שאתם מוסיפים שכבות הגנה ארגוניות ייעודיות כמו כללי תעבורת התראות אוטומטיים. עבור מפתח בודד, פרילנסר או סטארטאפ קטן שרק צריך שהספריות בפרויקט לא יצברו אבק, מסלול החינם נותן את כל מה שצריך לעבודה השוטפת, ואין שום סיבה אמיתית לשדרג למסלולים היקרים רק עבור עדכוני קוד שוטפים.

מה הוא מבצע בפועל

  1. סריקת תלויות שגרתית
  2. יצירת בקשות משיכה
  3. חילוץ מידע על ספריות
  4. אימות מול מאגרי חבילות
  5. הרצת עבודות עדכון עצמאיות

למי זה מתאים בעבודה

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

הצפת בקשות משיכה היא בעיה אמיתית.

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

אם תחליטו להפסיק להשתמש בו, אין שום נעילת נתונים שמחזיקה אתכם בפנים, כי כל השינויים שהוא עשה כבר נכנסו ישירות להיסטוריית הגיט של הפרויקט שלכם. אתם לא תלויים בשרת חיצוני כדי להמשיך להשתמש בקוד המעודכן, ואפשר פשוט לבטל את ההגדרות שלו בקובצי התצורה או לכבות את ההתראות במאגר. מי שרוצה להתנתק לחלוטין מהענן יכול לקחת את פרויקט dependabot-core או את ה-cli ולהריץ אותם על שרתים פרטיים, היות שהקוד זמין לציבור ומאפשר אחסון עצמאי.

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

כל עובדה בעמוד נקראה מהאתר של Dependabot בתאריך שרשום למעלה. מחירים ומגבלות משתנים; לפני שמשלמים, בודקים בעמוד המחירון שלהם. מצאתם טעות? כתבו.