Supabase
Bağla
Supabase hesabını terminalden bağla. Supabase hesabının kabul ettiği bayraklar için --help, başsız ortamlar için ayrıca --no-browser geç.
polylane cloud connect --provider supabaseOAuth yetkilendirmesi ya da Supabase hesap ayarlarından bir kişisel erişim tokenı.
Supabase OAuth üzerinden bağlanır: Connect with Supabase'e tıkla, bağlanacak organizasyonu seçerek Supabase'de okuma erişimini yetkilendir ve eşitleme zaten başlamış halde geri yönlendirilirsin. Tokenlar saklanmadan önce şifrelenir ve ajan onları asla görmez.
Kişisel erişim tokenı alternatifi
Uzun ömürlü bir kimlik bilgisi tercih edersen bunun yerine bir kişisel erişim tokenıyla bağlan:
- Supabase'i aç, Account → Access Tokens'a git.
- Generate new token'a tıkla ve tokenı kopyala (
sbp_ile başlar). - Tokenı Polylane'e yapıştır. Hesabın birden fazla organizasyona erişebiliyorsa bağlanacak organizasyonun slug'ını da sağla.
- Polylane tokenı doğrular ve eşitlemeye başlar.
Her bağlantı tek bir Supabase organizasyonunu kapsar. Polylane projelerini edge işlevleri, veritabanı dalları ve depolama bucket'larıyla, durum, bölge ve hesaplama boyutu dahil keşfeder.
Sorun giderme
"Invalid access token" hatası
- Tokenın Supabase hesap ayarlarında iptal edilmediğini kontrol et.
- Kişisel erişim tokenları hesabının izinleriyle hareket eder; hesabının organizasyona erişebildiğinden emin ol.
"Multiple Supabase organizations are reachable" hatası
- Kimlik bilgileri birden fazla organizasyona ulaşabiliyor, bu yüzden bağlanacak olanı adlandır.
- Konsolda OAuth ile bağlanırken, yetkilendirmeden sonra sorulduğunda organizasyonu seç.
- API ile bağlanırken
organizationalanını organizasyon slug'ına ayarla.
Eksik kaynaklar
- Supabase'in her şeyi eşitlemesi birkaç dakika sürebilir.
- Duraklatılmış (etkin olmayan) projeler listelenir, ancak edge işlevleri, dalları ve bucket'ları yalnızca proje etkinken eşitlenir.
- Yenilemek için hesap başlığından elle bir Sync tetikle.
Bağlantıyı kesme
Hesabın Polylane ile bağlantısını kes, sonra erişim tokenını Supabase hesap ayarlarından iptal et.
Supabase hesabını bir CI işinden veya tarayıcısı olmayan başka herhangi bir ortamdan bağla.
Supabase'i bağlamak tarayıcı gerektirmez: konsolun çağırdığı aynı uç nokta bir CI işine sığar. Kimliği doğrulanmış tek bir POST bağlantıyı oluşturur ve ilk eşitlemeyi başlatır.
Ön koşullar
cloud_accounts:writevecloud_accounts:readkapsamlı bir Polylane API anahtarı. Bkz. API anahtarları ve OAuth.ws_ile başlayan çalışma alanı kimliğin. Aynı anahtarlaGET /v1/workspacesüzerinden oku.- Account → Access Tokens'dan bir Supabase kişisel erişim tokenı (
sbp_ile başlar). Konsolun OAuth akışı tarayıcı gerektirir; erişim tokenları gerektirmez.
Bağlantıyı oluştur
curl -X POST https://api.polylane.com/v1/cloud_accounts \
-H "x-api-key: $POLYLANE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "supabase",
"workspaceId": "ws_0abc123",
"token": "sbp_...",
"organization": "my-org-slug"
}'
Tek çağrı bir Supabase organizasyonu bağlar.
organizationyalnızca token tam olarak tek bir organizasyona ulaşıyorsa atlanabilir; aksi halde çağrı, ulaşılabilir organizasyon slug'larını listeleyen bir400ile başarısız olur.
Yanıt, ilk eşitleme zaten çalışıyor halde neyin bağlandığını listeler. Akışın geri kalanının okuduğu iki alana kırpılmış hali:
{
"success": true,
"result": {
"provider": "supabase",
"accounts": [{ "id": "acc_34gky74ibc92h8t2efn8csrh", "status": "syncing" }],
"failures": []
}
}
Zaten bağlı olan bir hesap accounts yerine failures içine düşer, bu yüzden çağrıyı yinelemek asla bir bağlantıyı çoğaltmaz.
İlk eşitlemeyi bekle
Döndürülen her hesabı id değeriyle, status değeri ready olana kadar yokla (kayıtta new, kaynaklar akarken 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
Başarısız bir bağlama işi askıda bırakmak yerine başarısız kılsın diye döngüye bir son tarih ver. Hesap ready olduğunda kaynakları topolojidedir ve Polylane ilk kontrolünü başlatmıştır.
API'den bağlantıyı kes
Bağlantıyı silmek her eşitlemeyi ve kontrolü durdurur ve Polylane'in tuttuğu kimlik bilgilerini siler. Çağrı cloud_accounts:delete kapsamını gerektirir:
curl -X DELETE "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY"
Sonra Supabase kimlik bilgisini, aşağıda Bağlantıyı kesme altında anlatıldığı gibi sağlayıcı tarafında iptal et.
Bağlantıyı kes
Bağlantıyı kesmek her eşitlemeyi ve kontrolü durdurur ve Polylane'in tuttuğu kimlik bilgilerini siler. Polylane, Supabase API'sinin kaldırmasına izin verdiği her şeyi kaldırır. Şunlar sen kendin kaldırana kadar kalır:
- OAuth grant
polylane cloud disconnect <id>Araçlar
4Ajanların threadlerde yapabileceği işlemler.
Desteklenen kaynaklar
13Altyapı grafiğinde görünen kaynak türleri.