Firebase CLI เป็นเครื่องมือที่ช่วยให้คุณจัดการและกําหนดค่าผลิตภัณฑ์และบริการของ Firebase จากบรรทัดคําสั่งได้
CLI มีคำสั่งที่สามารถใช้เพื่อดำเนินการต่างๆ Data Connect งาน เช่น การสร้างData Connectใหม่ เริ่มต้นไดเรกทอรีการทำงานภายในเครื่องที่เกี่ยวข้อง ตั้งค่า โปรแกรมจำลอง Data Connect รายการทรัพยากร Data Connect รายการ การสร้าง SDK ของไคลเอ็นต์ และอื่นๆ
คำสั่งของการตั้งค่า
เพิ่ม Data Connect ไปยังโปรเจ็กต์ Firebase
Firebase Init
ใช้ firebase init
เพื่อตั้งค่าการกําหนดค่าโปรเจ็กต์ในเครื่องใหม่ เวิร์กโฟลว์นี้จะสร้างหรืออัปเดตไฟล์การกําหนดค่า Firebase ในไดเรกทอรี
firebase init
กระบวนการ firebase init
จะแนะนำคุณตลอดขั้นตอนการตั้งค่าบริการและฐานข้อมูล
และเลือกติดตั้งโปรแกรมจำลอง Data Connect และ
การกำหนดค่า SDK ที่สร้างขึ้น
การตั้งค่าบริการและฐานข้อมูล
หากเลือก dataconnect
สำหรับการตั้งค่าผลิตภัณฑ์ CLI จะแจ้งให้คุณกำหนดค่า
ชื่อและตำแหน่งของบริการ รวมถึงระบุว่าจะลิงก์และ Cloud SQL ที่มีอยู่สำหรับ
อินสแตนซ์ PostgreSQL หรือสร้างอินสแตนซ์ใหม่
หากอินสแตนซ์ที่มีอยู่ลิงก์อยู่ CLI จะตรวจหาการตั้งค่าที่เข้ากันได้ เช่น เป็นการตรวจสอบสิทธิ์ IAM และที่อยู่ IP สาธารณะ
การตั้งค่า Local Emulator Suite
ขั้นตอน CLI จะเสนอให้ตั้งค่าโปรแกรมจำลอง ซึ่งรวมถึงโปรแกรมจำลอง Data Connect
Data Connect คำสั่งโปรแกรมจำลอง
เริ่มโปรแกรมจำลอง Data Connect
emulators:start/exec
firebase emulators:start/exec
ใช้โปรแกรมจำลอง Data Connect เวอร์ชัน Local Emulator Suite ในโหมดอินเทอร์แอกทีฟกับ start
หรือโหมดที่ไม่ใช่อินเทอร์แอกทีฟซึ่งทำงานด้วยสคริปต์กับ exec
คำสั่งการจัดการสคีมาและเครื่องมือเชื่อมต่อ
ส่วนนี้มีข้อมูลอ้างอิง CLI สําหรับคําสั่งที่คุณใช้จัดการสคีมาและตัวเชื่อมต่อ
สําหรับวิธีใช้งานและแนวทางปฏิบัติที่แนะนําที่เกี่ยวข้องกับคําสั่งเหล่านี้ โปรดดู คู่มือการจัดการสคีมาและเครื่องมือเชื่อมต่อ
ติดตั้งใช้งานสคีมาและทรัพยากรเครื่องมือเชื่อมต่อ
ทำให้ใช้งานได้
firebase deploy
คำสั่งนี้จะใช้ทรัพยากรสำหรับบริการ Data Connect ที่จัดทำดัชนีใน firebase.json ระบบจะดำเนินการย้ายข้อมูลสคีมาหากจำเป็น
คำสั่ง | คำอธิบาย | |
---|---|---|
firebase deploy |
แจ้ง | คำอธิบาย |
– เชื่อมต่อข้อมูลเท่านั้น |
ทำให้สคีมาและเครื่องมือเชื่อมต่อใช้งานได้กับบริการ Data Connect ทั้งหมดสำหรับงานนี้ แต่ไม่ได้ทำให้ทรัพยากรผลิตภัณฑ์ Firebase อื่นๆ ใช้งานได้ | |
–-only dataconnect:serviceId |
ทำให้สคีมาและเครื่องมือเชื่อมต่อใช้งานได้สำหรับบริการ Data Connect ที่ระบุ | |
–-only dataconnect:serviceId:connectorId |
ทำให้เครื่องมือเชื่อมต่อรายการเดียวใช้งานได้สำหรับบริการ Data Connect ที่ระบุ | |
–-only dataconnect:serviceId:schema |
ติดตั้งใช้งานสคีมาสำหรับบริการ Data Connect ที่ระบุ |
การใช้ Flag –-only
จะช่วยให้คุณส่งค่าที่คั่นด้วยคอมมาเพื่อติดตั้งใช้งานชุดย่อยของทรัพยากรที่ต้องการได้
firebase deploy --only dataconnect:service1:schema,dataconnect:service2
แสดงรายการบริการ สคีมา และเครื่องมือเชื่อมต่อ Data Connect
dataconnect:services:list
firebase dataconnect:services:list
คำสั่งนี้จะพิมพ์ข้อมูลพื้นฐานเกี่ยวกับบริการ สคีมา และเครื่องมือเชื่อมต่อ ที่ทำให้ใช้งานได้ในโปรเจ็กต์
เปรียบเทียบและย้ายข้อมูลสคีมา SQL
dataconnect:sql:diff
firebase dataconnect:sql:diff
คำสั่งนี้จะเปรียบเทียบสคีมาภายในสำหรับบริการกับสคีมาปัจจุบันของฐานข้อมูล Cloud SQL ที่เกี่ยวข้อง ซึ่งจะพิมพ์คำสั่งที่จะเรียกใช้ เพื่อย้ายฐานข้อมูลไปยังสคีมาใหม่
คำสั่ง | คำอธิบาย | |
---|---|---|
Firebase dataconnect:sql:diff |
Flag/พารามิเตอร์ | คำอธิบาย |
รหัสบริการ |
ระบุบริการ หากละไว้ ให้พิมพ์ ความแตกต่างของบริการทั้งหมดใน firebase.json |
dataconnect:sql:ย้ายข้อมูล
firebase dataconnect:sql:migrate
คำสั่งนี้จะนําการเปลี่ยนแปลงสคีมาภายในไปใช้กับฐานข้อมูล Cloud SQL ของบริการ
เมื่อคุณตั้งค่าโปรเจ็กต์ Data Connect ใหม่ในเครื่องโดยใช้ไฟล์ dataconnect.yaml
เริ่มต้น ลักษณะการทํางานของคําสั่ง dataconect:sql:migrate
คือการแจ้งให้คุณทราบถึงการเปลี่ยนแปลงที่จําเป็น จากนั้นจะแจ้งให้คุณทราบถึงการเปลี่ยนแปลงที่ไม่บังคับก่อนดําเนินการเปลี่ยนแปลง คุณสามารถแก้ไขลักษณะการทำงานนี้ให้เป็น
รวมหรือละเว้นการเปลี่ยนแปลงที่ไม่บังคับด้วยการอัปเดต dataconnect.yaml
ของการกำหนดค่า ตามที่กล่าวไว้ในการย้ายข้อมูลสคีมาในโหมดเข้มงวดหรือที่เข้ากันได้
ในสภาพแวดล้อมแบบอินเทอร์แอกทีฟ CLI จะแสดงคำสั่ง SQL สำหรับการย้ายข้อมูลแต่ละรายการ (และระบุว่าเป็นคำสั่งแบบทำลายหรือไม่) และแจ้งให้ป้อนการเปลี่ยนแปลงที่ต้องการใช้
การส่งแฟล็ก --force
เทียบเท่ากับการยอมรับข้อความแจ้งทั้งหมด
ในสภาพแวดล้อมแบบไม่โต้ตอบ
- โดยไม่มี
--force
ระบบจะทำการเปลี่ยนแปลงที่ไม่ทำลายข้อมูลเท่านั้น หากมีการเปลี่ยนแปลงที่ก่อให้เกิดความเสียหาย CLI จะหยุดดำเนินการโดยไม่มีการทําการเปลี่ยนแปลงใดๆ - กับ
--force
จะเป็นการเปลี่ยนแปลงทั้งหมด หากการกระทำดังกล่าวรวมถึงการทำลาย การเปลี่ยนแปลงจะถูกพิมพ์ และคุณจะได้รับข้อความแจ้งว่าคุณต้องการดำเนินการต่อ เว้นเสียแต่ว่าจะมี Flag--force
ระบุไว้
คำสั่ง | คำอธิบาย | |
---|---|---|
firebase dataconnect:sql:ย้ายข้อมูล |
แจ้ง | คำอธิบาย |
รหัสบริการ |
ย้ายข้อมูลฐานข้อมูลสำหรับบริการที่ระบุ ระบบจะอนุมาน serviceId หากโปรเจ็กต์มีบริการเพียงบริการเดียว | |
–-แรง |
ยอมรับพรอมต์โดยอัตโนมัติ |
เช่นเดียวกับแฟล็ก --only
อื่นๆ คุณสามารถให้บริการหลายรายการโดยแยกตาม
คอมมา
ย้ายข้อมูลสคีมาในโหมดเข้มงวดหรือที่เข้ากันได้
การย้ายข้อมูลสคีมา Data Connect รายการมีการตรวจสอบสคีมาที่แตกต่างกัน 2 รายการ โหมด: เข้มงวดและ เข้ากันได้ การตรวจสอบความถูกต้องในโหมดเข้มงวดจำเป็นต้องมี สคีมาของฐานข้อมูลตรงกับสคีมาของแอปพลิเคชันก่อนแอปพลิเคชันทุกประการ ใช้งานได้ การตรวจสอบโหมดที่เข้ากันได้จะต้องมีฐานข้อมูล สามารถเข้ากันได้กับสคีมาของแอปพลิเคชัน ซึ่งหมายถึงองค์ประกอบต่างๆ ใน ฐานข้อมูลที่สคีมาแอปพลิเคชันไม่ได้ใช้จะไม่ถูกแก้ไข
โหมดการตรวจสอบสคีมาต่อไปนี้และแนวทางปฏิบัติแนะนำสำหรับการย้ายข้อมูลสคีมา ที่อธิบายไว้ในคู่มือการจัดการสคีมาและเครื่องมือเชื่อมต่อ
โหมดการตรวจสอบความถูกต้องจะกำหนดโดยใช้คีย์ schemaValidation
ใน
dataconnect.yaml
หากไม่ได้ระบุ schemaValidation
ไว้ CLI จะใช้การเปลี่ยนแปลงที่เข้ากันได้และแจ้งให้คุณทราบก่อนทำการเปลี่ยนแปลงที่เข้มงวด ดูข้อมูลอ้างอิงการกําหนดค่า
คำสั่ง SDK
สร้าง SDK
dataconnect:sdk:generate
firebase dataconnect:sdk:generate
คำสั่งนี้จะสร้าง SDK ที่มีประเภทซึ่งประกาศไว้ใน connector.yaml
นอกจากนี้โปรดดูคู่มือสำหรับการทำงานกับ SDK ของเว็บ Android SDK และ iOS SDK
คำสั่ง | คำอธิบาย | |
---|---|---|
firebase dataconnect:sdk:generate |
แจ้งว่าไม่เหมาะสม | คำอธิบาย |
–-watch |
ดำเนินการต่อและสร้าง SDK ใหม่ทุกครั้งที่คุณบันทึกการเปลี่ยนแปลงสคีมาและไฟล์ GQL ของคอนเน็กเตอร์ หากการสร้างล้มเหลว ข้อผิดพลาดจะพิมพ์ไปยัง stdout ซึ่งเป็นโค้ดที่สร้างขึ้น จะไม่เปลี่ยนแปลง และคำสั่งนี้จะยังคงทำงานต่อไป |
|
–-only connectorId:platform |
สร้าง SDK สําหรับแพลตฟอร์มและตัวเชื่อมต่อเดียวเท่านั้น |
คุณสามารถใช้แฟล็ก –only
เพื่อส่งผ่านค่าที่คั่นด้วยคอมมา
firebase dataconnect:sdk:generate –-only connector1, connector1:kotlin
คำสั่งการจัดการ Cloud SQL
มอบบทบาท SQL สำหรับ Cloud SQL
dataconnect:sql:grant
firebase dataconnect:sql:grant
คำสั่งนี้จะให้บทบาทของผู้ใช้ PostgreSQL กับบัญชีผู้ใช้หรือบริการที่ระบุ
- ผู้อ่าน: อ่านจากตารางในสคีมาได้
- ผู้เขียน: อ่านและเขียนลงในตารางในสคีมาได้
- เจ้าของ: ทำการย้ายข้อมูลและแก้ไขสคีมาได้ ซึ่งไม่รวมถึงสิทธิ์ในการติดตั้งส่วนขยาย
คำสั่ง | คำอธิบาย | |
---|---|---|
Firebase dataconnect:sql:grant |
แฟล็ก/พารามิเตอร์ | คำอธิบาย |
-R, --role role |
บทบาท SQL ที่จะมอบให้แก่ 1 บทบาท ได้แก่ เจ้าของ ผู้เขียน หรือผู้อ่าน | |
-E, --email email_address |
อีเมลของผู้ใช้หรือบัญชีบริการที่จะมอบบทบาทให้ |
ตัวเลือกโดยรวม
ตัวเลือกส่วนกลางต่อไปนี้มีผลกับคำสั่งทั้งหมด
--json
สลับเอาต์พุต CLI เป็น JSON เพื่อให้เครื่องมืออื่นๆ แยกวิเคราะห์ได้--noninteractive
และ--interactive
จะลบล้างการตรวจหาสภาพแวดล้อมที่ไม่ใช่ TTY โดยอัตโนมัติตามที่จำเป็น