دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۶
  • اردیبهشت

جلسه ۲۶ : آشنایی با مجوزهای CI در گیت لب GitLab

  • دسته‌بندی‌ها :
جلسه ۲۶ : آشنایی با مجوزهای CI در گیت لب GitLab
    • جزئیات
    • نوع محتواآموزشی

      سلام به همه پی وی لرنی های عزیز!
      به دوره آموزشی گیت لب GitLab خوش آمدید.
      گیت لب خدماتی است که امکان دسترسی از راه دور به مخازن Git را فراهم می کند. علاوه بر میزبانی کد شما، این سرویس ویژگی های دیگری را ارائه می دهد که به منظور کمک به مدیریت چرخه توسعه نرم افزار طراحی شده است. این ویژگی های اضافی شامل مدیریت اشتراک گذاری کد بین افراد مختلف، ردیابی اشکال، فضای ویکی و سایر ابزارها برای “برنامه نویسی اجتماعی” یا “social coding” است.
      گیت لب شباهت های زیادی به گیت هاب github دارد و مانند آن حساب‌های میزبانی شده را ارائه می نماید و اجازه اجرا روی میزبانهای ثانویه را نیز می دهد. در دوره آموزش گیت لب GitLab قرار است در طی چندین جلسه شما را با گیت لب و کار با آن آشنا نمایم.
      در جلسه گذشته مفصلاً به معرفی متغیرهای CI / CD در گیت لب پرداختیم و با هر یک از این متغیر ها و کارکرد آن ها آشنا شدیم.
      اما این جلسه از این دوره را به آشنایی با مجوزهای CI در گیت لب GitLab اختصاص داده ایم.

      آشنایی با مجوزهای CI در گیت لب GitLab

      برای آشنایی با مجوزهای CI در گیت لب GitLab ابتدا باید سطوح متغیر های اجازه کاربر را برای انواع مختلف کاربران در یک پروژه بشناسید؛ جدول زیر می تواند این موضوع را روشن تر نشان دهد.

      شمارهمهمان Guestگزارش کننده Reporterتوسعه دهنده Developerاستاد Masterمالک Owner
      ۱می تواند شماره جدیدی ایجاد کندمی تواند شماره جدیدی ایجاد کندمی تواند شماره جدیدی ایجاد کندمی تواند شماره جدیدی ایجاد کندمی تواند شماره جدیدی ایجاد کند
      ۲می تواند نظر دهدمی تواند نظر دهدمی تواند نظر دهدمی تواند نظر دهدمی تواند نظر دهد
      ۳قادر به نوشتن روی project wall استقادر به نوشتن روی project wall استقادر به نوشتن روی project wall استقادر به نوشتن روی project wall استقادر به نوشتن روی project wall است
      ۴قادر به pull کردن کد پروژه استقادر به pull کردن کد پروژه استقادر به pull کردن کد پروژه استقادر به pull کردن کد پروژه است
      ۵می تواند پروژه را بارگیری کندمی تواند پروژه را بارگیری کندمی تواند پروژه را بارگیری کندمی تواند پروژه را بارگیری کند
      ۶قادر به نوشتن قطعه کد استقادر به نوشتن قطعه کد استقادر به نوشتن قطعه کد استقادر به نوشتن قطعه کد است
      ۷می تواند درخواست ادغام جدید ایجاد کندمی تواند درخواست ادغام جدید ایجاد کندمی تواند درخواست ادغام جدید ایجاد کند
      ۸قادر به ایجاد شعبه جدید استقادر به ایجاد شعبه جدید استقادر به ایجاد شعبه جدید است
      ۹قادر به Push و حذف شعبه های محافظت نشده استقادر به Push و حذف شعبه های محافظت نشده استقادر به Push و حذف شعبه های محافظت نشده است
      ۱۰شامل برچسب ها استشامل برچسب ها استشامل برچسب ها است
      ۱۱می تواند milestones را ایجاد، ویرایش، حذف کندمی تواند milestones را ایجاد، ویرایش، حذف کندمی تواند milestones را ایجاد، ویرایش، حذف کند
      ۱۲می تواند commit status را ایجاد یا به روز کندمی تواند commit status را ایجاد یا به روز کندمی تواند commit status را ایجاد یا به روز کند
      ۱۳قادر به نوشتن wiki ها استقادر به نوشتن wiki ها استقادر به نوشتن wiki ها است
      ۱۴قادر به ایجاد environments های جدید استقادر به ایجاد environments های جدید استقادر به ایجاد environments های جدید است
      ۱۵می تواند jobs ها را لغو کرده و دوباره امتحان نمایدمی تواند jobs ها را لغو کرده و دوباره امتحان نمایدمی تواند jobs ها را لغو کرده و دوباره امتحان نماید
      ۱۶قادر است تصویر رجیستری را به روزرسانی و حذف کندقادر است تصویر رجیستری را به روزرسانی و حذف کندقادر است تصویر رجیستری را به روزرسانی و حذف کند
      ۱۷قادر است اعضای تیم جدید را اضافه نمایدقادر است اعضای تیم جدید را اضافه نماید
      ۱۸قادر به Push و حذف شعبه های محافظت شده است
      ۱۹قادر است پروژه را ویرایش کندقادر است پروژه را ویرایش کند
      ۲۰می تواند runnersها ، محرک های job و متغیرها را مدیریت کندمی تواند runnersها ، محرک های job و متغیرها را مدیریت کند
      ۲۱قادر است deploy keys را اضافه کندقادر است deploy keys را اضافه کند
      ۲۲قادر به مدیریت clusters استقادر به مدیریت clusters است
      ۲۳می تواند hooks های پروژه را پیکربندی کندمی تواند hooks های پروژه را پیکربندی کند
      ۲۴قادر است محافظت از شعبه را فعال یا غیر فعال کندقادر است محافظت از شعبه را فعال یا غیر فعال کند
      ۲۵قادر به بازنویسی یا حذف برچسب های Git استقادر به بازنویسی یا حذف برچسب های Git است

      بیایید در ادامه آشنایی با مجوزهای CI در گیت لب GitLab با سطح مجوزهای اعضای گروه در یک گروه گیت لب GitLab آشنا شویم.

      شمارهمهمان Guestگزارش کننده Reporterتوسعه دهنده Developerاستاد Masterمالک Owner
      ۱بررسی گروهبررسی گروهبررسی گروهبررسی گروهبررسی گروه
      ۲ویرایش گروه
      ۳ایجاد زیر گروه
      ۴ایجاد پروژه به صورت گروهیایجاد پروژه به صورت گروهی
      ۵مدیریت اعضای گروه
      ۶حذف گروه
      ۷مدیریت سطوح گروهمدیریت سطوح گروهمدیریت سطوح گروهمدیریت سطوح گروه
      ۸ساخت/ویرایش/حذف milestones های گروهساخت/ویرایش/حذف milestones های گروهساخت/ویرایش/حذف milestones های گروه
      ۹مشاهده group epic خصوصیمشاهده group epic خصوصیمشاهده group epic خصوصیمشاهده group epic خصوصی
      ۱۰
      ۱۱مشاهده group epic خارجیمشاهده group epic خارجیمشاهده group epic خارجیمشاهده group epic خارجیمشاهده group epic خارجی
      ۱۲مشاهده group epic عمومیمشاهده group epic عمومیمشاهده group epic عمومیمشاهده group epic عمومیمشاهده group epic عمومی
      ۱۳ایجاد / ویرایش group epicایجاد / ویرایش group epicایجاد / ویرایش group epicایجاد / ویرایش group epic
      ۱۴حذف group epic
      ۱۵مشاهده Audit Events های گروه

      به جدول زیر توجه نمایید؛ در ادامه آشنایی با مجوزهای CI در گیت لب GitLab  قرار است با مجوزهای GitLab CI / CD موجود در آن آشنا شویم. جدول زیر مجوزهای GitLab CI / CD موجود در گیت لب GitLab را نشان می دهد.

      شمارهReporter/Guestتوسعه دهنده Developerاستاد Masterمالک Owner
      ۱قادر به مشاهده commits ها و jobs ها استقادر به مشاهده commits ها و jobs ها استقادر به مشاهده commits ها و jobs ها استقادر به مشاهده commits ها و jobs ها است
      ۲قادر به دوباره امتحان کردن و کنسل کردن job استقادر به دوباره امتحان کردن و کنسل کردن job استقادر به دوباره امتحان کردن و کنسل کردن job است
      ۳قادر به جذف آثار و نتایج job استقادر به جذف آثار و نتایج job استقادر به جذف آثار و نتایج job است
      ۴قادر به حذف پروژه استقادر به حذف پروژه است
      ۵قادر به ایجاد پروژه استقادر به ایجاد پروژه است
      ۶قادر به تغییر پیکربندی پروژه استقادر به تغییر پیکربندی پروژه است
      ۷قادر به افزودن runners های خاص استقادر به افزودن runners های خاص است
      ۸قادر به افزودن shared runners است
      ۹قادر به دیدن events در سیستم است
      ۱۰رابط مدیر یا Admin interface

      مجوز های شغلی یا Job Permissions ها در در گیت لب GitLab

      به عنوان آخرین مطلب در ” آشنایی با مجوزهای CI در گیت لب GitLab ” بیایید با مجوز های شغلی یا Job Permissions ها در در گیت لب GitLab آشنا شویم.

      شمارهReporter/Guestتوسعه دهنده Developerاستاد Masterمالک Owner
      ۱اجرای CI jobاجرای CI jobاجرای CI job
      ۲کلون کردن منبع و LFS از پروژه فعلیکلون کردن منبع و LFS از پروژه فعلیکلون کردن منبع و LFS از پروژه فعلی
      ۳کلون کردن منبع و LFS از پروژه های عمومیکلون کردن منبع و LFS از پروژه های عمومیکلون کردن منبع و LFS از پروژه های عمومی
      ۴کلون کردن منبع و LFS از پروژه های داخلیکلون کردن منبع و LFS از پروژه های داخلیکلون کردن منبع و LFS از پروژه های داخلی
      ۵کلون کردن منبع و LFS از پروژه های خصوصیکلون کردن منبع و LFS از پروژه های خصوصیکلون کردن منبع و LFS از پروژه های خصوصی
      ۶Push کردن منبع و LFSPush کردن منبع و LFSPush کردن منبع و LFS
      ۷Pull کردن تصاویر container از پروژه فعلیPull کردن تصاویر container از پروژه فعلیPull کردن تصاویر container از پروژه فعلی
      ۸Pull کردن تصاویر container از پروژه های عمومیPull کردن تصاویر container از پروژه های عمومیPull کردن تصاویر container از پروژه های عمومی
      ۹Pull کردن تصاویر container از پروژه های داخلیPull کردن تصاویر container از پروژه های داخلیPull کردن تصاویر container از پروژه های داخلی
      ۱۰Pull کردن تصاویر container از پروژه های خصوصیPull کردن تصاویر container از پروژه های خصوصیPull کردن تصاویر container از پروژه های خصوصی
      ۱۱Push کردن تصاویر container به پروژه فعلیPush کردن تصاویر container به پروژه فعلیPush کردن تصاویر container به پروژه فعلی
      ۱۲Push کردن تصاویر container به دیگر پروژه هاPush کردن تصاویر container به دیگر پروژه هاPush کردن تصاویر container به دیگر پروژه ها

      نکته : LFS چیست؟

      در جدول بالا بار ها از عبارت LFS استفاده شده است. اما LFS چیست؟
      در حقیقت LFS مخفف Big File Storage است که به معنای ذخیره فایل های بزرگ است. Big File Storage یک پسوند Git دارد که به مبادله و exchange فایل های بزرگی مانند صدا، فیلم، گرافیک را با پرونده های اشاره گر ریز در مخزن شما می پردازد.

      LFS چیست؟ - آشنایی با مجوزهای CI در گیت لب GitLab

      LFS چیست؟ – آشنایی با مجوزهای CI در گیت لب GitLab

      سخن پایانی

      در این جلسه به آشنایی با مجوزهای CI در گیت لب GitLab پرداختیم و مفصلاً و به صورت کامل کلیه مجوز ها یا permissions های موجود در گیت لب را در چهار بخش مجزا یا چهار سطح مهمان، گزارش کننده، توسعه دهنده و استاد و مالک بررسی کردیم.
      امیدوارم این مقاله مفید بوده باشد.
      در جلسه بعدی قرار است با پیکربندی Runners ها آشنا شویم.
      با پی وی لرن همراه باشید.

      QR:  جلسه ۲۶ : آشنایی با مجوزهای CI در گیت لب GitLab
      به اشتراک بگذارید