Реестр пакетов Conan
Для работы с реестром Conan, необходимо получить транспортный токен GitFlic. С инструкцией по получению токена можно ознакомиться на странице.
В документации ниже встречается атрибут {домен_gitflic} На его место необходимо указать домен, в зависимости от варианта используемого GitFlic:
- для SaaS версии
registry.gitflic.ru - для Self-hosted
localhost:8080
Домен и порт для self-hosted версии может отличаться.
Настройка реестра Conan
Для работы, необходимо добавить реестр в список удаленных источников
Значение атрибута url зависит от уровня доступа:
| Уровень | URL |
|---|---|
| Проект | http(s)://<домен_gitflic>/project/{ownerAlias}/{projectAlias}/package/-/conan |
| Компания | http(s)://<домен_gitflic>/company/{companyAlias}/package/-/conan |
| Инстанс | http(s)://<домен_gitflic>/registry/package/-/conan |
| Переменная в URL | Описание |
|---|---|
projectAlias |
Псевдоним проекта |
companyAlias |
Псевдоним компании |
ownerAlias |
Псевдоним владельца проекта |
Пример использования для проекта:
conan remote add {remote_name} http(s)://<домен_gitflic>/project/{ownerAlias}/{projectAlias}/package/-/conan
Пример использования для компании:
conan remote add {remote_name} http(s)://<домен_gitflic>/company/{companyAlias}/package/-/conan
В источнике необходимо авторизоваться с помощью команды:
conan remote login {remote_name}
Работа с реестром
Скачивание пакета
Для установки пакета в качестве зависимости добавьте в блок requires файла conanfile.py или conanfile.txt необходимый пакет с указанием версии, затем выполните в директории содержащем файл с зависимостями.
conan install -r {remote_name}
Для установки самого пакета выполните команду:
conan install --require {package_name}/{package_version} -r {remote_name}
Поиск пакета
При помощи conan можно посмотреть список источников где доступен необходимый пакет
conan search {package_name}
Публикация пакета
В директории с настроенным файлом conanfile.py выполнить команду для сборки пакета:
conan create
Для публикации собранного пакета используйте команду:
conan upload {package_name} -r {remote_name}
Для загрузки только рецепта используется флаг --only-recipe
Удаление пакета
Для удаления пакета используется команда
conan remove {package_name}