تجمیع پیوسته و تضمین کیفیت سورس کد
آموزش طراحی و پیادهسازی CI/CD با Jenkins، Docker و SonarQube برای تست پیوسته، خودکارسازی ساخت و ارزیابی کیفیت سورس کد


در این کارگاه، فرآیند تجمیع پیوسته (CI/CD) و تضمین کیفیت سورس کد با تمرکز بر Jenkins، Docker و SonarQube بهصورت عملی آموزش داده میشود.
معرفی کارگاه
برای اجرای تست پیوسته و خودکار در پروژههای نرمافزاری، وجود یک چارچوب تجمیع پیوسته (CI/CD) ضروری است.
در این کارگاه، مفاهیم و ابزارهای اصلی CI/CD بررسی شده و شرکتکنندگان با نحوه طراحی، پیادهسازی و مدیریت Pipelineهای خودکار آشنا میشوند.
یکی از محورهای کلیدی این کارگاه، ارزیابی کیفیت سورس کد در زبانها و فناوریهای مختلف و یکپارچهسازی این فرآیند با چرخه توسعه نرمافزار است.
مراحل کلی کارگاه
آشنایی با مفاهیم CI/CD و زیرساخت
درک مفاهیم پایه تجمیع پیوسته، خودکارسازی و زیرساخت بهعنوان کد.
پیادهسازی Pipelineهای عملی
طراحی و پیادهسازی Pipelineهای Jenkins برای پروژههای واقعی با استفاده از Docker.
تضمین کیفیت و تحلیل سورس کد
ارزیابی کیفیت سورس کد و یکپارچهسازی ابزارهای تحلیل استاتیک در چرخه CI/CD.
سرفصلهای کارگاه
- مفاهیم پایه تجمیع پیوسته و تحویل پیوسته
- مقدمهای بر Jenkins
- نصب و راهاندازی Jenkins
- مقدمهای بر Docker
- ساخت یک اپلیکیشن نمونه در Jenkins با استفاده از Docker
- اجرای تست و Build در Docker Containerها
- مقدمهای بر Infrastructure as Code
- مفاهیم Jenkins Job DSL
- استفاده از Jenkins Job DSL در ساخت اپلیکیشنها
- مقدمهای بر Pipelineها در Jenkins
- تفاوت Pipelineها و Jenkins Job DSL
- بررسی مثال Pipeline در پروژه:
- Java + Maven
- Node.js
- یکپارچهسازی Jenkins با GitHub
- یکپارچهسازی Jenkins با GitLab
- یکپارچهسازی Jenkins با Bitbucket
- اتصال Jenkins به پروژههای Java با Maven یا Gradle
- مقدمهای بر Jenkins Slave / Agent
- راهاندازی Agent با استفاده از SSH
- بررسی Blue Ocean
- Authentication و Authorization در Jenkins
- راهاندازی SonarQube
- شناخت مولفههای SonarQube
- تحلیل سورس کد پروژههای Maven و Gradle
- یکپارچهسازی SonarQube با Jenkins
- یکپارچهسازی SonarQube با IDEهای توسعه