کتاب Learning GitHub Actions: Automation and Integration of CI/CD with GitHub (آموزش اقدامات GitHub: اتوماسیون و ادغام CI/CD با GitHub) راهنمای اتوماسیون در گیتهاب است که در 4 بخش مختلف شرح کارهای مورد نظر برای اتوماسیون اصولی در آن را آموزش میدهد.
در ادامه مقدمهای از کتاب Learning GitHub Actions را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Learning GitHub Actions:
انتشار نرم افزار باید آسان باشد.… تقریباً همه چیز را خودکار کنید و هر آنچه را که برای ساخت، استقرار، آزمایش و انتشار برنامه خود نیاز دارید در کنترل نسخه نگه دارید.
دیوید فارلی، تحویل مستمر: انتشار نرمافزار قابل اعتماد از طریق اتوماسیون ساخت، آزمایش و استقرار
در سال 1968، متروی لندن در بریتانیا به یک علامت دیجیتالی نیاز داشت تا به مسافران هشدار دهد که هنگام عبور از شکافهای بین درهای قطار و سکوهای ایستگاه مراقب باشند. از آنجایی که ذخیره سازی اطلاعات برای چنین علائمی در آن روز بسیار گران بود، آنها یک عبارت بسیار کوتاه را برای کمک به هوشیار نگه داشتن سوارکاران انتخاب کردند: “به شکاف توجه کنید”.
این روزها، کلمه “ذهن” کمتر مورد استفاده قرار میگیرد، اما قصد آگاهی دادن به بخشهای از دست رفته یا چیزهایی که میتوانند شما را غافلگیر کنند و عمل به آنها هنوز معنادار است. و زمانی که این ایده را در فرآیندهای تجاری و فنی که میتوانند از اتوماسیون سود ببرند به کار ببریم، به همان اندازه مهم است.
GitHub از زمان آغاز به کار خود در سال 2008، شکافهایی را در زمینه اجازه دادن به کاربران برای همکاری و ایجاد جوامع پیرامون نرم افزار منبع باز پر کرده است. و این کار را به خوبی انجام داده است. این چالش برانگیز است که اهمیت مدل میزبانی SaaS را که GitHub پیشگام بود و اکوسیستم مشترکی که حول آن ساخته است، دست بالا نگیرید. با این حال تا چند سال پیش، یک قطعه کلیدی از آن اکوسیستم وجود داشت که به وضوح گم شده بود – یک پلت فرم اتوماسیون کاملاً یکپارچه برای عملکردهای کلیدی مانند CI/CD.
مطمئناً هیچ کمبودی در برنامههایی که برای پر کردن این شکاف کار کردهاند، وجود نداشته است. ابزارهایی مانند Jenkins، Travis CI، CircleCI، Azure DevOps و غیره روشهای یکپارچه سازی را از طریق رویکردهای مختلف مانند webhooks ارائه کرده اند. با این حال، کاربران GitHub هنوز مجبور بودند از محیط همکاری خود خارج شوند تا از برنامه دیگری برای دریافت عملکرد اولیه مورد نیاز خود استفاده کنند. همه اینها با اضافه شدن GitHub Actions تغییر کرده است.
دستهبندی کنشها با یک نامگذاری مستقل چالش برانگیز است. این یک توسعه منطقی از مدل بزرگتر GitHub است. و در حالی که این یک کتاب کلی در مورد GitHub نیست، من سعی کرده ام آن را به گونه ای بنویسم که بدون توجه به سطح تجربه شما با اتوماسیون در GitHub، بتوانید ببینید که چگونه GitHub Actions با اکوسیستم بزرگتر GitHub بازی میکند.
ساختار کتاب Learning GitHub Actions
از آنجایی که شما در حال خواندن این کتاب هستید، تصور میکنم حداقل تا حدودی در مورد پتانسیل اکشنها کنجکاو هستید و شاید حتی هیجان زده باشید. من سعی کردهام این پتانسیل را همراه با جزئیات مربوطه در سراسر متن به تصویر بکشم. بنابراین اجازه دهید کمی در مورد سازماندهی این کتاب Learning GitHub Actions و اینکه چگونه می توانید بیشترین بهره را از آن ببرید به شما بگویم.
بخش اول: مبانی
مانند هر سفر فنی، ما شروع به بحث در مورد مبانی GitHub Actions میکنیم. قسمت اول کتاب Learning GitHub Actions اصول اولیه چیستی GitHub Actions و نحوه عملکرد آن را پوشش میدهد و به شما کمک میکند قطعات اصلی آن و نحوه پیمایش جریان آن را درک کنید. هدف من در اینجا این است که به سؤالات اساسی چرایی و چگونه پاسخ دهم که برای راهاندازی و اجرای این فناوری باید بدانید، و در عین حال بینش و درک درستی را در اختیار شما میگذارم تا پایههای محکمی را برای شروع استفاده از اقدامات خود ایجاد کنید.
بخش دوم: بلوکهای ساختمانی
قسمت دوم کتاب Learning GitHub Actions، عمق دانش شما را در مورد Actions با بلوکهای سازنده گسترش میدهد تا از طیف وسیعتری از گزینههای موجود برای پیکربندی، اشتراکگذاری و ذخیره دادهها، و راهاندازی و کنترل اجرای گردشهای کاریتان استفاده کنید. این تکنیکها هسته اصلی استفاده از اقدامات برای انجام وظایف خود را تشکیل میدهند، در حالی که به شما نشان میدهند چگونه استفاده از آنها را مطابق با نیازهای خود سفارشی کنید.
بخش سوم: امنیت و نظارت
استفاده از یک فناوری شامل الزام صریح برای استفاده ایمن از آن است. و نیاز به درک جنبه های امنیتی هر فناوری جدید بسیار مهم است. بنابراین، قسمت سوم کتاب Learning GitHub Actions، حوزههای کلیدی امنیت و نظارت را مورد بحث قرار میدهد. این بخش به امنیت لنزهای سهگانه پیکربندی، طراحی و نظارت میپردازد. سپس با تشریح گزینههای مختلف در دسترس برای ورود به سیستم و تکنیکهای موجود برای مشکلات اشکالزدایی، به نظارت بیشتر میپردازد.
بخش چهارم: مباحث پیشرفته
وقتی برای تعامل پیشرفتهتر با Actions آماده باشید، قسمت IV اطلاعاتی درباره تعدادی از موضوعات کمتر معمولی (اما مسلماً سرگرمکنندهتر) ارائه میکند. اینها شامل ایجاد کنشهای سفارشی خود، ایجاد گردشهای کاری آغازگر و گردشهای کاری قابل استفاده مجدد، کار با GitHub CLI، APIها و استفاده از استراتژیها و کانتینرهای ماتریس در گردشهای کاری شما است. و برای پایان دادن به کار، نکات و نمونههایی را در مورد نحوه مهاجرت به GitHub Actions در صورت استفاده از ابزارهای اتوماسیون دیگری آوردهام. آخرین فصل کتاب Learning GitHub Actions همچنین شامل بررسی عمیق و نمونههایی از ابزار جدید GitHub Importer برای کمک به بوت استرپ و خودکارسازی مهاجرت است.
با در نظر گرفتن این ساختار کلی، بخش بعدی تفکیک بیشتری بر اساس نوع مخاطب ارائه میکند.
مخاطب مورد نظر
کتاب Learning GitHub Actions برای هرکسی است که سعی میکند درباره GitHub Actions اطلاعات بیشتری کسب کند. اگر این کتاب را انتخاب میکنید، باید قبلاً دانش اولیه Git و GitHub داشته باشید، و اکنون در تلاش هستید تا نحوه پیادهسازی Actions را در گردش کار خود بیابید. احتمالاً تجربهای با راه حلهایی مانند Jenkins، Travis CI و غیره دارید، و پلت فرم اتوماسیون و چارچوب GitHub Actions ممکن است روند چرخه عمر توسعه نرم افزار شما را بهبود بخشد.
ممکن است شما یک توسعهدهنده نرمافزار، SRE، مهندس DevOps یا چیز دیگری باشید، اما امیدوارم که بخشهای ذکر شده در بالا راهحل یادگیری کاملی برای GitHub Actions برای همه خوانندگان ارائه دهد. در اینجا مخاطبانی هستند که در هنگام نوشتن آن در ذهن داشتم و فکر میکنم میتوانند از آن بهره ببرند:
کسانی که به تازگی (یا تازه کار) در GitHub هستند و به دنبال درک نحوه عملکرد مؤلفه اتوماسیون آن هستند
کسانی که از قبل مفاهیم و جریان GitHub Actions را درک کردهاند و برای پیادهسازی کد و نحو برای گردشهای کاری به کمک میخواهند یا نیاز دارند.
کسانی که میخواهند اقدامات GitHub را به عنوان یک هدف بالقوه CI/CD/اتوماسیون درک و ارزیابی کنند.
کسانی که قبلاً تجربه ای با GitHub Actions دارند و میخواهند از آن به طور کامل برای اهداف سفارشی استفاده کنند.
کسانی که روی پیاده سازی کار میکنند یا GitHub Actions را پیاده سازی کرده اند و باید مطمئن شوند که آن را ایمن انجام میدهند.
کسانی که مسئول هستند یا میخواهند GitHub Actions را در یک بخش، سازمان یا واحد اجرا کنند
کسانی که کاربران با تجربه GitHub هستند و میخواهند راه حلهای CI/CD فعلی خود را به GitHub Actions منتقل کنند.
اگر یکی از این موارد با شرایط استفاده شما مطابقت دارد، امیدوارم کتاب ارزش مورد نظرتان را به شما ارائه دهد. اگر آن را بخوانید و فرصت داشته باشید، بازخورد همیشه از طریق بررسی یا تعامل در کنفرانسها یا مکانهای آموزشی آینده پذیرفته میشود.
سرفصلهای کتاب Learning GitHub Actions:
- Foreword
- Preface
- I. Foundations
- 1. The Basics
- 2. How Does Actions Work?
- 3. What’s in an action?
- 4. Working with Workflows
- 5. Runners
- II. Building Blocks
- 6. Managing Your Workflow Environments
- 7. Managing Data Within Workflows
- 8. Managing Workflow Execution
- III. Security and Monitoring
- 9. Actions and Security
- 10. Monitoring, Logging, and Debugging
- IV. Advanced Topics
- 11. Creating Custom actions
- 12. Advanced Workflows
- 13. Advanced Workflow Techniques
- 14. Migrating to GitHub Actions
- Index
- About the Author
جهت دانلود کتاب Learning GitHub Actions میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.