Trigger.dev
Підключити
Підключіть Trigger.dev із термінала. Передайте --help, щоб побачити прапорці, які приймає Trigger.dev, а також --no-browser для середовищ без браузера.
polylane cloud connect --provider triggerdevСекретний ключ середовища, створений із пресетом "No restrictions", зі сторінки API Keys середовища.
- У Trigger.dev відкрийте сторінку API Keys середовища та створіть ключ із пресетом "No restrictions".
- Вставте ключ у Polylane і натисніть Connect. Ключ сам називає свій проєкт і середовище, тож більше нічого вводити не треба.
Polylane відображає середовище, його розгортання, задачі, розклади та черги. Задача, помічена в запусках, але відсутня в поточній версії, залишається на мапі та позначається. Ключі шифруються, і агент їх ніколи не бачить.
Вебхуки розгортань і сповіщень
Вебхук-сповіщення Trigger.dev відкривають інцидент при невдалому запуску та закривають сповіщення про розгортання при наступному успіху. Одне сповіщення на середовище:
- На сторінці Alerts середовища додайте вебхук-сповіщення з URL із Settings облікового запису, розділ Webhooks, і подіями "Task run failure", "Deployment failure" і "Deployment success".
- Вставте секрет підпису, який Trigger.dev показує один раз, у ту ж картку Webhooks.
Усунення несправностей
"Polylane needs a key created with the 'No restrictions' preset"
- Ключі Trigger only, Observer, Deploy only, Task operator і Variables only використати не можна: Polylane читає ідентифікацію проєкту через ендпоінт, який може викликати лише ключ "No restrictions". Створіть ключ "No restrictions" на сторінці API Keys середовища та підключіть його.
"Trigger.dev did not recognize this key"
- Перевірте, що ключ скопійовано цілком і його не відкликано.
"Dev keys only work while trigger dev runs" і "Preview keys are per branch and not supported"
- Використовуйте ключ prod або staging.
Відсутні ресурси
- "Sync" у заголовку облікового запису оновлює раніше за наступний 15-хвилинний прохід.
Відключення
Відключіть у Polylane, потім видаліть ключ на сторінці API Keys середовища.
Підключіть Trigger.dev із завдання CI або будь-якого іншого середовища без браузера.
Для підключення Trigger.dev браузер не потрібен: той самий ендпоінт, який викликає консоль, вміщується в завдання CI. Один автентифікований POST створює підключення та запускає першу синхронізацію.
Передумови
- Ключ API Polylane з областями дії
cloud_accounts:writeіcloud_accounts:read. Див. Ключі API та OAuth. - Ідентифікатор вашого робочого простору, який починається з
ws_. Прочитайте його черезGET /v1/workspacesтим самим ключем. - Секретний ключ середовища Trigger.dev (
tr_prod_sk_…абоtr_stg_sk_…) із середовища prod або staging вашого проєкту, у розділі API Keys. Створіть його з пресетом No restrictions: Polylane читає ідентифікацію проєкту через ендпоінт, який може викликати лише ключ "No restrictions", тому ключі Trigger only, Observer, Deploy only, Task operator і Variables only відхиляються, як і ключі dev та preview.
Створення підключення
curl -X POST https://api.polylane.com/v1/cloud_accounts \
-H "x-api-key: $POLYLANE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "triggerdev",
"workspaceId": "ws_0abc123",
"apiKey": "<environment-secret-key>"
}'
Ключ сам називає свій проєкт і середовище, і ключ належить рівно одному середовищу, тому один виклик підключає одне середовище: ключ prod підключає продакшен, ключ staging підключає staging, кожне як окремий обліковий запис. Надсилання ключа для вже підключеного середовища замінює ключ облікового запису. Перемикача середовища немає. Підключити середовище означає вибрати спостерігати за ним.
Відповідь перелічує те, що було підключено, і перша синхронізація вже виконується. Скорочено до двох полів, які читає решта процесу:
{
"success": true,
"result": {
"provider": "triggerdev",
"accounts": [{ "id": "acc_34gky74ibc92h8t2efn8csrh", "status": "syncing" }],
"failures": []
}
}
Ключ, який API відхиляє, потрапляє у 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"
Потім відкличте ключ Trigger.dev на боці провайдера, як описано в розділі Відключення нижче.
Відключити
Відключення зупиняє кожну синхронізацію та перевірку і видаляє облікові дані, які зберігав Polylane. Polylane видаляє те, що дозволяє видалити API Trigger.dev. Наведене нижче залишається, доки ви не видалите його самостійно:
- Trigger.dev webhook alert
polylane cloud disconnect <id>Інструменти
5Операції, які агенти можуть виконувати в тредах.
Підтримувані ресурси
5Типи ресурсів, які з'являються у графі вашої інфраструктури.