Начало работы с пакетами Cargo в Azure Artifacts
Azure DevOps Services | Azure DevOps Server 2022
С помощью Azure Artifacts можно публиковать и загружать пакеты Cargo в каналы и общедоступные реестры. В этой статье приводится руководство по настройке вашего проекта и публикации пакетов Cargo в канале артефактов Azure.
Предварительные условия
Организация Azure DevOps и проект. Создайте организацию или проект, если вы еще не сделали этого.
Скачайте и установите rustup.
Создать ленту
Если у вас уже есть канал Azure Artifacts, который подходит для использования с Cargo, вы можете перейти к следующему разделу.
Примечание.
Azure Artifacts рекомендует использовать отдельный фид для использования крейтов из crates.io и отдельный фид исключительно для публикации внутренних крейтов.
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите артефакты, затем нажмите Создать канал.
Присвойте веб-каналу имя и укажите ее видимость. Установите флажок «Источники с восходящими зависимостями», если вы хотите включить пакеты из общедоступных реестров, а затем выберите Сферу для вашего фида.
После завершения работы выберите Создать.
Подключение к веб-каналу
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите Артефакты, а затем выберите свой канал в раскрывающемся меню.
Выберите Подключиться к каналу, а затем выберите Cargo в области выбора инструментов.
Следуйте инструкциям по настройке проекта на странице Подключение к каналу.
Внимание
Поддержка Cargo в Azure Artifacts требует Rust версии 1.74 или более поздней, которая включает поддержку функции 'registry-auth'.
Чтобы обновить версию Rust, выполните команду rustup update
Внимание
В настоящее время Cargo находится в предварительной версии и может потребовать ночной цепочки инструментов с включенной нестабильной функцией. Чтобы включить registry-auth
, добавьте следующее в файл .cargo/config.toml.
[unstable]
registry-auth = true
Чтобы использовать ночной тулчейн, выполните следующую команду:
rustup default nightly
Публикация пакетов
Чтобы опубликовать пакет Cargo, выполните следующую команду в каталоге проекта:
cargo publish