Collega
Collega Turso dal terminale. Passa --help per vedere i flag che Turso accetta, più --no-browser per gli ambienti headless.
polylane cloud connect --provider tursoUn token API della piattaforma dalle impostazioni del tuo account Turso o dalla CLI di Turso.
Turso si collega con un token API della piattaforma:
- Apri Turso e vai alla pagina API Tokens delle impostazioni del tuo account, oppure esegui
turso auth api-tokens mint polylanedalla CLI. - Copia il token API della piattaforma.
- Incolla il token in Polylane. Se il token può raggiungere più di un'organizzazione, scegli quella da collegare quando ti viene chiesto.
- Polylane convalida il token e avvia la sincronizzazione.
Ogni collegamento copre una singola organizzazione Turso. Polylane scopre i suoi gruppi di database e i database, incluse posizioni, collocazione, relazioni di branching e stato di lettura/scrittura. I token vengono cifrati prima di essere archiviati e l'agente non li vede mai. Polylane legge soltanto la Platform API; non si connette mai ai tuoi database e non conserva mai credenziali dei database.
La Platform API di Turso riporta l'utilizzo come contatori cumulativi del periodo di fatturazione anziché come serie temporali, quindi i database non hanno grafici delle metriche. Il monitoraggio interroga quei contatori e osserva invece le variazioni: volume di letture e scritture, traffico di sincronizzazione, crescita dello storage, numero di database, consumo delle quote rispetto al tuo piano e le query più pesanti per database vengono confrontati ciascuno con la cronologia dell'account stesso.
Risoluzione dei problemi
Errore "Invalid Turso API token"
- I token della Platform API sono diversi dai token di autenticazione dei database; creane uno con
turso auth api-tokens minto dalle impostazioni del tuo account. - Verifica che il token non sia stato revocato nelle impostazioni di Turso.
Errore "Multiple Turso organizations are reachable"
- Il token può raggiungere più di un'organizzazione, quindi indica quella da collegare.
- Se colleghi nella console, scegli l'organizzazione quando ti viene chiesto dopo la convalida.
- Se colleghi via API, imposta il campo
organizationsullo slug dell'organizzazione.
Risorse mancanti
- Turso può impiegare qualche minuto per sincronizzare tutto.
- Avvia una Sync manuale dall'intestazione dell'account per aggiornare.
Scollegamento
Scollega l'account in Polylane, poi revoca il token API dalle impostazioni del tuo account Turso o con turso auth api-tokens revoke.
Collega Turso da un job CI o da qualsiasi altro ambiente senza browser.
Collegare Turso non richiede un browser: lo stesso endpoint che chiama la console sta in un job CI. Una sola POST autenticata crea il collegamento e avvia la prima sincronizzazione.
Prerequisiti
- Una chiave API Polylane con gli scope
cloud_accounts:writeecloud_accounts:read. Vedi Chiavi API e OAuth. - L'ID del tuo workspace, che inizia con
ws_. Leggilo daGET /v1/workspacescon la stessa chiave. - Un token API della piattaforma Turso, creato dalle impostazioni del tuo account o con
turso auth api-tokens mint polylane.
Crea il collegamento
curl -X POST https://api.polylane.com/v1/cloud_accounts \
-H "x-api-key: $POLYLANE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "turso",
"workspaceId": "ws_0abc123",
"token": "<platform-api-token>",
"organization": "my-org-slug"
}'
Una sola chiamata collega una organizzazione Turso.
organizationpuò essere omesso solo quando il token raggiunge esattamente una organizzazione; altrimenti la chiamata fallisce con un400che elenca gli slug delle organizzazioni raggiungibili.
La risposta elenca ciò che è stato collegato, con la prima sincronizzazione già in corso. Ridotta ai due campi che il resto del flusso legge:
{
"success": true,
"result": {
"provider": "turso",
"accounts": [{ "id": "acc_34gky74ibc92h8t2efn8csrh", "status": "syncing" }],
"failures": []
}
}
Un account già collegato finisce in failures invece che in accounts, quindi ripetere la chiamata non duplica mai un collegamento.
Attendi la prima sincronizzazione
Interroga ogni account restituito tramite il suo id finché status non raggiunge ready (new alla registrazione, syncing mentre le risorse arrivano):
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
Dai al ciclo una scadenza, così un collegamento fallito fa fallire il job invece di bloccarlo. Una volta che l'account è ready, le sue risorse sono nella topologia e Polylane ha avviato il suo primo controllo.
Scollega dall'API
Eliminare il collegamento interrompe ogni sincronizzazione e ogni controllo ed elimina le credenziali che Polylane conservava. La chiamata richiede lo scope cloud_accounts:delete:
curl -X DELETE "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY"
Poi revoca la credenziale Turso sul lato del provider, come descritto sotto Scollega qui sotto.
Scollega
Scollegare interrompe ogni sincronizzazione e ogni controllo ed elimina le credenziali che Polylane conservava. Anche tutto ciò che Polylane aveva configurato in Turso viene rimosso; non resta nulla.
polylane cloud disconnect <id>Risorse supportate
2Tipi di risorsa che compaiono nel grafo della tua infrastruttura.