Fly.io
Collega
Collega Fly.io dal terminale. Passa --help per vedere i flag che Fly.io accetta, più --no-browser per gli ambienti headless.
polylane cloud connect --provider flyToken API dalla dashboard di Fly.io.
Fly.io si collega con un token API dalla tua dashboard. Usa il tipo di token più restrittivo: a Polylane serve solo l'accesso in lettura. Il token viene cifrato prima di essere archiviato e l'agente non lo vede mai.
Configurazione
- Apri la Fly.io Dashboard e vai su Tokens.
- Crea un nuovo token in sola lettura.
- Copia il token e incollalo in Polylane.
- Polylane convalida il token e avvia la sincronizzazione.
Polylane scopre le tue app, machine, volumi, certificati e le altre risorse Fly.io.
Tipi di token
| Tipo | Ambito | Consigliato |
|---|---|---|
| Read-only | Può solo leggere le risorse | Usa questo |
| Deploy | Può deployare app | Non necessario |
| Personal | Accesso completo all'account | Non consigliato |
Scollegamento
Scollega l'account in Polylane, poi revoca il token dalla dashboard di Fly.io sotto Tokens.
Collega Fly.io da un job CI o da qualsiasi altro ambiente senza browser.
Collegare Fly.io 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 Fly.io in sola lettura, creato sotto Tokens nella dashboard di Fly.io.
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": "fly",
"workspaceId": "ws_0abc123",
"token": "<fly-api-token>"
}'
Il token corrisponde a una organizzazione Fly.io, quindi una sola chiamata collega una organizzazione.
- La scoperta dell'organizzazione legge le app che il token può vedere, quindi un token che non raggiunge nessuna app fallisce con un
400.
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": "fly",
"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 Fly.io 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 Fly.io viene rimosso; non resta nulla.
polylane cloud disconnect <id>Strumenti
4Operazioni che gli agenti possono eseguire nei thread.
Risorse supportate
5Tipi di risorsa che compaiono nel grafo della tua infrastruttura.