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

1. AppFirst
AppFirst נוטה להתעסק בחלקים של DevOps שנמצאים בקצה רשימת המטלות של כולם, במודולי Terraform שממשיכים להתרבות, בכללי הרשתות שאתה נשבע שעבדו בשבוע שעבר, ובשינויים קטנים בענן שהופכים לפרויקט מקרי של חצי יום. במקום להתמודד עם כל חלק בנפרד, אתם אומרים ל-AppFirst מה האפליקציה צריכה, והיא בונה את הסביבה על סמך התיאור הזה. בהתחלה זה מרגיש כמעט כמו צעד אחורה, כמו לדלג לעמוד האחרון בספר, אבל זה עובד.
אנשים שעוזבים את CircleCI מבינים לעתים קרובות, לפעמים בעל כורחם, שהצינור לא היה מקור הבעיה האמיתי. מקור הבעיה הוא כל מה שמסביבו: יומנים מפוזרים פה ושם, התראות במקום אחר, נתוני עלויות מוסתרים בלוח מחוונים שסימנתם בחצי לב. AppFirst מנסה לאגד את כל המערך הזה במקום אחד. ולא ממש אכפת לה אם אתם ב-AWS, Azure או GCP, מה שעוזר להימנע מתחושת ה“נראה שאנחנו עכשיו חנות בענן אחד” המלכודתית.
נקודות עיקריות:
- בונה תשתית על בסיס התיאור של האפליקציה.
- רישום, ניטור והתראות אינם מתווספים לאחר מעשה.
- ביקורת ומידע על עלויות במקום אחד.
- ענן-אגנוסטי בכל AWS, Azure, GCP.
- SaaS או אירוח עצמי, בהתאם לאופן העבודה של הצוות שלכם.
שירותים:
- ניהול תצורה וניהול מחזור חיים.
- רישום וניטור לפי סביבה.
- תמיכה בתאימות ובביקורת.
- מעקב אחר השימוש והעלויות.
- אפשרויות פריסה מרובות עננים.
פרטי קשר:
- אֲתַר אִינטֶרנֶט: www.appfirst.dev

2. Travis CI
Travis CI נוקט בגישה של “אל נחשוב על זה יותר מדי”. אתה משליך קובץ תצורה לריפו שלך, וזה הופך לתוכנית הבנייה, הבדיקה, הפריסה – הכל. זה מפתיע עד כמה זה בסיסי, במיוחד כשאתה מגיע ממערכות שבהן התצורה פרושה על פני חמישה ספריות ודף ויקי משנת 2018.
בנייה מקבילה, הגדרת מטריצות, תמיכה בשפות – אף אחד מהדברים האלה לא מרגיש תיאטרלי במיוחד. Travis לא מנסה להמציא מחדש את CI/CD; הוא בעיקר נשאר בצד. בהשוואה ל-CircleCI, יש לו אישיות שקטה יותר. שום דבר לא צועק כדי למשוך תשומת לב.
נקודות עיקריות:
- קובץ אחד מניע את כל הצינור.
- מטפל בבניית מקבילים ומטריצות.
- עובד עם השפות הרגילות ללא בעיות.
- הודעות ואינטגרציות קיימות, אך אינן פולשניות.
- פועל על מערכות הפעלה/ארכיטקטורות שונות.
שירותים:
- טיפול בצינור CI/CD.
- ביצוע בסביבות מרובות.
- חיבורי בקרת גרסאות.
- בנה יומני רישום וכלים לאיתור באגים.
- תצורה כקוד לבדיקות ופריסה.
פרטי קשר:
- אתר אינטרנט: www.travis-ci.com

