Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure DevOps Hizmetleri | Azure DevOps Server | Azure DevOps Server 2022
Azure Artifacts kullanarak Kargo paketlerini kendi akışlarınızdan ve crates.io gibi genel kayıt defterlerinden yayımlayabilir ve geri yükleyebilirsiniz. İç kasaları barındırmak, yukarı akış kayıt defterlerine bağlanmak ve tek bir akıştan paket erişimini yönetmek için Azure Artifacts kullanın. Bu hızlı başlangıç, bir akış oluşturma, Kargo projenizi yapılandırma ve Azure Artifacts kullanarak Kargo paketlerini yayımlama ve kullanma konusunda size yol gösterir.
Önkoşullar
| ürün | Requirements |
|---|---|
| Azure DevOps | - Azure DevOps kuruluşu. - Bir Azure DevOps proje. - rustupindirin ve yükleyin. Cargo 1.74.0 veya daha yeni bir sürümüne ihtiyacınız var. |
Akış oluşturma
Zaten bir Azure Artifacts akışınız varsa sonraki bölüme gidin. Aksi takdirde, akış oluşturmak için bu adımları izleyin. Azure Artifacts, crates.io gibi genel kayıtlerden crate tüketmek için tek bir akışın, kurum içi crate’leri yayımlamak için ise ayrı bir akışın kullanılmasını önerir.
Azure DevOps oturum açın ve projenize gidin.
Yapıtlar'ı ve ardından Akış Oluştur seçeneğini seçin.
Akışınız için bir Ad girin, Görünürlüğünü seçin ve ardından bir Kapsam seçin. Genel kayıt defterlerindeki paketleri dahil etmek için Yukarı akış kaynakları onay kutusunu seçtiğinizden emin olun.
İşiniz bittiğinde Oluştur'u seçin.
Akışa bağlanma
Paketleri akışınızdan yayımlayabilmeniz veya geri yükleyebilmeniz için önce projenizi kimlik doğrulaması ve akışa bağlanacak şekilde yapılandırmanız gerekir.
Azure DevOps oturum açın ve projenize gidin.
Yapıtlar'ı seçin ve ardından açılan menüden akışınızı seçin.
Akışa bağlan'ı seçin ve ardından sol gezinti bölmesinden Kargo'ya tıklayın.
Dosyanızı yapılandırmak için
config.tomlbölümündeki adımları izleyin.Aynı sayfada, kimlik bilgisi sağlayıcısını ayarlamak ve akışınıza bağlanmak için Kimlik bilgisi sağlayıcısı yapılandırma ve Kayıt defterinde oturum açma bölümlerindeki yönergeleri izleyin. Ayrıntılı adımlar için bkz . Kargo - proje kurulumu.
Önemli
Azure Artifacts'da kargo desteği, özellik için destek içeren Rust 1.74 veya sonraki bir registry-auth sürümü gerektirir.
Rust sürümünüzü güncellemek için rustup update komutunu çalıştırın
Önemli
Kargo şu anda önizleme aşamasındadır ve kararsız özelliğinregistry-auth etkin olduğu gecelik araç zincirini gerektirebilir.
registry-auth'ı etkinleştirmek için .cargo/config.toml'a aşağıdaki ayarı ekleyin.
[unstable]
registry-auth = true
Gecelik araç zincirini kullanmak için aşağıdaki komutu çalıştırın:
rustup default nightly
Paketleri yayımlama
Kargo paketini yayımlamadan önce, Azure Artifacts akışınızla kimlik doğrulaması yapabilmeniz için Akışa bağlanma adımlarını tamamladığınızdan emin olun.
Cargo.toml dosyanızı içeren dizinden aşağıdaki komutu çalıştırarak paketinizi yayımlayın:
cargo publish
Hatayla karşılaşırsanız GLib-GObject-CRITICAL - libsecret-CRITICAL şu adımları izlediğinize emin olun:
Libsecret'in yüklü olduğunu doğrulayın:
sudo apt update && sudo apt install libsecret-1-0gnome-keyring'in çalıştığından emin olun:
gnome-keyring-daemon --start --components=secretsRust'ı en son kararlı sürüme güncelleştirin ve varsayılan araç zinciri olarak kararlı olarak ayarlayın:
rustup update rustup default stableSorun devam ederse, daha fazla ayrıntı toplamak için
cargo publishöğesini ayrıntılı günlük kaydıyla yeniden çalıştırın:RUST_LOG=debug cargo publish --registry <REGISTRY_NAME>
Paketleri geri yükleme
Bağımlılıkları geri yüklemeden önce, Azure Artifacts akışınızla kimlik doğrulaması yapabilmeniz için Akışa bağlanma adımlarını tamamladığınızdan emin olun.
Bağımlılıklarınızın
Cargo.tomldosyanızın[dependencies]bölümünde listelendiğinden emin olun.Kasaları doğrudan özel Azure Artifacts akışınızdan kullanıyorsanız kayıt defterini açıkça aşağıdaki gibi belirtin:
[dependencies] CRATE_NAME = { version = "VERSION_NUMBER", registry = "FEED_NAME" }replace-withyapılandırmasını kullanarak üst akışınız üzerinden crates.io crate’lerine başvuruyorsanız, bunları şu şekilde belirtin:[dependencies] CRATE_NAME = "VERSION_NUMBER"Projenizi oluşturmak ve akıştan bağımlılıklarınızı geri yüklemek için proje dizininizde aşağıdaki komutu çalıştırın:
cargo build
İndirilen crate'ler yerel olarak ~/.cargo/registry/cache/<registry-hash>/ içinde önbelleğe alınır; burada registry-hash, akış URL'nize dayalı benzersiz bir tanımlayıcıdır.