ВозможностиДокументацияЦеныPlaygroundFAQ

Change Management

Управление изменениями: request → approve → execute → rollback

🔧 Business и выше

Обзор

Change Management обеспечивает структурированный процесс внесения изменений в инфраструктуру. Каждое изменение проходит через фазы: создание request с описанием и командами → approval workflow → поэтапное выполнение с автоматическими snapshot'ами → возможность rollback на любой этап.

Lifecycle

Change Request Lifecycle
Draft → Pending ApprovalApprovedExecutingCompleted
↕ Rollback possible at any stage after approval

Создание change request

bash
curl -X POST https://relay.example.com/api/v1/changes \
  -H "Authorization: Bearer $TOKEN" \
  -d '{
    "title": "Update nginx SSL certificates",
    "description": "Renew Let'''s Encrypt certificates and reload nginx",
    "agent_id": "'$AGENT_ID'",
    "environment": "production",
    "commands": [
      "certbot renew --nginx",
      "nginx -t",
      "systemctl reload nginx"
    ],
    "auto_snapshot": true,
    "rollback_commands": [
      "cp /etc/nginx/nginx.conf.bak /etc/nginx/nginx.conf",
      "systemctl reload nginx"
    ]
  }'

Управление

bash
# Список changes
curl https://relay.example.com/api/v1/changes \
  -H "Authorization: Bearer $TOKEN"

# Одобрить
curl -X POST https://relay.example.com/api/v1/changes/${ID}/approve \
  -H "Authorization: Bearer $TOKEN" \
  -d '{"approver": "admin", "comment": "Verified"}'

# Отклонить
curl -X POST https://relay.example.com/api/v1/changes/${ID}/reject \
  -H "Authorization: Bearer $TOKEN" \
  -d '{"reason": "Missing rollback plan"}'

# Rollback
curl -X POST https://relay.example.com/api/v1/changes/${ID}/rollback \
  -H "Authorization: Bearer $TOKEN"

Автоматические snapshot'ы

Когда auto_snapshot включён, FlowLink создаёт forensic snapshot перед выполнением каждой команды в change request. Это позволяет точечно откатить изменения и узнать что именно изменилось.