Репозитории реестра
Функционал доступен в Enterprise и Atlas версиях.
Описание работы функционала репозиториев реестра доступно здесь.
Описание структур JSON-объектов
Репозиторий реестра
| Поле | Тип | Описание |
|---|---|---|
title |
String | Название репозитория реестра |
repositoryType |
String | Тип репозитория реестра. Возможные значения: LOCAL, PROXY, LOCAL_CACHE, VIRTUAL, TRASH_CAN |
repositoryUuid |
String | UUID репозитория реестра |
packageType |
String | Тип пакетов репозитория реестра. Возможные значения: generic, maven, npm, pypi, nuget, composer, opm, debian, container, helm, cran, rpm, rubygem, cargo, conda, conan, go |
description |
String | Описание репозитория реестра |
Пакет
| Поле | Тип | Описание |
|---|---|---|
id |
String | UUID пакета |
name |
String | Имя пакета |
version |
String | Версия пакета |
groupId |
String | Идентификатор группы |
artifactId |
String | Идентификатор артефакта |
type |
String | Тип пакета. Возможные значения: generic, maven, npm, pypi, nuget, composer, container, opm, cran, deb, rpm, rubygem, cargo, conda, conan, go |
ownerUuid |
String | UUID репозитория, в котором расположен пакет |
ownerType |
String | Тип владельца. Всегда возвращает REPOSITORY |
Версия пакета
| Поле | Тип | Описание |
|---|---|---|
id |
String | UUID версии пакета |
baseVersion |
String | Базовая версия пакета |
version |
String | Версия пакета |
lowerVersion |
String | Версия пакета в нижнем регистре |
downloadCount |
Integer | Число скачиваний версии пакета |
languageVersion |
String | Версия языка программирования |
packageUploadType |
String | Способ загрузки пакета. Возможные варианты: TRANSPORT, MANUALLY, API |
packageFiles |
Object | Объект, содержащий информацию о прикрепленном файле. Ознакомиться с содержимым можно здесь |
internal |
Deprecated | Устаревший параметр. По умолчанию возвращает false |
Файл пакета
| Поле | Тип | Описание |
|---|---|---|
id |
String | UUID файла пакета |
name |
String | Наименование файла |
size |
Integer | Размер файла в байтах |
hashMd5 |
String | Хэш в формате Md5 |
hashSHA1 |
String | Хэш в формате Sha1 |
hashSHA256 |
String | Хэш в формате Sha256 |
packageUploadType |
String | Способ загрузки файла. Возможные варианты: TRANSPORT, MANUALLY, API |
createdAt |
ZonedDateTime | Дата и время добавления файла |
nodeUuid |
String | UUID ноды (папки) в которой расположен файл |
Методы репозиториев реестра
Получение всех репозиториев реестра
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories
Компании: GET /company/{companyAlias}/repositories
Всего сервиса: GET /instance/repositories
Запрос возвращает список репозиториев реестра указанного владельца, есть возможность настройки количества отображаемых объектов на странице.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
companyAlias |
String | Псевдоним компании |
Responses
STATUS 200 - Список репозиториев реестра успешно возвращен:
Пример ответа
{
"_embedded": {
"shortRegistryRepositoryDtoList": [
{
"title": "generic-local",
"repositoryType": "LOCAL",
"repositoryUuid": "b24769db-aaaa-aaaa-aaaa-a3006f0271f6",
"packageType": "generic",
"description": "Локальный репозиторий generic реестра",
},
{
"title": "maven-proxy",
"repositoryType": "PROXY",
"repositoryUuid": "ddc72f64-aaaa-aaaa-aaaa-e212e088bffc",
"packageType": "maven",
"description": "Проксирующий репозиторий maven реестра",
},
{
"title": "maven-proxy-cache",
"repositoryType": "LOCAL_CACHE",
"repositoryUuid": "fa6d59b5-aaaa-aaaa-aaaa-cf1806aa929c",
"packageType": "maven",
"description": null,
}
{
"title": "maven-virtual",
"repositoryType": "VIRTUAL",
"repositoryUuid": "3cd7ccd1-aaaa-aaaa-aaaa-a1bfd03f9801",
"packageType": "maven",
"description": "Виртуальный репозиторий maven реестра",
},
{
"title": "trashCan",
"repositoryType": "TRASH_CAN",
"repositoryUuid": "e510b751-aaaa-aaaa-aaaa-737daa2e7210",
"packageType": "generic",
"description": null,
},
]
},
"page": {
"size": 10,
"totalElements": 5,
"totalPages": 1,
"number": 0
}
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение репозитория реестра по UUID
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{registryRepositoryUuid}
Компании: GET /company/{companyAlias}/repositories/{registryRepositoryUuid}
Всего сервиса: GET /instance/repositories/{registryRepositoryUuid}
Запрос возвращает репозиторий реестра указанного владельца по-указанному UUID.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
companyAlias |
String | Псевдоним компании |
registryRepositoryUuid |
String | UUID репозитория реестра |
Responses
STATUS 200 - Репозиторий реестра успешно возвращен:
Пример ответа
{
"title": "generic-local",
"repositoryType": "LOCAL",
"repositoryUuid": "b24769db-aaaa-aaaa-aaaa-a3006f0271f6",
"packageType": "generic",
"description": "Локальный репозиторий generic реестра",
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Создание репозитория реестра
Проекта: POST /project/{ownerAlias}/{projectAlias}/repositories
Компании: POST /company/{companyAlias}/repositories
Всего сервиса: POST /instance/repositories
Запрос создает репозиторий реестра во владении указанной сущности и возвращает его UUID.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
companyAlias |
String | Псевдоним компании |
Request
Поддерживаемый формат JSON
В зависимости от набора полей, которые передаются в теле запроса, возможно создание локального, проксирующего или виртуального репозитория.
Создание локального репозитория
| Параметр | Тип | Описание |
|---|---|---|
type |
String | Тип репозитория реестра. Для создания локального репозитория необходимо указать значение LOCAL |
repositoryName |
String | Название репозитория реестра |
description |
String | Не обязательный. Описание репозитория реестра |
packageType |
String | Тип пакетов репозитория реестра. Возможные значения: generic, maven, npm, pypi, nuget, composer, opm, debian, container, helm, cran, rpm |
settings |
Object | Объект с полями, описывающими настройки локального репозитория |
Набор полей, описывающих настройки локального репозитория:
| Параметр | Тип | Описание |
|---|---|---|
hasAnonymousAccess |
Boolean | Не обязательный. Анонимный доступ разрешен true или запрещен false (по умолчанию) |
isDeletePackageAllowed |
Boolean | Не обязательный. Удаление пакетов разрешено true или запрещено false (по умолчанию) |
packageReuploadType |
String | Не обязательный. Тип перезаписи пакетов. Возможные значения: NONE - запрет перезаписывания или OVERRIDE - перезапись файлов (по умолчанию) |
Пример JSON объекта
{
"type" : "LOCAL",
"repositoryName": "generic-local",
"description": "Локальный репозиторий generic реестра",
"packageType": "generic",
"settings": {
"hasAnonymousAccess": true,
"isDeletePackageAllowed": true,
"packageReuploadType": "OVERRIDE"
}
}
STATUS 201 - Локальный репозиторий реестра успешно создан:
Пример ответа
{
"title": "generic-local",
"repositoryType": "LOCAL",
"repositoryUuid": "b24769db-aaaa-aaaa-aaaa-a3006f0271f6",
"packageType": "generic",
"description": "Локальный репозиторий generic реестра",
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Создание проксирующего репозитория
| Параметр | Тип | Описание |
|---|---|---|
type |
String | Тип репозитория реестра. Для создания проксирующего репозитория необходимо указать значение PROXY |
repositoryName |
String | Название репозитория реестра |
description |
String | Не обязательный. Описание репозитория реестра |
packageType |
String | Тип пакетов репозитория реестра. Возможные значения: maven, npm, pypi, nuget, container |
proxySettings |
Object | Объект с полями, описывающими настройки проксирующего репозитория |
Набор полей, описывающих настройки проксирующего репозитория:
| Параметр | Тип | Описание |
|---|---|---|
url |
String | Ссылка на внешний реестр, куда будут проксироваться запросы |
username |
String | Не обязательный. Имя пользователя для авторизации во внешнем реестре |
token |
String | Не обязательный. Токен или пароль для авторизации во внешнем реестре |
isCaching |
Boolean | Не обязательный. Репозиторий будет сохранять кэшированные артефакты локально true или нет false (по умолчанию) |
isOffline |
Boolean | Не обязательный. Получение артефактов возможно только из локального кэша true или нет false (по умолчанию) |
expireHours |
Integer | Не обязательный. Время жизни неиспользуемых артефактов (в часах). При значении 0 (по умолчанию) указывает на отсутствие ограничения. |
metadataRetrievalIntervalSeconds |
Integer | Не обязательный. Период кэширования метаданных артефакта (в секундах). Значение 0 указывает на отсутствие кэширования. По умолчанию 7200. |
Пример JSON объекта
{
"type" : "PROXY",
"repositoryName": "maven-proxy",
"description": "Проксирующий репозиторий maven реестра",
"packageType": "maven",
"proxySettings": {
"url": "https://repo.maven.apache.org/maven2/",
"username": "username",
"isCaching": true,
"token": "qwerty123",
"isOffline": false,
"expireHours": 24,
"metadataRetrievalIntervalSeconds": 7200
}
}
Responses
STATUS 201 - Проксирующий репозиторий реестра успешно создан:
Пример ответа
{
"title": "maven-proxy",
"repositoryType": "PROXY",
"repositoryUuid": "ddc72f64-aaaa-aaaa-aaaa-e212e088bffc",
"packageType": "maven",
"description": "Проксирующий репозиторий maven реестра",
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Создание виртуального репозитория
| Параметр | Тип | Описание |
|---|---|---|
type |
String | Тип репозитория реестра. Для создания виртуального репозитория необходимо указать значение VIRTUAL |
repositoryName |
String | Название репозитория реестра |
description |
String | Не обязательный. Описание репозитория реестра |
packageType |
String | Тип пакетов репозитория реестра. Возможные значения: generic, maven, npm, pypi, nuget, composer, opm, debian, container, helm, cran, rpm |
virtualSettings |
Object | Объект с полями, описывающими настройки виртуального репозитория |
Настройки виртуального репозитория:
| Параметр | Тип | Описание |
|---|---|---|
includedRepositoryUuids |
Array | Массив, содержащий UUID репозиториев реестра, которые будет включены в создаваемый виртуальный репозиторий |
allowRemoteProxying |
Boolean | Не обязательный. Запросы к проксирующим репозиториям могут извлекать проксируемые пакеты true или не могут false (по умолчанию) |
deploymentRepositoryUuid |
String | Не обязательный. UUID локального репозитория реестра, выбранного в качестве репозитория развертывания по умолчанию |
Пример JSON объекта
{
"type" : "VIRTUAL",
"repositoryName": "maven-virtual",
"description": "Виртуальный репозиторий maven реестра",
"packageType": "maven",
"virtualSettings": {
"includedRepositoryUuids": [
"ddc72f64-aaaa-aaaa-aaaa-e212e088bffc",
"fa6d59b5-aaaa-aaaa-aaaa-cf1806aa929c"
]
"allowRemoteProxying": true
"deploymentRepositoryUuid": "fa6d59b5-aaaa-aaaa-aaaa-cf1806aa929c"
}
}
Responses
STATUS 201 - Виртуальный репозиторий реестра успешно создан:
Пример ответа
{
"title": "maven-virtual",
"repositoryType": "VIRTUAL",
"repositoryUuid": "3cd7ccd1-aaaa-aaaa-aaaa-a1bfd03f9801",
"packageType": "maven",
"description": "Виртуальный репозиторий maven реестра",
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение репозитория реестра
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{registryRepositoryUuid}
Компании: PUT /company/{companyAlias}/repositories/{registryRepositoryUuid}
Всего сервиса: PUT /instance/repositories/{registryRepositoryUuid}
Запрос изменяет указанный репозиторий реестра указанного владельца и возвращает его UUID.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
companyAlias |
String | Псевдоним компании |
registryRepositoryUuid |
String | UUID репозитория реестра |
Request
Поддерживаемый формат JSON
В зависимости от набора полей, которые передаются в теле запроса, возможно изменение локального, проксирующего или виртуального репозитория.
Изменение локального репозитория
| Параметр | Тип | Описание |
|---|---|---|
type |
String | Тип репозитория реестра. Для изменения локального репозитория необходимо указать значение LOCAL |
description |
String | Не обязательный. Описание репозитория реестра |
settings |
Object | Объект с полями, описывающими настройки локального репозитория |
Набор полей, описывающих настройки локального репозитория:
| Параметр | Тип | Описание |
|---|---|---|
hasAnonymousAccess |
Boolean | Не обязательный. Анонимный доступ разрешен true или запрещен false (по умолчанию) |
isDeletePackageAllowed |
Boolean | Не обязательный. Удаление пакетов разрешено true или запрещено false (по умолчанию) |
packageReuploadType |
String | Не обязательный. Тип перезаписи пакетов. Возможные значения: NONE - запрет перезаписывания или OVERRIDE - перезапись файлов |
Пример JSON объекта
{
"type" : "LOCAL",
"description": "Локальный репозиторий generic реестра",
"settings": {
"hasAnonymousAccess": true,
"isDeletePackageAllowed": true,
"packageReuploadType": "OVERRIDE"
}
}
Responses
STATUS 200 - Локальный репозиторий реестра успешно изменен:
Пример ответа
{
"title": "generic-local",
"repositoryType": "LOCAL",
"repositoryUuid": "b24769db-aaaa-aaaa-aaaa-a3006f0271f6",
"packageType": "generic",
"description": "Локальный репозиторий generic реестра",
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение проксирующего репозитория
| Параметр | Тип | Описание |
|---|---|---|
type |
String | Тип репозитория реестра. Для изменения проксирующего репозитория необходимо указать значение PROXY |
description |
String | Не обязательный. Описание репозитория реестра |
proxySettings |
Object | Объект с полями, описывающими настройки проксирующего репозитория |
Набор полей, описывающих настройки проксирующего репозитория:
| Параметр | Тип | Описание |
|---|---|---|
url |
String | Не обязательный. Ссылка на внешний реестр, куда будут проксироваться запросы |
username |
String | Не обязательный. Имя пользователя для авторизации во внешнем реестре |
token |
String | Не обязательный. Токен или пароль для авторизации во внешнем реестре |
isCaching |
Boolean | Не обязательный. Репозиторий будет сохранять кэшированные артефакты локально true или нет false |
isOffline |
Boolean | Не обязательный. Получение артефактов возможно только из локального кэша true или нет false (по умолчанию) |
expireHours |
Integer | Не обязательный. Время жизни неиспользуемых артефактов (в часах) |
metadataRetrievalIntervalSeconds |
Integer | Не обязательный. Период кэширования метаданных артефакта (в секундах) |
Пример JSON объекта
{
"type" : "PROXY",
"description": "Проксирующий репозиторий maven реестра",
"proxySettings": {
"url": "https://repo.maven.apache.org/maven2/",
"username": "username",
"isCaching": true,
"token": "qwerty123",
"isOffline": false,
"expireHours": 24,
"metadataRetrievalIntervalSeconds": 7200
}
}
Responses
STATUS 200 - Проксирующий репозиторий реестра успешно изменен:
Пример ответа
{
"title": "maven-proxy",
"repositoryType": "PROXY",
"repositoryUuid": "ddc72f64-aaaa-aaaa-aaaa-e212e088bffc",
"packageType": "maven",
"description": "Проксирующий репозиторий maven реестра",
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Изменение виртуального репозитория
| Параметр | Тип | Описание |
|---|---|---|
type |
String | Тип репозитория реестра. Для изменения виртуального репозитория необходимо указать значение VIRTUAL |
description |
String | Не обязательный. Описание репозитория реестра |
virtualSettings |
Object | Объект с полями, описывающими настройки виртуального репозитория |
Настройки виртуального репозитория:
| Параметр | Тип | Описание |
|---|---|---|
includedRepositoryUuids |
Array | Не обязательный. Массив, содержащий UUID репозиториев реестра, которые будет включены в изменяемый виртуальный репозиторий |
allowRemoteProxying |
Boolean | Не обязательный. Запросы к проксирующим репозиториям могут извлекать проксируемые пакеты true или не могут false (по умолчанию) |
deploymentRepositoryUuid |
String | Не обязательный. UUID локального репозитория реестра, выбранного в качестве репозитория развертывания по умолчанию |
При изменении одного из полей
deploymentRepositoryUuidилиincludedRepositoryUuidsнеобходимо передавать оба.
Пример JSON объекта
{
"type" : "VIRTUAL",
"description": "Виртуальный репозиторий maven реестра",
"virtualSettings": {
"includedRepositoryUuids": [
"ddc72f64-aaaa-aaaa-aaaa-e212e088bffc",
"fa6d59b5-aaaa-aaaa-aaaa-cf1806aa929c"
]
"allowRemoteProxying": true
"deploymentRepositoryUuid": "fa6d59b5-aaaa-aaaa-aaaa-cf1806aa929c"
}
}
Responses
STATUS 200 - Виртуальный репозиторий реестра успешно изменен:
Пример ответа
{
"title": "maven-virtual",
"repositoryType": "VIRTUAL",
"repositoryUuid": "3cd7ccd1-aaaa-aaaa-aaaa-a1bfd03f9801",
"packageType": "maven",
"description": "Виртуальный репозиторий maven реестра",
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление репозитория реестра
Проекта: DELETE /project/{ownerAlias}/{projectAlias}/repositories/{registryRepositoryUuid}
Компании: DELETE /company/{companyAlias}/repositories/{registryRepositoryUuid}
Всего сервиса: DELETE /instance/repositories/{registryRepositoryUuid}
Запрос удаляет указанный репозиторий реестра проекта.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
ownerAlias |
String | Псевдоним владельца проекта |
projectAlias |
String | Псевдоним проекта |
companyAlias |
String | Псевдоним компании |
registryRepositoryUuid |
String | UUID репозитория реестра |
Responses
STATUS 204 - Репозиторий реестра успешно удален.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Общие методы пакетов репозиториев реестра
Получение списка пакетов репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/packages
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/packages
Всего сервиса: GET /instance/repositories/{repositoryUuid}/packages
Запрос возвращает список пакетов указанного репозитория реестра, есть возможность настройки количества отображаемых объектов на странице.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, список пакетов которого необходимо получить |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Список пакетов репозитория реестра успешно возвращен:
Пример ответа
{
"_embedded": {
"simplePackageInfoModelList": [
{
"id": "3cf3829a-aaaa-aaaa-aaaa-d4bba49cf7f3",
"name": "package-name",
"version": "1.0.0",
"groupId": "package-group-id",
"artifactId": "package-artifact-id",
"type": "maven",
"ownerUuid": "5e704785-aaaa-aaaa-aaaa-dd98f2eeb5a6",
"ownerType": "REPOSITORY"
}
]
},
"page": {
"size": 10,
"totalElements": 1,
"totalPages": 1,
"number": 0
}
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение пакета репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/packages/{packageUuid}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/packages/{packageUuid}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/packages/{packageUuid}
Запрос возвращает пакет указанного репозитория реестра.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, пакет которого необходимо получить |
packageUuid |
String | UUID пакета, который необходимо получить |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Пакет репозитория реестра успешно возвращен:
Пример ответа
{
"id": "3cf3829a-aaaa-aaaa-aaaa-d4bba49cf7f3",
"name": "package-name",
"version": "1.0.0",
"groupId": "package-group-id",
"artifactId": "package-artifact-id",
"type": "maven",
"ownerUuid": "5e704785-aaaa-aaaa-aaaa-dd98f2eeb5a6",
"ownerType": "REPOSITORY"
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка версий пакета репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/version-list
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/version-list
Всего сервиса: GET /instance/repositories/{repositoryUuid}/packages/{packageUuid}/version-list
Запрос возвращает список версий пакета указанного репозитория реестра, есть возможность настройки количества отображаемых объектов на странице.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, список версий пакета которого необходимо получить |
packageUuid |
String | UUID пакета, список версий которого необходимо получить |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Список версий пакета репозитория реестра успешно возвращен:
Пример ответа
{
"_embedded": {
"repositoryPackageVersionModelList": [
{
"id": "dc5fd45e-aaaa-aaaa-aaaa-a85421f614b4",
"baseVersion": "1.0.0",
"version": "1.0.0",
"lowerVersion": "1.0.0",
"downloadCount": 10,
"languageVersion": null,
"packageUploadType": "TRANSPORT",
"packageFiles": [
{
"id": "f54229e0-aaaa-aaaa-aaaa-7b28d4cba269",
"name": "package-name-1.0.0",
"size": 5000,
"hashMd5": "99bad348daaaaaaaaaaaa8bfd64a6b36",
"hashSHA1": "eff19953294243aaaaaaaaaaaa198276da1d6b08",
"hashSHA256": "d7a08a99b2502f0bb68cd4e1f9aaaaaaaaaaaad3208bd0f73366c03fc3548a42",
"hashSHA512": "ec795b2f32982c1af8dccef57553aa9d959c13ee829aebd6459ba22b4eaaaaaaaaaaaaa89f63ad2f0d8c45d59cd020a15cd976ddb4bf20f1044b492a406e029e",
"packageUploadType": "TRANSPORT",
"createdAt": "2025-01-01T12:00:00.000000",
"nodeUuid": "5b359e3a-aaaa-aaaa-aaaa-66ea4c74f3f3"
}
],
"internal": false
},
{
"id": "147d89fd-aaaa-aaaa-aaaa-742c2101a997",
"baseVersion": "1.0.1",
"version": "1.0.1",
"lowerVersion": "1.0.1",
"downloadCount": 17,
"languageVersion": null,
"packageUploadType": "TRANSPORT",
"packageFiles": [
{
"id": "0d66c254-aaaa-aaaa-aaaa-a629539389a4",
"name": "package-name-1.0.1",
"size": 5005,
"hashMd5": "2abd6856baaaaaaaaaaaadfb52f4df68",
"hashSHA1": "4a2b7185be9155aaaaaaaaaaaaef2f15e0f4fffd",
"hashSHA256": "fa68451ea830572ed43ffe51d7aaaaaaaaaaaa65a602a51f49d6be02063a65f3",
"hashSHA512": "e1c4acc68f7114cd501754d07e51a9345bc1106623ea9e38cd6d40b188aaaaaaaaaaaa27da9d71da608b6691ef1f9d75d11253567350fbb4a949770a1cb7023e",
"packageUploadType": "TRANSPORT",
"createdAt": "2025-01-10T12:00:00.000000",
"nodeUuid": "ab2ca6ba-aaaa-aaaa-aaaa-d733290b6f7d"
}
],
"internal": false
}
]
},
"page": {
"size": 10,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение версии пакета репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/version-list/{packageVersion}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/version-list/{packageVersion}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/packages/{packageUuid}/version-list/{packageVersion}
Запрос возвращает версию пакета указанного репозитория реестра.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, версию пакета которого необходимо получить |
packageUuid |
String | UUID пакета, версию которого необходимо получить |
packageVersion |
String | Версия пакета, которую необходимо получить |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Версия пакета репозитория реестра успешно возвращена:
Пример ответа
{
"id": "147d89fd-aaaa-aaaa-aaaa-742c2101a997",
"baseVersion": "1.0.1",
"version": "1.0.1",
"lowerVersion": "1.0.1",
"downloadCount": 17,
"languageVersion": null,
"packageUploadType": "TRANSPORT",
"packageFiles": [
{
"id": "0d66c254-aaaa-aaaa-aaaa-a629539389a4",
"name": "package-name-1.0.1",
"size": 5005,
"hashMd5": "2abd6856baaaaaaaaaaaadfb52f4df68",
"hashSHA1": "4a2b7185be9155aaaaaaaaaaaaef2f15e0f4fffd",
"hashSHA256": "fa68451ea830572ed43ffe51d7aaaaaaaaaaaa65a602a51f49d6be02063a65f3",
"hashSHA512": "e1c4acc68f7114cd501754d07e51a9345bc1106623ea9e38cd6d40b188aaaaaaaaaaaa27da9d71da608b6691ef1f9d75d11253567350fbb4a949770a1cb7023e",
"packageUploadType": "TRANSPORT",
"createdAt": "2025-01-10T12:00:00.000000",
"nodeUuid": "ab2ca6ba-aaaa-aaaa-aaaa-d733290b6f7d"
}
],
"internal": false
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Получение списка файлов пакета репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/package-file
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/package-file
Всего сервиса: GET /instance/repositories/{repositoryUuid}/packages/{packageUuid}/package-file
Запрос возвращает список файлов пакета указанного репозитория реестра, есть возможность настройки количества отображаемых объектов на странице.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, список файлов пакета которого необходимо получить |
packageUuid |
String | UUID пакета, список файлов которого необходимо получить |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Список файлов пакета репозитория реестра успешно возвращен:
Пример ответа
{
"_embedded": {
"repositoryPackageFileModelList": [
{
"id": "f54229e0-aaaa-aaaa-aaaa-7b28d4cba269",
"name": "package-name-1.0.0",
"size": 5000,
"hashMd5": "99bad348daaaaaaaaaaaa8bfd64a6b36",
"hashSHA1": "eff19953294243aaaaaaaaaaaa198276da1d6b08",
"hashSHA256": "d7a08a99b2502f0bb68cd4e1f9aaaaaaaaaaaad3208bd0f73366c03fc3548a42",
"hashSHA512": "ec795b2f32982c1af8dccef57553aa9d959c13ee829aebd6459ba22b4eaaaaaaaaaaaaa89f63ad2f0d8c45d59cd020a15cd976ddb4bf20f1044b492a406e029e",
"packageUploadType": "TRANSPORT",
"createdAt": "2025-01-01T12:00:00.000000",
"nodeUuid": "5b359e3a-aaaa-aaaa-aaaa-66ea4c74f3f3"
},
{
"id": "0d66c254-aaaa-aaaa-aaaa-a629539389a4",
"name": "package-name-1.0.1",
"size": 5005,
"hashMd5": "2abd6856baaaaaaaaaaaadfb52f4df68",
"hashSHA1": "4a2b7185be9155aaaaaaaaaaaaef2f15e0f4fffd",
"hashSHA256": "fa68451ea830572ed43ffe51d7aaaaaaaaaaaa65a602a51f49d6be02063a65f3",
"hashSHA512": "e1c4acc68f7114cd501754d07e51a9345bc1106623ea9e38cd6d40b188aaaaaaaaaaaa27da9d71da608b6691ef1f9d75d11253567350fbb4a949770a1cb7023e",
"packageUploadType": "TRANSPORT",
"createdAt": "2025-01-10T12:00:00.000000",
"nodeUuid": "ab2ca6ba-aaaa-aaaa-aaaa-d733290b6f7d"
}
]
},
"page": {
"size": 10,
"totalElements": 2,
"totalPages": 1,
"number": 0
}
}
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление пакета репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/delete
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/delete
Всего сервиса: GET /instance/repositories/{repositoryUuid}/packages/{packageUuid}/delete
Запрос удаляет пакет указанного репозитория реестра.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, пакета которого необходимо удалить |
packageUuid |
String | UUID пакета, который необходимо удалить |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Пакета репозитория реестра успешно удалена.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Удаление версии пакета репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/{packageVersion}/delete
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/packages/{packageUuid}/{packageVersion}/delete
Всего сервиса: GET /instance/repositories/{repositoryUuid}/packages/{packageUuid}/{packageVersion}/delete
Запрос удаляет пакет указанного репозитория реестра.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, версию пакета которого необходимо удалить |
packageUuid |
String | UUID пакета, версию которого необходимо удалить |
packageVersion |
String | Версия пакета, которую необходимо удалить |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Версия пакета репозитория реестра успешно удалена.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Частные методы пакетов репозиториев реестра
Публикация Generic пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/generic/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/generic/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/generic/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом Generic. По умолчанию, путь внутри репозитория формируется на основании полей packageName, packageVersion и fileName. Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
packageName |
String | Имя, с которым будет опубликован артефакт |
packageVersion |
String | Версия, с которой будет опубликован артефакт |
fileName |
String | Имя файла, с которым будет опубликован артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 400 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
Скачивание Generic пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/generic/{packageName}/{packageVersion}/{fileName}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/generic/{packageName}/{packageVersion}/{fileName}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/generic/{packageName}/{packageVersion}/{fileName}
Запрос скачивает артефакт из репозитория реестра с типом Generic.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageName |
String | Имя артефакты, который будет скачен |
packageVersion |
String | Версия артефакта, который будет скачен |
fileName |
String | Имя файла артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация Maven пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/maven/{groupId}/{artifactId}/{packageVersion}/{fileName}?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/maven/{groupId}/{artifactId}/{packageVersion}/{fileName}?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/maven/{groupId}/{artifactId}/{packageVersion}/{fileName}?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом Maven. По умолчанию, путь внутри репозитория формируется на основании полей groupId, artifactId, packageVersion и fileName. Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
groupId |
String | Идентификатор группы, с которым будет опубликован артефакт |
artifactId |
String | Идентификатор артефакта, с которым он будет опубликован |
packageVersion |
String | Версия файла, с которой будет опубликован артефакт |
fileName |
String | Имя файла, с которым будет опубликован артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 400 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
Скачивание Maven пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/maven/{packageUuid}/{packageVersion}/{fileUuid}/download
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/maven/{packageUuid}/{packageVersion}/{fileUuid}/download
Всего сервиса: GET /instance/repositories/{repositoryUuid}/maven/{packageUuid}/{packageVersion}/{fileUuid}/download
Запрос скачивает артефакт из репозитория реестра с типом Maven.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageUuid |
String | UUID артефакта, который будет скачен |
packageVersion |
String | Версия артефакта, который будет скачен |
fileUuid |
String | UUID файла артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация NPM пакета в репозиторий
В зависимости от наличия группы пакетов scope необходимо использовать один из перечисленных ниже методов:
-
Публикация пакета, для которого не указана группа
scope, в репозиторий:Проекта: PUT
/project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/npm/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node}Компании: PUT
/company/{companyAlias}/repositories/{repositoryUuid}/npm/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node}Всего сервиса: PUT
/instance/repositories/{repositoryUuid}/npm/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node} -
Публикация пакета, для которого указана группа
scope, в репозиторий:Проекта: PUT
/project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/npm/{packageName}/{scope}/{packageVersion}/{fileName}?nodePath={path/to/node}Компании: PUT
/company/{companyAlias}/repositories/{repositoryUuid}/npm/{packageName}/{scope}/{packageVersion}/{fileName}?nodePath={path/to/node}Всего сервиса: PUT
/instance/repositories/{repositoryUuid}/npm/{packageName}/{scope}/{packageVersion}/{fileName}?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом NPM. По умолчанию, путь внутри репозитория формируется на основании полей packageName, scope (при наличии), packageVersion и fileName. Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
packageName |
String | Имя пакета, с которым будет опубликован артефакт |
scope |
String | Группа артефакта, с которой он будет опубликован |
packageVersion |
String | Версия файла, с которой будет опубликован артефакт |
fileName |
String | Имя файла, с которым будет опубликован артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 400 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
Скачивание NPM пакета из репозитория
В зависимости от наличия группы пакетов scope необходимо использовать один из перечисленных ниже методов:
- Скачивание пакета, для которого не указана группа
scope, из репозитория:
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/npm/{packageName}/{packageVersion}/{fileName}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/npm/{packageName}/{packageVersion}/{fileName}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/npm/{packageName}/{packageVersion}/{fileName}
- Скачивание пакета, для которого указана группа
scope, из репозитория:
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/npm/{packageName}/{scope}/{packageVersion}/{fileName}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/npm/{packageName}/{scope}/{packageVersion}/{fileName}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/npm/{packageName}/{scope}/{packageVersion}/{fileName}
Запрос скачивает артефакт из репозитория реестра с типом NPM.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageName |
String | Имя артефакта, который будет скачен |
scope |
String | Группа артефакта, который будет скачен |
packageVersion |
String | Версия артефакта, который будет скачен |
fileUuid |
String | UUID файла артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация PyPi пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/pypi/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/pypi/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/pypi/{packageName}/{packageVersion}/{fileName}?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом PyPi. По умолчанию, путь внутри репозитория формируется на основании полей packageName, packageVersion и fileName. Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
packageName |
String | Имя пакета, с которым будет опубликован артефакт |
packageVersion |
String | Версия файла, с которой будет опубликован артефакт |
fileName |
String | Имя файла, с которым будет опубликован артефакт. Необходимо указывать название файла в формате [имя]-[версия].tar.gz или [имя]_[версия].whl |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 400 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
Скачивание PyPi пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/pypi/{packageName}/{packageVersion}/{fileName}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/pypi/{packageName}/{packageVersion}/{fileName}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/pypi/{packageName}/{packageVersion}/{fileName}
Запрос скачивает артефакт из репозитория реестра с типом PyPi.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageName |
String | Имя артефакта, который будет скачен |
packageVersion |
String | Версия артефакта, который будет скачен |
fileName |
String | Имя файла артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация NuGet пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/nuget?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/nuget?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/nuget?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом NuGet. По умолчанию, путь внутри репозитория формируется на основании внутренней мета-информации пакета (packageName, packageVersion и fileName). Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 400 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
Скачивание NuGet пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/nuget/{packageName}/{packageVersion}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/nuget/{packageName}/{packageVersion}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/nuget/{packageName}/{packageVersion}
Запрос скачивает артефакт из репозитория реестра с типом NuGet.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageName |
String | Имя артефакта, который будет скачен |
packageVersion |
String | Версия артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация Composer пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/composer/{packageVersion}?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/composer/{packageVersion}?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/composer/{packageVersion}?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом Composer. По умолчанию, путь внутри репозитория формируется на основании packageName (получаемой из внутренней мета-информации пакета) и packageVersion. Если указанная в запросе версия пакета не совпадает с версией из мета-информации пакета, то пакет будет загружен с версией из внутренней информации самого пакета. Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
packageVersion |
String | Версия артефакта, который будет опубликован |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 400 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
Скачивание Composer пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/composer/{packageName}/{packageVersion}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/composer/{packageName}/{packageVersion}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/composer/{packageName}/{packageVersion}
Запрос скачивает артефакт из репозитория реестра с типом Composer.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageName |
String | Имя артефакта, который будет скачен. Ожидается наиболее распространенный формат имени Composer пакета - две части, разделенных символом / |
packageVersion |
String | Версия артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация OPM пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/opm/{fileName}?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/opm/{fileName}?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/opm/{fileName}?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом OPM. По умолчанию, путь внутри репозитория формируется на основании packageName, packageVersion (получаемой из внутренней мета-информации пакета) и fileName. Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
fileName |
String | Имя файла, с которым будет опубликован артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 400 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
Скачивание OPM пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/opm/{packageName}/{packageVersion}/{fileName}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/opm/{packageName}/{packageVersion}/{fileName}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/opm/{packageName}/{packageVersion}/{fileName}
Запрос скачивает артефакт из репозитория реестра с типом OPM.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageName |
String | Имя артефакта, который будет скачен. |
packageVersion |
String | Версия артефакта, который будет скачен |
fileName |
String | Имя файла артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация Cran пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/cran/{languageVersion}/{fileName}?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/cran/{languageVersion}/{fileName}?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/cran/{languageVersion}/{fileName}?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом Cran. По умолчанию, путь внутри репозитория формируется на основании packageName, packageVersion (получаемой из внутренней мета-информации пакета) и fileName. Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
languageVersion |
String | Версия языка R, с которой будет опубликован артефакт |
fileName |
String | Имя файла, с которым будет опубликован артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 400 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
Скачивание Cran пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/cran/{fileName}?languageVersion={languageVersion}&platform={platform}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/cran/{fileName}?languageVersion={languageVersion}&platform={platform}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/cran/{fileName}?languageVersion={languageVersion}&platform={platform}
Запрос скачивает артефакт из репозитория реестра с типом Cran.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
fileName |
String | Имя файла артефакта, который будет скачен |
languageVersion |
String | Версия языка R, с которым будет скачен артефакт |
platform |
String | Платформа, для которой создан пакет. Обязателен только для скачивания файлов в формате .tgz и .zip. Может принимать следующие значения: macosx, windows |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация Gem пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/rubygem?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/rubygem?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/rubygem?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом Gem. По умолчанию, путь внутри репозитория формируется на основании внутренней мета-информации пакета (packageName, packageVersion и fileName). Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
STATUS 409 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
Скачивание Gem пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/rubygem/{packageName}/{packageVersion}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/rubygem/{packageName}/{packageVersion}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/rubygem/{packageName}/{packageVersion}
Запрос скачивает артефакт из репозитория реестра с типом Gem.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageName |
String | Имя артефакта, который будет скачен |
packageVersion |
String | Версия артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация Cargo пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/cargo?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/cargo?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/cargo?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом Cargo. По умолчанию, путь внутри репозитория формируется на основании внутренней мета-информации пакета (packageName, packageVersion и fileName). Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
STATUS 409 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
Скачивание Cargo пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/cargo/{packageName}/{packageVersion}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/cargo/{packageName}/{packageVersion}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/cargo/{packageName}/{packageVersion}
Запрос скачивает артефакт из репозитория реестра с типом Cargo.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
packageName |
String | Имя артефакта, который будет скачен |
packageVersion |
String | Версия артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
Публикация Conda пакета в репозиторий
Проекта: PUT /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/conda/{fileName}?nodePath={path/to/node}
Компании: PUT /company/{companyAlias}/repositories/{repositoryUuid}/conda/{fileName}?nodePath={path/to/node}
Всего сервиса: PUT /instance/repositories/{repositoryUuid}/conda/{fileName}?nodePath={path/to/node}
Запрос загружает прикрепленный файл в репозиторий реестра с типом Conda. По умолчанию, путь внутри репозитория формируется на основании внутренней мета-информации пакета (packageChannel, packageName, packageVersion и fileName). Для загрузки артефакта по целевому пути необходимо в запросе передать необязательный параметр nodePath. Для публикации артефакта в виртуальный репозиторий, в нем необходимо указать репозиторий развертывания по умолчанию.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, в который необходимо опубликовать артефакт |
fileName |
String | Имя файла, с которым будет опубликован артефакт |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно опубликован.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.
STATUS 405 - Попытка загрузки артефакт в виртуальный репозиторий без репозитория развертывания по умолчанию.
STATUS 409 - Попытка загрузить артефакт по используемому пути в репозиторий с отключенной перезаписью.
Скачивание Conda пакета из репозитория
Проекта: GET /project/{ownerAlias}/{projectAlias}/repositories/{repositoryUuid}/conda/{platform}/{fileName}
Компании: GET /company/{companyAlias}/repositories/{repositoryUuid}/conda/{platform}/{fileName}
Всего сервиса: GET /instance/repositories/{repositoryUuid}/conda/{platform}/{fileName}
Запрос скачивает артефакт из репозитория реестра с типом Conda.
| Переменная пути запроса | Тип | Описание |
|---|---|---|
repositoryUuid |
String | UUID репозитория реестра, из которого будет скачен артефакт |
platform |
String | Платформа, для которой собран артефакт, который будет скачен |
fileName |
String | Имя файла артефакта, который будет скачен |
ownerAlias |
String | Псевдоним владельца проекта, в котором расположен репозиторий реестра |
projectAlias |
String | Псевдоним проекта, в котором расположен репозиторий реестра |
companyAlias |
String | Псевдоним компании, в которой расположен репозиторий реестра |
Responses
STATUS 200 - Артефакт успешно скачен.
STATUS 403 - Нет прав для доступа.
STATUS 404 - Данные по запросу не найдены.