اگر دولوپر Odoo باشی، احتمالا این سناریو برات خیلی آشناست. وسط کار هستی، دقیقا همون جایی که باید بری سراغ داکیومنت رسمی اودو، اینترنت یا کنده یا کلا قطع شده. مخصوصا با شرایطی که مدتی پیش توی ایران داشتیم، خیلی ها عملا دسترسیشون به مستندات رسمی قطع شد.
اینجاست که داشتن مستندات اودوو به صورت لوکال دیگه یه آپشن نیست، یه ضرورت واقعیه. خبر خوب اینه که خود Odoo مستنداتش رو طوری طراحی کرده که خیلی تمیز و اصولی بتونی روی سیستم خودت اجراشون کنی، و خیلی راحت چیزی رو که دنبالشی رو جستجو کنی.
من توی این مقاله دقیقا تجربه واقعی اجرای Odoo documentation روی Ubuntu را می گم، مرحله به مرحله.
مرحله ۱: دریافت سورس مستندات اودوو
اولین قدم اینه که ریپازیتوری رسمی مستندات Odoo رو بگیریم. این ریپو دقیقا همون چیزیه که سایت رسمی ازش ساخته میشه.
git clone https://github.com/odoo/documentation.git
بعد از دانلود، وارد پوشه می شیم:
cd documentation
تا اینجا همه چیز سادست. هنوز وارد بخش جذاب ماجرا نشدیم.
مرحله ۲: انتخاب نسخه مورد نظر مستندات
مستندات اودوو نسخه بندی شدن. یعنی برای هر نسخه، یه branch جدا وجود داره. مثلا:
- 16.0
- 17.0
- 18.0
-
یا حتی
master
اگه پروژت روی نسخه خاصیه، خیلی راحت می تونی روی همون نسخه مستندات رو بالا بیاری:
git branch -a
دستور بالا میاد و تمام شاخه های گیت رو به تو نشان می ده؛ هم اونهایی که روی سیستم خودت هستن، هم آنهایی که روی ریپازیتوری اصلی وجود دارن. بعد مثلا برای نسخه 1۸ برنچ رو تغییر میدیم:
git checkout 18.0
از این لحظه به بعد، تمام مستنداتی که می سازی، مخصوص همون نسخه هستند. این یعنی دقت بالا و دردسر کمتر.
مرحله ۳: ساخت محیط مجازی Python
برای جلوگیری از تداخل کتابخانه ها و حفظ تمیزی سیستم، بهتره یه محیط مجازی بسازید. این کار باعث میشه تمام وابستگی ها فقط داخل همین پروژه نصب بشن.
python3 -m venv .venv source .venv/bin/activate
بعد از فعال سازی، هر کتابخونه ای که نصب می کنی فقط در این محیط استفاده میشه.
مرحله ۴: نصب پیش نیازها روی آبونتو
مستندات اودوو با ابزار Sphinx ساخته میشن. پس باید چند چیز ساده نصب کنیم.
pip install --upgrade pip
pip install -r requirements.txt
pip install sphinx sphinx_rtd_theme
اگه این مرحله بدون خطا رد بشه، تقریبا خیالت راحته ولی اگه با خطای پیدا نشدن دستور sphinx-build مواجه شدی، معمولا مشکل از مسیر PATH هست. در این حالت این دستور رو اجرا کن:
export PATH=$HOME/.local/bin:$PATH
مرحله ۵: ساخت مستندات به صورت HTML
حالا می رسیم به بخش دوست داشتنی ماجرا. جایی که مستندات واقعا زنده میشن.
make html
کمی زمان میبره، بسته به سیستم. آخرش اگه همه چی درست باشه، یه پوشه ساخته میشه:
_build/html
مرحله ۶: مشاهده مستندات روی مرورگر
خیلی ساده، فایل زیر رو باز کن:
_build/html/index.html
یا اگر دوست داری تر و تمیزتر باشه:
xdg-open _build/html/index.html
تبریک می گم. الان مستندات اودوو بدون اینترنت دقیقا مثل آنلاینش قابل جستجو، با سرعت بالا در دسترست هست.
اگه بخوای چند نسخه رو همزمان داشته باشی چی؟
سوال خیلی خوبیه...
راه حل پیشنهادی من اینه:
- برای هر نسخه یک پوشه جدا
-
هر پوشه روی
branch مخصوص خودش
مثلا:
odoo-docs-16 odoo-docs-17 odoo-docs-18
هر کدوم رو جداگانه checkout میکنی و make html میزنی و محتوایات رو انتقال میدی به پوشه مورد نظر.
واقعیت ایه که اجرای لوکال مستندات اودوو یه کار لوکس نیست. برای ما که داخل ایران کار میکنیم، یه ابزار نجاته. هم سرعتت بالا میره، هم وابستگیت به اینترنت کم میشه، هم همیشه داکیومنت درست نسخه ای که لازم داری دم دستت هست.