Git clone all project in one line

เคยเจอโปรเจคแบบ microservice ไหมครับ โปรเจคที่แบบมีเป็น 10 modules
ถ้าให้มานั่ง clone ทีละอัน บางทีก็เสียเวลาครับ งานมันทำซ้ำ ถ้างั้นก็ต้องเขียนโปรแกรมได้สิ

สิ่งที่ต้องเตรียม

  1. token ที่มีสิทธิ read_repository

2. project group id

3. curl หรือ wget และ jq เพราะ output มันจะได้ json น่ะ ต้องใช้ jq ช่วยในการ refer object

คำสั่งที่ใช้

for repo in $(curl “https://<host>/api/v4/groups/<groupID>?private_token=<token>&per_page=50&page=0” | jq “.projects[].ssh_url_to_repo” | tr -d ‘”‘); do git clone $repo; done;