3. GitHub
GitHub Actions נמצא בדיוק באותו המרחב שבו מרבית המפתחים כבר מבלים, ייתכן שזמן רב מדי. בקשת משיכה מעירה משהו, דחיפה מפעילה משהו אחר, והמערכת כולה מרגישה פחות כמו תוספת ויותר כמו שכן שמציץ מעבר לגדר בדיוק ברגע הנכון.
זרימות העבודה פועלות ב-YAML, ושילוב פעולות Marketplace עם סקריפטים משלך הוא משום מה מספק, כמו חיבור חלקי פאזל שונים זה לזה. מכיוון ש-Actions מתחבר ישירות לבדיקות האבטחה, התלונות על תלות וזרם הבדיקה של GitHub, הוא בסופו של דבר מתערב בחלקים של התהליך שלך שלא ציפית שייגע בהם. לא במובן הרע, פשוט... זה קורה.
נקודות עיקריות:
- אוטומציה בתוך המאגר.
- זרימות עבודה המופעלות על ידי פעילות ריפו אמיתית.
- מבחר עצום של פעולות לשימוש חוזר.
- מחובר למערכות האבטחה והבדיקה של GitHub.
- מטפל במשימות מחוץ ל-CI/CD המסורתי.
שירותים:
- תזמור זרימות עבודה.
- בנה, בדוק ופרסם שגרות.
- סריקת אבטחה ותלות.
- ערכות פעולות לשימוש חוזר.
- אוטומציה מונעת אירועים.
פרטי קשר:
- אתר אינטרנט: github.com
- LinkedIn: www.linkedin.com/company/github
- טוויטר: x.com/github
- אינסטגרם: www.instagram.com/github

4. צינורות BitBucket
Bitbucket Pipelines מרגיש לעתים קרובות כמו הרחבה של עולם Atlassian ולא ככלי נפרד, וזה הגיוני, כי זה אכן המצב. אם הצוות שלכם כבר שוחה ב-Jira tickets ובדפי Confluence, Pipelines לא מציג את עצמו בצורה דרמטית; הוא פשוט מתממש ליד הקוד.
ניתן להפעיל צינורות על מחשבי Atlassian או על מחשבים משלכם. Atlassian הוסיפה כמה עוזרים קטנים מבוססי בינה מלאכותית, שום דבר מרשים במיוחד, אבל מספיק כדי להקל על איתור באגים או בדיקת גרסאות לא יציבות. צוותים גדולים יותר בדרך כלל מעריכים את אמצעי ההגנה: אכיפת מדיניות, עקביות בין מאגרי נתונים, דברים מסוג זה.
נקודות עיקריות:
- CI/CD מובנה בתוך Bitbucket.
- מתחבר בקלות ל-Jira ו-Confluence.
- רצים מארחים או פרטיים.
- הנחיות AI למיון ובדיקה.
- בקרות ברמת הארגון.
שירותים:
- ביצוע צינור בתוך Bitbucket.
- שילוב עם מערכות אחרות של Atlassian.
- ניהול תאימות ומדיניות.
- רכיבי זרימת עבודה בסיוע בינה מלאכותית.
- ניטור מרכזי של בנייה/פריסה.
פרטי קשר:
- אתר אינטרנט: bitbucket.org
- פייסבוק: www.facebook.com/Atlassian
- טוויטר: x.com/bitbucket

