Fly.io
Forbind
Forbind Fly.io fra terminalen. Angiv --help for de flag, Fly.io accepterer, plus --no-browser til headless-miljøer.
polylane cloud connect --provider flyAPI-token fra dit Fly.io-dashboard.
Fly.io forbindes med et API-token fra dit dashboard. Brug den mest restriktive tokentype: Polylane har kun brug for læseadgang. Dit token krypteres, før det gemmes, og agenten ser det aldrig.
Opsætning
- Åbn Fly.io Dashboard, og gå til Tokens.
- Opret et nyt read-only-token.
- Kopiér tokenet, og indsæt det i Polylane.
- Polylane validerer tokenet og begynder at synkronisere.
Polylane opdager dine apps, machines, volumes, certifikater og andre Fly.io-ressourcer.
Tokentyper
| Type | Omfang | Anbefalet |
|---|---|---|
| Read-only | Kan kun læse ressourcer | Brug denne |
| Deploy | Kan deploye apps | Ikke nødvendig |
| Personal | Fuld kontoadgang | Anbefales ikke |
Afbrydelse
Afbryd kontoen i Polylane, og tilbagekald derefter tokenet fra dit Fly.io-dashboard under Tokens.
Forbind Fly.io fra et CI-job eller et hvilket som helst andet miljø uden browser.
Forbindelse af Fly.io kræver ingen browser: det samme endpoint, konsollen kalder, passer ind i et CI-job. Én autentificeret POST opretter forbindelsen og starter den første synkronisering.
Forudsætninger
- En Polylane-API-nøgle med scopes
cloud_accounts:writeogcloud_accounts:read. Se API-nøgler og OAuth. - Dit arbejdsområde-id, som begynder med
ws_. Læs det fraGET /v1/workspacesmed den samme nøgle. - Et skrivebeskyttet Fly.io-API-token, oprettet under Tokens i Fly.io-dashboardet.
Opret forbindelsen
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>"
}'
Tokenet resolver til én Fly.io-organisation, så ét kald forbinder én organisation.
- Organisationsopdagelse læser de apps, tokenet kan se, så et token, der ikke når nogen apps, fejler med en
400.
Svaret lister, hvad der blev forbundet, med den første synkronisering allerede i gang. Trimmet til de to felter, resten af flowet læser:
{
"success": true,
"result": {
"provider": "fly",
"accounts": [{ "id": "acc_34gky74ibc92h8t2efn8csrh", "status": "syncing" }],
"failures": []
}
}
En konto, der allerede er forbundet, lander i failures i stedet for accounts, så gentagelse af kaldet duplikerer aldrig en forbindelse.
Vent på den første synkronisering
Poll hver returneret konto efter dens id, indtil status når ready (new ved registrering, syncing mens ressourcer strømmer ind):
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
Giv løkken en deadline, så en fejlet forbindelse får jobbet til at fejle i stedet for at hænge. Når kontoen er ready, er dens ressourcer i topologien, og Polylane har startet sin første kontrol.
Afbryd fra API'et
Sletning af forbindelsen stopper hver synkronisering og kontrol og sletter de legitimationsoplysninger, Polylane opbevarede. Kaldet kræver scopet cloud_accounts:delete:
curl -X DELETE "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY"
Tilbagekald derefter Fly.io-legitimationen på udbyderens side, som beskrevet under Afbryd nedenfor.
Afbryd
Afbrydelse stopper hver synkronisering og kontrol og sletter de legitimationsoplysninger, Polylane opbevarede. Alt, hvad Polylane satte op i Fly.io, fjernes også; intet efterlades.
polylane cloud disconnect <id>Værktøjer
4Operationer, agenter kan udføre i tråde.
Understøttede ressourcer
5Ressourcetyper, der vises i din infrastrukturgraf.