Fly.io
เชื่อมต่อ
เชื่อมต่อ Fly.io จากเทอร์มินัล ส่ง --help เพื่อดูแฟล็กที่ Fly.io รับ รวมถึง --no-browser สำหรับสภาพแวดล้อมที่ไม่มีหน้าจอ
polylane cloud connect --provider flyโทเค็น API จากแดชบอร์ด Fly.io ของคุณ
Fly.io เชื่อมต่อด้วยโทเค็น API จากแดชบอร์ดของคุณ ใช้ประเภทโทเค็นที่จำกัดที่สุด: Polylane ต้องการเพียงสิทธิ์อ่าน โทเค็นของคุณถูกเข้ารหัสก่อนจัดเก็บ และเอเจนต์ไม่มีทางเห็นมัน
การตั้งค่า
- เปิด Fly.io Dashboard แล้วไปที่ Tokens
- สร้างโทเค็นแบบอ่านอย่างเดียวใหม่
- คัดลอกโทเค็นและวางใน Polylane
- Polylane ตรวจสอบโทเค็นและเริ่มซิงก์
Polylane ค้นหาแอป machine, volume, certificate และทรัพยากร Fly.io อื่นๆ ของคุณ
ประเภทโทเค็น
| ประเภท | ขอบเขต | แนะนำ |
|---|---|---|
| Read-only | อ่านทรัพยากรได้อย่างเดียว | ใช้แบบนี้ |
| Deploy | deploy แอปได้ | ไม่จำเป็น |
| Personal | เข้าถึงบัญชีได้เต็ม | ไม่แนะนำ |
การยกเลิกการเชื่อมต่อ
ยกเลิกการเชื่อมต่อบัญชีใน Polylane แล้วเพิกถอนโทเค็นจากแดชบอร์ด Fly.io ของคุณใต้ Tokens
เชื่อมต่อ Fly.io จากงาน CI หรือสภาพแวดล้อมอื่นใดที่ไม่มีเบราว์เซอร์
การเชื่อมต่อ Fly.io ไม่ต้องใช้เบราว์เซอร์: endpoint เดียวกับที่คอนโซลเรียกอยู่ในงาน CI ได้ POST ที่ยืนยันตัวตนแล้วครั้งเดียวสร้างการเชื่อมต่อและเริ่มการซิงก์ครั้งแรก
สิ่งที่ต้องมีก่อน
- คีย์ API ของ Polylane ที่มีสโคป
cloud_accounts:writeและcloud_accounts:readดูคีย์ API และ OAuth - ID ของ workspace ของคุณ ซึ่งเริ่มด้วย
ws_อ่านจากGET /v1/workspacesด้วยคีย์เดียวกัน - โทเค็น API แบบอ่านอย่างเดียวของ Fly.io สร้างใต้ Tokens ในแดชบอร์ด Fly.io
สร้างการเชื่อมต่อ
curl -X POST https://api.polylane.com/v1/cloud_accounts \
-H "x-api-key: $POLYLANE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "fly",
"workspaceId": "ws_0abc123",
"token": "<fly-api-token>"
}'
โทเค็นชี้ไปยังองค์กร Fly.io เดียว การเรียกครั้งเดียวจึงเชื่อมต่อหนึ่งองค์กร
- การค้นหาองค์กรอ่านแอปที่โทเค็นมองเห็นได้ โทเค็นที่เข้าถึงแอปไม่ได้เลยจึงล้มเหลวด้วย
400
การตอบกลับแสดงรายการสิ่งที่เชื่อมต่อแล้ว พร้อมการซิงก์ครั้งแรกที่รันอยู่ ตัดให้เหลือสองฟิลด์ที่ขั้นตอนที่เหลืออ่าน:
{
"success": true,
"result": {
"provider": "fly",
"accounts": [{ "id": "acc_34gky74ibc92h8t2efn8csrh", "status": "syncing" }],
"failures": []
}
}
บัญชีที่เชื่อมต่ออยู่แล้วจะไปอยู่ใน failures แทน accounts การเรียกซ้ำจึงไม่มีทางทำให้การเชื่อมต่อซ้ำ
รอการซิงก์ครั้งแรก
poll แต่ละบัญชีที่คืนมาด้วย id ของมันจนกว่า status จะถึง ready (new เมื่อลงทะเบียน syncing ขณะทรัพยากรไหลเข้า):
until [ "$(curl -s "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY" | jq -r '.result.status')" = "ready" ]; do
sleep 15
done
ให้ loop มีเส้นตายเพื่อให้การเชื่อมต่อที่ล้มเหลวทำให้งานล้มเหลวแทนที่จะค้าง เมื่อบัญชี ready แล้ว ทรัพยากรของมันอยู่ในโทโพโลยีและ Polylane เริ่มการตรวจสอบครั้งแรกแล้ว
ยกเลิกการเชื่อมต่อจาก API
การลบการเชื่อมต่อหยุดทุกการซิงก์และการตรวจสอบ และลบข้อมูลรับรองที่ Polylane เก็บไว้ การเรียกต้องใช้สโคป cloud_accounts:delete:
curl -X DELETE "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY"
จากนั้นเพิกถอนข้อมูลรับรอง Fly.io ฝั่งผู้ให้บริการ ตามที่อธิบายใต้ Disconnect ด้านล่าง
ยกเลิกการเชื่อมต่อ
การยกเลิกการเชื่อมต่อหยุดทุกการซิงก์และการตรวจสอบ และลบข้อมูลรับรองที่ Polylane เก็บไว้ ทุกสิ่งที่ Polylane ตั้งค่าไว้ใน Fly.io ถูกลบด้วยเช่นกัน ไม่มีอะไรหลงเหลือ
polylane cloud disconnect <id>เครื่องมือ
4การดำเนินการที่เอเจนต์ทำได้ในเธรด
ทรัพยากรที่รองรับ
5ประเภททรัพยากรที่ปรากฏในกราฟโครงสร้างพื้นฐานของคุณ