Odoo CLI คือชุดคำสั่งที่สามารถรันผ่าน command-line (เช่น terminal หรือ console) ซึ่งทำงานร่วมกับ odoo-bin หรือ odoo ในกรณีที่ติดตั้งผ่าน pip คำสั่งเหล่านี้ช่วยให้สามารถควบคุมพฤติกรรมของ Odoo ในหลายด้าน เช่น การรันเซิร์ฟเวอร์ การอัปเกรดโมดูล การสร้างโมดูลใหม่ และการตั้งค่า parameter ต่าง ๆ
2. การรัน Odoo ด้วย CLI
โค้ด: เลือกทั้งหมด
./odoo-bin -d mydb -u base --addons-path=addons
- -d : ชื่อฐานข้อมูลที่ต้องการใช้
- -u : อัปเกรดโมดูลที่ระบุ (ในที่นี้คือ base)
- --addons-path : ระบุ path ไปยังโฟลเดอร์โมดูล
-c : ใช้ไฟล์ config ที่กำหนด
-d : ระบุชื่อฐานข้อมูล
-r : ชื่อผู้ใช้งาน PostgreSQL
-w : รหัสผ่านของ PostgreSQL
--addons-path : ตำแหน่งโฟลเดอร์ของโมดูล
-i : ติดตั้งโมดูล
-u : อัปเกรดโมดูล
--dev : เปิด debug mode เช่น --dev=all
--logfile : ระบุ path ของ log file
4. ตัวอย่างการใช้งาน CLI
4.1 การติดตั้งโมดูลใหม่
โค้ด: เลือกทั้งหมด
./odoo-bin -d mydb -i sale --addons-path=addons
โค้ด: เลือกทั้งหมด
./odoo-bin -d mydb -u my_custom_module --addons-path=addons
โค้ด: เลือกทั้งหมด
./odoo-bin -d mydb --dev=all
โค้ด: เลือกทั้งหมด
./odoo-bin scaffold my_module_name addons/
โค้ด: เลือกทั้งหมด
./odoo-bin -d testdb --logfile=/var/log/odoo.log --addons-path=addons
- ความเร็วในการทำงาน: ไม่ต้องเปิดเบราว์เซอร์หรือล็อกอินผ่าน UI สามารถควบคุมทุกอย่างผ่าน terminal ได้
- เหมาะสำหรับ Automation: เหมาะกับการใช้ใน Jenkins, Docker หรือ Shell Script
- Debug ได้ง่าย: เปิด debug mode หรือกำหนด log file ได้ทันที
- การติดตั้งและอัปเกรดโมดูลสะดวก: ใช้เพียงคำสั่งเดียวก็สามารถ deploy ได้
- ใช้ Virtual Environment เพื่อไม่ให้ชนกับ Python packages อื่น ๆ
- สร้าง alias คำสั่งที่ใช้บ่อย เช่น alias odoo='./odoo-bin -d mydb --addons-path=addons'
- เก็บไฟล์ config แยกเฉพาะ environment เช่น odoo-dev.conf, odoo-prod.conf
- ใช้ --logfile บันทึก log แบบละเอียดเพื่อช่วยในการ debug
- ใช้ร่วมกับ Git และ Docker เพื่อสร้าง CI/CD pipeline ที่มีประสิทธิภาพ
Odoo CLI เป็นเครื่องมือที่ขาดไม่ได้สำหรับนักพัฒนาและผู้ดูแลระบบที่ต้องการควบคุมและบริหารจัดการ Odoo อย่างยืดหยุ่นและมีประสิทธิภาพ ไม่ว่าจะเป็นการติดตั้ง อัปเกรด ปรับแต่ง หรือ debug ระบบ คำสั่ง CLI ต่าง ๆ สามารถช่วยลดเวลา เพิ่มความแม่นยำ และสนับสนุนแนวทางการทำงานแบบอัตโนมัติได้อย่างยอดเยี่ยมการเรียนรู้คำสั่งพื้นฐานและแนวทางการใช้งาน CLI จะช่วยให้นักพัฒนาเริ่มต้นได้ไวขึ้น และยังสามารถนำไปประยุกต์ใช้ในขั้นตอนการ deploy และดูแลระบบขนาดใหญ่ในองค์กรได้อย่างมีประสิทธิภาพในระยะยาว
อ้างอิง
https://www.odoo.com/documentation/18.0/developer/reference/cli.html
https://www.cybrosys.com/blog/commands-lines-in-odoo
https://www.cybrosys.com/blog/commands-lines-in-odoo