Modal
Bağla
Modal hesabını terminalden bağla. Modal 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 modalModal ayarlarından bir token kimliği ve token gizli anahtarı.
Modal, Modal ayarlarında oluşturulan bir tokenla bağlanır. Bir Modal tokenı tam olarak tek bir çalışma alanına çözümlenir, bu yüzden bir token bir çalışma alanı bağlar. Tokenlar saklanmadan önce şifrelenir ve ajan onları asla görmez.
- Modal'ı aç, Settings → Tokens'a git.
- New token'a tıkla ve hem token kimliğini (
ak-ile başlar) hem token gizli anahtarını (as-ile başlar) kopyala. - Her iki değeri Polylane'e yapıştır.
- Polylane çifti doğrular ve eşitlemeye başlar.
Polylane ortamlarını ve her birinin içinde uygulamalarını, web uç noktaları dahil işlevlerini, çalışan sandbox'larını, volume'larını, gizli değerlerini, kuyruklarını ve dict'lerini keşfeder. Gizli değerler yalnızca adlarıyla eşlenir: Modal gizli değerlerin içeriğini asla açığa çıkarmaz.
Modal'ın salt okunur token seçeneği yoktur, bu yüzden bir token onu oluşturan hesabın izinlerini taşır. Polylane eşitleme sırasında Modal'dan yalnızca okur.
Sorun giderme
"Invalid token" hatası
- Hem token kimliği hem token gizli anahtarı gereklidir; tek başına biri kimlik doğrulayamaz.
- Tokenın Modal ayarlarında iptal edilmediğini kontrol et.
ak-veas-önekleri dahil değerin tamamını kopyaladığını doğrula.
Eksik kaynaklar
- İşlevler uygulamaları üzerinden keşfedilir, bu yüzden hiç dağıtılmamış bir uygulamanın gösterecek işlevi yoktur.
- Bitmiş sandbox'lar atlanır: yalnızca çalışanlar görünür.
- Bir sonraki zamanlanmış geçişten daha erken yenilemek için elle bir eşitleme tetikle.
Metrikler ve maliyet
- Uygulamalar iki grafik taşır: aralık başına stderr günlük satırları ve saat başına ölçülen harcama. Modal diğer her şey için yalnızca anlık göstergeler bildirir, bu yüzden işlevlerin, sandbox'ların ve volume'ların kendi grafikleri yoktur.
- Stderr sayıları hata değil günlük satırıdır: tek bir Python traceback'i birkaç satırdır.
- Modal günlükleri 24 saat tutar, bu yüzden bir grafik bundan daha geriye asla ulaşmaz.
- Harcama uygulama başına atfedilir ve Modal bir saati yalnızca bittikten sonra somutlaştırır, bu yüzden en yeni saat yerleşene kadar düşük görünür.
Modal hesabını bir CI işinden veya tarayıcısı olmayan başka herhangi bir ortamdan bağla.
Modal'ı 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.- Settings → Tokens'dan bir Modal token çifti: token kimliği (
ak-ile başlar) ve token gizli anahtarı (as-ile başlar).
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": "modal",
"workspaceId": "ws_0abc123",
"tokenId": "ak-...",
"tokenSecret": "as-..."
}'
Token tam olarak tek bir Modal çalışma alanına çözümlenir, bu yüzden bir çağrı bir çalışma alanı bağlar.
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": "modal",
"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 Modal 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'in Modal içinde kurduğu her şey de kaldırılır; geride hiçbir şey kalmaz.
polylane cloud disconnect <id>Araçlar
5Ajanların threadlerde yapabileceği işlemler.
Desteklenen kaynaklar
10Altyapı grafiğinde görünen kaynak türleri.