5. Azure DevOps
Azure DevOps מנסה לרכז את מרבית מחזור החיים של התוכנה במקום אחד. לפעמים זה מקל, פחות כרטיסיות בדפדפן, פחות רגעים של “רגע, איפה זה נמצא?”. לוחות, מאגרים, תוכניות בדיקה וצינורות כולם מסתובבים סביב אותה מערכת, וזה נוטה להיות הגיוני יותר לאחר שמתרגלים אליה.
צינורות עצמם לא מתעסקים במיקום שבו מאוחסן הקוד שלך, והכלים הנלווים, הזנות החבילות, הסריקה, זרימות השחרור, לא מרגישים כמו תוספות מאולצות. זו תצורה שמכוונת להמשכיות, לא לחוכמה, ובאופן כללי היא מחזיקה מעמד.
נקודות עיקריות:
- צינורות עבור מגוון רחב של שפות ועננים.
- לוחות לתכנון ומעקב.
- כלי בדיקה ידניים/חקירתיים מובנים.
- אחסון Git עם תהליכי עבודה לבדיקה.
- הזנת חבילות וניהולן.
שירותים:
- צינורות CI/CD.
- תכנון עבודה ומעקב אחר משימות.
- בדיקות ידניות/חקרניות.
- אחסון Git ושיתוף פעולה.
- יצירת חבילות והפצתן.
פרטי קשר:
- אתר אינטרנט: azure.microsoft.com
- LinkedIn: www.linkedin.com/showcase/microsoft-azure
- טוויטר: x.com/azure
- אינסטגרם: www.instagram.com/microsoftazure
6. GitLab
GitLab מנסה לאגד את כל שרשרת DevSecOps תחת קורת גג אחת – בקרת גרסאות, צינורות, בעיות, ביקורות, לוחות תכנון, סריקות אבטחה. הכל נמצא שם, לפעמים בצורה צפופה מדי, אבל זה אכן מפשט את העומס המנטלי. הצינורות נמצאים בתוך המאגר, לצד כל השאר, מה שמאפשר סנכרון בין התצורה לקוד.
היתרון של ריכוז כל כך הרבה חלקים נעים במקום אחד הוא שאתה יכול לעקוב אחר שינוי מרעיון מעורפל ועד למוצר מוגמר מבלי לקפוץ לצדדים לכלים אקראיים. יש בזה תחושה של קוהרנטיות.
נקודות עיקריות:
- CI/CD משולב עם בקרת גרסאות.
- תצורת הצינור מאוחסנת עם הקוד.
- כלי אבטחה ותאימות מובנים.
- כלי תכנון ובקרה באותה מערכת.
- כיסוי DevSecOps נרחב בסביבה אחת.
שירותים:
- אוטומציה של צינורות.
- אחסון Repo וצירוף זרימות עבודה.
- בדיקות איכות קוד ואבטחה.
- לוחות מעקב ותכנון בעיות.
- כלים לתיאום ובדיקת עבודה.
פרטי קשר:
- אתר אינטרנט: about.gitlab.com
- פייסבוק: www.facebook.com/gitlab
- LinkedIn: www.linkedin.com/company/gitlab-com
- טוויטר: x.com/gitlab

7. AWS CodePipeline
CodePipeline מרגיש כמו כלי CI/CD שנולד בתוך AWS ופשוט לא ראה שום סיבה לעזוב. הכל מחולק לשלבים, בנייה, בדיקה, פריסה, וכל אחד מהם מתחבר בצורה מסודרת לשירות AWS שאתה כבר מסתמך עליו. מכיוון שהכל נמצא בתוך אותה מערכת אקולוגית, אין צורך להתמודד עם סוכנים נשכחים או עם שרת מסתורי שמזמזם מתחת לשולחנו של מישהו.
צוותים שכבר עמוק ב-AWS בדרך כלל מסתגלים אליו בלי הרבה טקסים. הצינורות מתקדמים בשלבים מסודרים, יותר כמו צנרת ברקע שעושה את עבודתה בזמן שכולם דואגים לדברים אחרים.
נקודות עיקריות:
- CI/CD מנוהל במלואו בתוך AWS.
- בנייה/בדיקה/פריסה מסודרות בשלבים.
- קשרים הדוקים לשירותי AWS.
- תומך בפעולות מותאמות אישית וחיצוניות.
- אין צורך בתחזוקת סוכנים או שרתים.
שירותים:
- תזמור צינורות.
- אוטומציה באמצעות כלים מקוריים של AWS.
- תמיכה בפעולות מותאמות אישית.
- אירוע + ווים להתראות.
- טיפול בגישה ובהרשאות.
פרטי קשר:
- אתר אינטרנט: aws.amazon.com
- פייסבוק: www.facebook.com/amazonwebservices
- לינקדאין: www.linkedin.com/company/amazon-web-services
- טוויטר: x.com/awscloud
- אינסטגרם: www.instagram.com/amazonwebservices
8. TeamCity
TeamCity נמצא איפשהו בין “בואו נלחץ על כמה כפתורים ונקווה לטוב” לבין “בסדר, בואו נכתוב סקריפט לכל הדבר”. נראה שהוא לא מתנגד לאף אחת מהגישות. שרשראות בנייה, שלבים הניתנים לשימוש חוזר, פריסות מרובות-מאגרים, כל הדברים שהפרויקטים האמיתיים בסופו של דבר מתפתחים אליהם, בין אם מישהו התכוון לכך ובין אם לא, הם חלק מהחבילה.
הוא מנסה לאתר בעיות בשלב מוקדם ומקצר את זמן ההמתנה באמצעות בדיקות מקבילות. ניתן להריץ אותו בענן או לשמור אותו באתר אם אתם נמנים עם הצוותים שעדיין מתגאים בניהול המכונות שלכם בעצמכם. יש בו גמישות מסוימת שנותנת תחושה של מוצר שנוצר מתוך ניסיון מעשי ולא מתוך רצון ליצור מוצר מושלם.
נקודות עיקריות:
- בנה שרשראות ושלבים הניתנים לשימוש חוזר.
- תצורת UI או DSL.
- בדיקות מקבילות ומשימות משותפות.
- עובד עם הגדרות מרובות-מאגרים.
- אחסון בענן או באתר הלקוח.
שירותים:
- הגדרת צינור CI/CD.
- בנה דוחות ותובנות.
- ניהול סוכנים.
- תצורה כקוד.
- כלי כוונון צינורות.
פרטי קשר:
- אתר אינטרנט: www.jetbrains.com
- דוא"ל: sales@jetbrains.com
- פייסבוק: www.facebook.com/JetBrains
- LinkedIn: www.linkedin.com/company/jetbrains
- טוויטר: x.com/jetbrains
- אינסטגרם: www.instagram.com/jetbrains
- כתובת: Kavčí Hory Office Park, Na Hřebenech II 1718/8, Praha 4 – Nusle, 140 00, צ'כיה

