GitLab در ChatGPT و Codex در حال حاضر در مرحله بتا است.
نمای کلی
از الگوی برنامه GitLab Self-Managed برای ایجاد پیشنویس برنامهای مختص فضای کاری خود برای یک نمونه GitLab Self-Managed یا GitLab Dedicated استفاده کنید. نام میزبان GitLab و اطلاعات احراز هویت برنامه OAuth را وارد کنید، پیشنویس برنامه را بررسی کنید و سپس آن را برای اعضای واجد شرایط فضای کاری منتشر کنید. پس از انتشار، عملیات فعالشده برنامه در گفتگوهای ChatGPT و نشستهای Codex در دسترس قرار میگیرند.
برای آشنایی با قابلیتهای پشتیبانیشده GitLab، دسترسپذیری، مجوزها، نحوه استفاده از دادهها و الزامات شبکه، به اتصال GitLab به ChatGPT و Codex مراجعه کنید.
آنچه راهاندازی میکنید
شما با استفاده از الگوی برنامه GitLab Self-Managed، برنامهای مختص فضای کاری خود ایجاد میکنید. این برنامه از موارد زیر استفاده میکند:
یک برنامه OAuth مربوط به GitLab که در میزبان GitLab Self-Managed یا GitLab Dedicated شما ثبت شده است.
شناسه برنامه و کلید محرمانه OAuth در GitLab برای دریافت مجوز از کاربر.
دامنههای دسترسی موردنیاز OAuth: api، write_repository و openid.
نام میزبان GitLab شما، مانند gitlab.example.com، برای تعیین نقاط پایانی وب، API، مجوزدهی و توکن.
پیش از شروع
به موارد زیر نیاز دارید:
دسترسی مدیر یا مالک فضای کاری ChatGPT.
مجوز ایجاد برنامه OAuth در GitLab: دسترسی مالک گروه برای برنامه تحت مالکیت گروه، یا دسترسی مدیر نمونه برای برنامه در سطح کل نمونه.
فقط نام میزبان GitLab، بدون https://، پورت یا مسیر. از میزبان GitLab Self-Managed یا GitLab Dedicated استفاده کنید، نه gitlab.com.
تصمیمگیری درباره اینکه ChatGPT و Codex باید از کدام عملیات GitLab پشتیبانی کنند؛ مانند جستجو در محل نگهداری، گردشکارهای درخواست ادغام، گردشکارهای مسئله، ویرایش فایل یا گردشکارهای گستردهتر Codex.
ChatGPT و GitLab را در برگههای جداگانه باز نگه دارید. URI تغییرمسیر نمایشدادهشده در ChatGPT را عیناً کپی کنید؛ خودتان آن را نسازید یا تغییر ندهید.
برای باز کردن صفحه برنامهها از کنسول مدیریت، فضای کاری موردنظر ChatGPT را انتخاب کنید، افزونهها را باز کنید و مدیریت برنامههای قدیمی را انتخاب کنید.
مقادیری که باید آماده کنید
نام میزبان GitLab: برای مثال، gitlab.example.com.
URI تغییرمسیر: آن را از مراحل راهاندازی الگو در ChatGPT کپی کنید.
شناسه برنامه OAuth در GitLab.
کلید محرمانه OAuth در GitLab.
دامنههای دسترسی OAuth: آنها را از مراحل راهاندازی الگو در ChatGPT کپی کنید.
Start the template setup in ChatGPT
In ChatGPT, switch to the workspace where the app should be available.
Go to Workspace settings > Apps.
In Directory, find GitLab, open its GitLab Self-Managed app template, and select Enable.
Enter a clear app name and description.
Enter the GitLab hostname, such as gitlab.example.com.
Copy the Redirect URI shown in ChatGPT, and keep this tab open.
Example: https://chatgpt.com/connector/oauth/<redirect_id>. Do not remove the redirect ID, add a trailing slash, or replace the URI with a generic ChatGPT URL.
ایجاد برنامه OAuth مربوط به GitLab در GitLab
انتخاب محل ایجاد برنامه
میزبان GitLab خود، مانند https://gitlab.example.com، را باز کنید.
انتخاب کنید که برنامه در سطح کل نمونه باشد یا تحت مالکیت یک گروه. این انتخاب مشخص میکند چه کسی برنامه را مدیریت میکند؛ دسترسی به پروژه همچنان تابع مجوزهای GitLab کاربری است که به برنامه مجوز میدهد و دامنههای دسترسی OAuth اعطاشده.
برای برنامهای در سطح کل نمونه، به مدیریت > برنامهها بروید. برای برنامهای تحت مالکیت گروه، به تنظیمات > برنامهها در آن گروه بروید.
افزودن جزئیات برنامه
برنامه جدید یا افزودن برنامه جدید را انتخاب کنید.
نام گویایی برای برنامه وارد کنید، مانند GitLab Self-Managed یا GitLab Dedicated.
در URI تغییرمسیر، همان URI کپیشده از ChatGPT را بدون تغییر جایگذاری کنید.
گزینه محرمانه را برای این برنامه OAuth سمت سرور فعال نگه دارید.
پیکربندی دسترسی و ذخیره
برای برنامهای در سطح کل نمونه، GitLab توصیه میکند گزینه قابل اعتماد را انتخاب کنید. با این کار، درخواست مجوز از کاربر نمایش داده نمیشود.
دامنههای دسترسی api، write_repository و openid را انتخاب کنید.
بررسی کنید چه کسانی میتوانند برنامه را مدیریت کنند و مطمئن شوید کاربران GitLab که به برنامه مجوز میدهند، مجوزهای مناسب گروه و پروژه را دارند.
برنامه را ذخیره کنید.
الزامات دامنههای دسترسی OAuth
این الگو برای عملیات فعالشده GitLab در ChatGPT و Codex، دامنههای دسترسی OAuth زیر را درخواست میکند:
api: برای عملیات API مربوط به GitLab که برنامه ارائه میدهد، از جمله عملیات درخواست ادغام، مسئله و CI/CD، لازم است.
write_repository: برای عملیات نوشتن در محل نگهداری از طریق Git لازم است.
openid: برای اطلاعات هویت و عضویت OpenID Connect لازم است.
کپی کردن اطلاعات احراز هویت OAuth در GitLab
در برنامه ذخیرهشده GitLab، شناسه برنامه و کلید محرمانه را کپی کنید. از کلید محرمانه مانند سایر اطلاعات احراز هویت محافظت کنید. اگر افشا شد، آن را در GitLab تجدید کنید و برنامه جدیدی برای فضای کاری بسازید.
تکمیل راهاندازی در ChatGPT
به برگه راهاندازی الگو در ChatGPT برگردید.
شناسه برنامه GitLab را در شناسه کلاینت OAuth جایگذاری کنید.
کلید محرمانه GitLab را در کلید محرمانه کلاینت OAuth جایگذاری کنید.
مطمئن شوید که فیلد نام میزبان GitLab فقط شامل نام میزبان، مانند gitlab.example.com، است.
ایجاد پیشنویس را انتخاب کنید.
جزئیات پیشنویس برنامه را باز کنید و بخشهای «دسترسی نقشها» و «پیکربندی عملیات» را بررسی کنید.
انتشار و مدیریت برنامه برای ChatGPT و Codex
ایجاد پیشنویس برنامه بهطور خودکار آن را در دسترس اعضا قرار نمیدهد. پس از بررسی پیشنویس:
گزینه انتشار را برای پیشنویس برنامه انتخاب کنید.
به کنسول مدیریت بروید، فضای کاری موردنظر ChatGPT را انتخاب کنید و افزونهها را باز کنید؛ سپس مطمئن شوید که GitLab در دسترس نقشهای موردنظر است.
دسترسی نقشها را برای نقشهایی که باید از برنامه استفاده کنند بررسی کنید.
در بخش پیکربندی عملیات، عملیات خواندن و نوشتنِ موجود را بررسی کنید.
در بخش پیکربندی تأییدها، مشخص کنید چه زمانی کاربران باید پیش از استفاده ChatGPT یا Codex از برنامه، عملیات را تأیید کنند.
از یک کاربر آزمایشی که دسترسی دارد بخواهید GitLab را از فهرست افزونهها یا تنظیمات > افزونهها باز کند. مطمئن شوید کاربر میتواند افزونه را نصب کند و به برنامهای که از الگوی GitLab Self-Managed ساخته شده است متصل شود.
این تنظیمات تأیید برنامه در گفتگوهای ChatGPT و رشتهگفتگوهای Codex اعمال میشوند.
راهاندازی فعالیت GitLab برای بازبینی کد با Codex
پس از انتشار برنامه، اگر قصد دارید از بازبینی کد با Codex استفاده کنید، فعالیت GitLab را در Codex پیکربندی کنید. با این راهاندازی فعالیت، رویدادهای وبهوک موردنیاز پیکربندی میشوند.
تنظیمات اتصالدهنده Codex را باز کنید.
یک حساب سرویس برای فضای کاری پیکربندی کنید. اجازه دهید Codex حساب را بسازد، یا یک توکن دسترسی شخصی برای حساب سرویس موجود ارائه دهید.
فعالیت GitLab را برای پروژه یا یکی از گروههای والد آن فعال کنید.
اگر Codex باید وظایف کدنویسی را اجرا کند یا از تنظیمات مختص پروژه استفاده کند، یک محیط پروژه بسازید.
برنامه GitLab برای عملیات خواندن و عملیات فعالشده در ChatGPT و Codex از OAuth کاربر استفاده میکند. برای عملیات نوشتنِ بازبینی Codex در GitLab Self-Managed یا GitLab Dedicated، توکن حساب سرویس که توسط فضای کاری مدیریت میشود، مشخص میکند Codex با چه هویتی و در کدام پروژهها میتواند نظر یا واکنش ثبت کند.
بیشتر بخوانید: بازبینی درخواستهای ادغام GitLab با Codex.
اتصال و آزمایش برنامه GitLab
بهعنوان کاربری که دسترسی دارد، GitLab را از فهرست افزونهها یا تنظیمات > افزونهها باز کنید. نصب افزونه و سپس اتصال را انتخاب کنید.
اگر فضای کاری شما بیش از یک برنامه GitLab دارد، برنامه مربوط به این میزبان GitLab Self-Managed یا GitLab Dedicated را انتخاب کنید.
وقتی از شما خواسته شد، به برنامه OAuth در GitLab مجوز بدهید.
ابتدا یک عملیات خواندن کوچک در ChatGPT یا Codex اجرا کنید، مانند فهرست کردن پروژههای در دسترس یا دریافت یک درخواست ادغام شناختهشده.
اگر عملیات نوشتن فعال است، پیش از عرضه گستردهتر، آنها را در یک پروژه کمخطر و در هر محصولی که قصد استفاده از آنها را دارید آزمایش کنید.
نام میزبان و نحوه عملکرد OAuth
برنامه از نام میزبان برای تعیین نقاط پایانی GitLab استفاده میکند. فقط نام میزبان را وارد کنید، مانند gitlab.example.com. https://، مسیر API یا محل نگهداری، پورت یا gitlab.com را وارد نکنید. این الگو برای GitLab Self-Managed یا GitLab Dedicated است. برای GitLab.com (SaaS)، از برنامه GitLab استفاده کنید.
عیبیابی راهاندازی برنامه GitLab Self-Managed
عدم تطابق URI تغییرمسیر: مطمئن شوید URI تغییرمسیر برنامه OAuth در GitLab دقیقاً با URI تغییرمسیر نمایشدادهشده در ChatGPT مطابقت دارد.
ChatGPT نمیتواند پیشنویس برنامه را ایجاد یا ذخیره کند: مطمئن شوید نام میزبان، شناسه برنامه، کلید محرمانه و URI تغییرمسیر وارد شدهاند.
احراز هویت موفق است، اما فراخوانیهای پروژه ناموفقاند: مطمئن شوید کاربر GitLab که به برنامه مجوز میدهد، به پروژه دسترسی دارد و برنامه OAuth دارای دامنههای دسترسی الگو است.
API خطای 403 یا مجوزهای ناکافی برمیگرداند: مطمئن شوید حساب GitLab متصلشده، مجوزهای لازم پروژه یا گروه را دارد و برنامه OAuth شامل دامنههای دسترسی موردنیاز الگو است.
هیچ پروژهای در دسترس نیست: مطمئن شوید کاربر به پروژه دسترسی دارد، به نمونه موردنظر GitLab متصل است و برنامه درست GitLab را در ChatGPT یا Codex انتخاب کرده است.
