Connector API
Содержание
Overview
После интеграции инструментов доступа внутри кластера может быть предоставлен RESTful API для текущего ConnectorClass, позволяющий удобно получать ресурсы внутри инструмента. Эти API будут единообразно экспонироваться через Connector API, что позволит пользователям получать ресурсы из инструмента, на который указывает текущий Connector.
Система Connectors предоставляет полный набор механизмов расширения, упрощающих разработчикам расширение возможностей API ConnectorClass.
API Connectors предлагает единый входной пункт для запросов. Когда клиент инициирует запрос ресурса для инструмента, на который указывает конкретный Connector, система перенаправляет запрос на соответствующий API-адрес ConnectorClass, который, в свою очередь, пересылает запрос на API-адрес инструмента для получения ресурсов внутри инструмента.
Например:
- Получение списка Reference конкретного репозитория под Git Connector.
- Получение списка Tag конкретного репозитория артефактов под OIC Connector.
API Definition
API Address
/connectors/v1alpha1/namespaces/{namespace}/connectors/{name}/resources/{resource-name}
namespace: пространство имён, в котором находится текущий Connector.name: имя текущего Connector.resource-name: имя запрашиваемого ресурса, которое можно уточнить в документации соответствующего ConnectorClass.
Authentication and Authorization
Аутентификация соответствует стандартам Kubernetes и осуществляется через механизмы аутентификации и авторизации Kubernetes. Пользователь, выполняющий запрос, должен иметь права на чтение соответствующего connector.
При выполнении конечного запроса к инструменту для аутентификации будет использоваться Secret, указанный в Connector.
Query Parameters
Определяются конкретным API ConnectorClass.
Pagination Information
Указывается через параметры запроса.
Response Information
При возврате списка структура будет следующей:
Если ответ не 200, возвращаемая структура данных должна соответствовать k8s status.
Например:
Определения полей и значения перечислений совпадают с k8s status.
ConnectorClass API Extension Specification
Разработчики могут расширять возможности API для ConnectorClass, предоставляя пользователям более богатые возможности получения ресурсов.