9. במבוק
Bamboo מרגיש כאילו הוא פשוט צמח בתוך המערכת האקולוגית של Atlassian, Jira כאן, Confluence שם, והוא משתלב בלי להתאמץ יותר מדי. אם הצוות שלכם כבר מבלה חצי מהשבוע בלהתעסק עם כרטיסים ותיעוד בכלים האלה, Bamboo מרגיש יותר כמו מסדרון נוסף מאשר כמו בניין חדש לגמרי. תהליך הבנייה והפריסה מתקדם בקצב יציב וצפוי.
הוא כולל גם תכונות שפותחו עבור צוותים ש... נגיד... “התפשטו” לאורך השנים: תצורות זמינות גבוהה, הגדרות לשחזור לאחר אסון, תמיכה ב-Docker, חיווט AWS CodeDeploy. ומכיוון שהוא קשור ל-Jira ו-Bitbucket, המשימות והקוד לא מתפזרים לשני עולמות נפרדים.
נקודות עיקריות:
- אוטומציה מבנייה לפריסה.
- אפשרויות זמינות גבוהה.
- חיבורים עמוקים בין Jira ל-Bitbucket.
- תמיכה ב-Docker וב-AWS CodeDeploy.
- מתאים לצוותים קטנים ועד גדולים.
שירותים:
- אוטומציה של בנייה ופריסה.
- אינטגרציות של מערכת אקולוגית Atlassian.
- כלי שחזור לאחר אסון.
- חיבורי Opsgenie.
- ניהול צינורות.
פרטי קשר:
- אתר אינטרנט: www.atlassian.com
- כתובת: 350 Bush Street Floor 13 San Francisco, CA 94104 ארצות הברית
- מספר טלפון: +1 415 701 1110

