Fly.io
Підключити
Підключіть Fly.io із термінала. Передайте --help, щоб побачити прапорці, які приймає Fly.io, а також --no-browser для середовищ без браузера.
polylane cloud connect --provider flyAPI-токен із дашборда Fly.io.
Fly.io підключається за допомогою API-токена з вашого дашборда. Використовуйте найбільш обмежений тип токена: Polylane потрібен лише доступ на читання. Ваш токен шифрується перед збереженням, і агент ніколи його не бачить.
Налаштування
- Відкрийте Fly.io Dashboard і перейдіть до Tokens.
- Створіть новий токен лише для читання.
- Скопіюйте токен і вставте його в Polylane.
- Polylane перевіряє токен і починає синхронізацію.
Polylane знаходить ваші застосунки, машини, томи, сертифікати та інші ресурси Fly.io.
Типи токенів
| Тип | Область дії | Рекомендація |
|---|---|---|
| Read-only | Може лише читати ресурси | Використовуйте цей |
| Deploy | Може розгортати застосунки | Не потрібен |
| Personal | Повний доступ до облікового запису | Не рекомендується |
Відключення
Відключіть обліковий запис у Polylane, а потім відкличте токен у дашборді Fly.io в розділі Tokens.
Підключіть Fly.io із завдання CI або будь-якого іншого середовища без браузера.
Для підключення Fly.io браузер не потрібен: той самий ендпоінт, який викликає консоль, вміщується в завдання CI. Один автентифікований POST створює підключення та запускає першу синхронізацію.
Передумови
- Ключ API Polylane з областями дії
cloud_accounts:writeіcloud_accounts:read. Див. Ключі API та OAuth. - Ідентифікатор вашого робочого простору, який починається з
ws_. Прочитайте його черезGET /v1/workspacesтим самим ключем. - API-токен Fly.io лише для читання, створений у розділі Tokens дашборда Fly.io.
Створення підключення
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>"
}'
Токен відповідає одній організації Fly.io, тому один виклик підключає одну організацію.
- Виявлення організації читає застосунки, які бачить токен, тому токен без доступу до жодного застосунку завершується помилкою
400.
Відповідь перелічує те, що було підключено, і перша синхронізація вже виконується. Скорочено до двох полів, які читає решта процесу:
{
"success": true,
"result": {
"provider": "fly",
"accounts": [{ "id": "acc_34gky74ibc92h8t2efn8csrh", "status": "syncing" }],
"failures": []
}
}
Обліковий запис, який уже підключено, потрапляє у failures, а не в accounts, тому повторення виклику ніколи не дублює підключення.
Очікування першої синхронізації
Опитуйте кожний повернутий обліковий запис за його id, доки status не досягне ready (new після реєстрації, 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
Задайте циклу кінцевий термін, щоб невдале підключення провалювало завдання замість того, щоб зависати. Щойно обліковий запис стає ready, його ресурси перебувають у топології, і Polylane розпочав свою першу перевірку.
Відключення через API
Видалення підключення зупиняє кожну синхронізацію та перевірку і видаляє облікові дані, які зберігав Polylane. Виклик потребує області дії cloud_accounts:delete:
curl -X DELETE "https://api.polylane.com/v1/cloud_accounts/$WORKSPACE_ID/$ACCOUNT_ID" \
-H "x-api-key: $POLYLANE_API_KEY"
Потім відкличте облікові дані Fly.io на боці провайдера, як описано в розділі Відключення нижче.
Відключити
Відключення зупиняє кожну синхронізацію та перевірку і видаляє облікові дані, які зберігав Polylane. Усе, що Polylane налаштував у Fly.io, також видаляється; нічого не залишається.
polylane cloud disconnect <id>Інструменти
4Операції, які агенти можуть виконувати в тредах.
Підтримувані ресурси
5Типи ресурсів, які з'являються у графі вашої інфраструктури.