10. באדי
Buddy עובר בין העורך החזותי שלו ל-YAML בהתאם לכמות האנרגיה המנטלית שנותרה לכם. הוא משתלב באופן טבעי בתהליך העבודה של CI/CD, ניתן לפריסה כמעט בכל מקום, ספקי ענן, מכונות VPS, שרתים מקומיים, והוא לא מנדנד לכם לגבי השימוש בסוכנים או לא.
מחוץ לתהליך הרגיל של בנייה ובדיקה, הוא מגיע עד לאספקת סביבות. סביבות תצוגה מקדימה הקשורות לענפים או PR מקלות על הבנת המצב לפני שדברים מתמזגים ומפתיעים את מחצית הצוות.
נקודות עיקריות:
- נפרס על סוגים רבים של מטרות.
- צינורות חזותיים או YAML.
- ביצוע מבוסס סוכן או ללא סוכן.
- אירועים המופעלים מ-GitHub, AWS, Slack וכו'.
- סביבות תצוגה מקדימה אוטומטיות.
שירותים:
- CI/CD עם מטמון ומטריצה.
- אוטומציה של פריסה.
- סודות + טיפול ב-OIDC.
- הקצאת סביבות.
- כלי בדיקה חזותיים.
פרטי קשר:
- אתר אינטרנט: buddy.works
- אֶלֶקטרוֹנִי: support@buddy.works
- טוויטר: x.com/useBuddy
11. ג'נקינס
Jenkins קיים כבר כל כך הרבה זמן, שבחלק מהארגונים הוא מרגיש כמעט כמו מתקן קבוע, כמו מתלה שרתים שקדם לכל הנוכחים בחדר. הוא מותקן כמעט על כל דבר, כמעט ולא מתלונן, ויש לו מערכת אקולוגית של תוספים.
צוותים שונים מתייחסים ל-Jenkins בצורה שונה מאוד. חלקם שומרים על סדר וניהוליות. אחרים בונים רשתות אוטומציה נרחבות שרק שני אנשים באמת מבינים את הקשרים ביניהן. הוא מטפל בבניית תוכנה מבוזרת, אינו קושר אותך לספק כלשהו, ומעניק לך את כל החופש שאתה יכול לרצות, בתוספת התחזוקה הבלתי נמנעת הנלווית לחופש הזה.
נקודות עיקריות:
- מערכת תוספים ענקית.
- התקנה פשוטה.
- הדרכה מובנית לממשק המשתמש.
- תמיכה בבנייה מבוזרת.
- מתאים הן להתקנות פשוטות והן להתקנות מורכבות ביותר.
שירותים:
- אוטומציה של צינורות.
- אינטגרציות מבוססות תוספים.
- ביצוע מבוזר.
- ניהול מבוסס אינטרנט.
- תמיכה רחבה בתהליכי בנייה/בדיקה/פריסה.
פרטי קשר:
- אתר אינטרנט: www.jenkins.io
- LinkedIn: www.linkedin.com/company/jenkins-project
- טוויטר: x.com/jenkinsci

12. Buildkite
Buildkite מחלקת את האחריות: היא מתאמת את הדברים מהענן, אך המכונות שלכם מטפלות בבנייה עצמה. אין רצים משותפים שגונבים משאבים, אין תורים מסתוריים שמתקדמים לאט, אתם יודעים בדיוק היכן מתבצעת העבודה.
האישיות שלו נוטה לבהירות ועקביות. צינורות יכולים לשקף את מבנה המערכת שלך במקום לכפות על הכל פורמט אחד. הגדלה מרגישה יותר כמו הוספה עדינה של חלק נוסף מאשר פירוק כל המבנה.
נקודות עיקריות:
- תזמור ענן + רצים מנוהלים עצמית.
- פלט בנייה נקי וקריא.
- מתאים לתהליכי עבודה ספציפיים לארכיטקטורה.
- רישום וניתוח מפורטים.
- משקל ללא הרבה טרחה.
שירותים:
- צינורות CI עם סוכנים המנוהלים על ידי צוות.
- התאמה אישית של זרימת העבודה.
- בנה יומני בנייה ותובנות.
- כלי עזר להגדלה.
- סביבות ביצוע מבוקרות.
פרטי קשר:
- אתר אינטרנט: buildkite.com
- LinkedIn: www.linkedin.com/company/buildkite
- טוויטר: x.com/buildkite
מַסְקָנָה
כשמציבים את כל הכלים האלה זה לצד זה, מתברר די מהר שאין סיפור אחד שצוותים עוקבים אחריו ברגע שהמבנה הישן שלהם מתחיל להרגיש צפוף. יש כאלה שרוצים שהכל יהיה מאוגד יחד, כדי שלא יצטרכו לזכור איזה חלון או כרטיסייה מכילים מה. אחרים נמשכים למערכות שקטות יותר, שנעלמות ברקע. ויש קבוצות שזקוקות לחופש לעצב צינורות סביב המבנה המוזר שהפרויקט שלהן התפתח אליו.
רוב הצוותים יכולים לחוש מתי זרימת העבודה שלהם מתחילה להקשות עליהם. בשלב זה, אין טעם לחפש תכונות נוצצות, אלא למצוא תצורה שלא תפריע לאופן שבו הצוות כבר עובד. לכל אחד מהכלים האלה יש אופי משלו; הסוד הוא למצוא את זה שלא מרגיש זר לכם.


