Azure Artifacts NPM paketleriyle çalışmaya başlama

Azure Artifacts, Azure Artifacts akışlar ve ortak kayıt defterlerine npm paketlerinin yayımlanmasını ve bu cihazlardan kullanılmasını destekler. Akışınızı oluşturmak,. npmrc dosyanızı ayarlamak, projenizi derlemek ve NPM paketlerinizi akışınıza yayımlamak için bu hızlı başlangıcı kullanın.

Azure Artifacts uzantısına lisans

Azure Artifacts kullanmak için, Visual Studio Team Foundation Server 2017 ' ye yükseltmeniz gerekir. Azure Artifacts uzantısı kaldırılmışsa, bunu Visual Studio market'ten yükleyebilirsiniz.

Team Foundation Server lisansları atama

Her kuruluş beş ücretsiz lisans alır. beşten fazla lisansa ihtiyacınız varsa Visual Studio marketi' ne gidin ve ücretsiz al' ı seçin.

Emin değilseniz, 30 günlük ücretsiz denemeyi Başlat' ı seçebilirsiniz. daha sonra kuruluşunuzdaki her kullanıcıya 30 gün boyunca Azure Artifacts erişim verilir. 30 günlük deneme süresinden sonra kuruluşunuz, beş Kullanıcı adlı kullanıcıya geri döner ve lisansları ayrı kullanıcılara atamanız gerekir. bu noktada ek lisanslara ihtiyacınız varsa, bunları Visual Studio market 'ten satın alabilirsiniz. Visual Studio Enterprise lisansınız varsa, zaten Azure Artifacts erişiminizin olması ve lisans atanması gerekmez. yalnızca "Visual Studio Enterprise" erişim düzeyini atadığınızdan emin olun.

Not

30 günlük ücretsiz denemeyi Başlat ' ı seçtiyseniz ve hala deneme süresinde çalışıyorsanız, her kullanıcıya erişim verilir. Deneme süresi sona erene kadar lisansların atanması gerekmez.

  1. Team Foundation Server tüm koleksiyonlardan, ayarlar menüsünün üzerine gelin ve kullanıcılar' ı seçin. Paket Yönetimi öğesini seçin.

    Team Foundation Server 'daki kullanıcılar sayfasının ekran görüntüsü.

  2. Ata' yı seçin, lisans atamak istediğiniz kullanıcıları girin ve Tamam' ı seçin.

    • Visual Studio Enterprise aboneliklerine sahip kullanıcılar ücretsiz Azure Artifacts alır. Visual Studio Enterprise abonelerinizin uygun erişim düzeyine sahip olduğundan emin olun. Daha fazla bilgi için bkz. erişim düzeylerini değiştirme.

    • ınternet bağlantısı kesilen bir Team Foundation Server örneğini kullanan kullanıcılar (ve bu nedenle Visual Studio market 'ten lisans satın almamanız), bir kurumsal anlaşma aracılığıyla satın alınan lisansları yine de atayabilir.

Akış oluşturma

Akış, kullanıcıların, akış izinlerini değiştirerek paketleri depolamasına ve kimlerin erişebileceğini denetlemesine olanak tanıyan bir kuruluş yapısıdır.

Akışlar, paket türüne bağlı değildir. Azure Artifacts şu anda, tek bir akışta NuGet, npm, maven, Python ve evrensel paketleri depolamayı desteklemektedir.

Yeni bir akış oluşturmak için akışınızı içinden akış oluştur ' u seçin ve formu doldurun.

  • Ad: akış adı.
  • Görünürlük: kimlerin veya akışınızdan paket yükleyip indirebileceğiniz seçin.
  • yukarı akış kaynakları: akışınızdan npmjs.org veya NuGet. org gibi yukarı akış kaynakları eklemek istiyorsanız ortak ortak kaynaklardan paketleri dahil et' i seçin. Yukarı akış kaynakları etkinleştirildiğinde, istemciniz özel akışınızdan ortak kayıt defterinden paketleri getirebilir ve özel akışınız sizin için bu paketleri önbelleğe alabilir. Akışınızı ortak kayıt defterlerine bağlantı olmadan oluşturmak istiyorsanız yukarı akış kaynakları onay kutusunu temizleyin. İsterseniz, daha sonra ekleyebilirsiniz.

İşiniz bittiğinde Oluştur'u seçin.

Azure DevOps 2019 ' deki yeni akış iletişim kutusunun ekran görüntüsü.

Team Foundation Server yeni akış iletişim kutusunun ekran görüntüsü.

Bu ayarları daha sonra akışı düzenleyerek değiştirebilirsiniz.

  1. Akışınız seçiliyken sayfanın sağ tarafındaki dişli simgesini seçin.

    Akışı düzenle düğmesinin ekran görüntüsü.

  1. Akışınız seçiliyken sayfanın sağ tarafındaki dişli simgesini seçin.

    Akışı düzenle düğmesinin TFS ekran görüntüsü.

. Npmrc dosyalarınızı ayarlama

tüm Azure Artifacts akışları kimlik doğrulaması gerektirir. Paketleri yükleyebilmek veya yayımlayabilmeniz için önce akışın kimlik bilgilerini depolarsınız. NPM, akış URL 'Lerini ve kimlik bilgilerini depolamak için . npmrc yapılandırma dosyalarını kullanır.

Not

vsts-npm-authşirket içi Team Foundation Server ve Azure DevOps Server desteklenmez.

. Npmrc dosyalarınızı bulun

İki. npmrc dosyası kullanmanızı öneririz:

  1. One. npmrc, projenizin package.jsdosyanın bulunduğu git deponuzın kökünde canlı olmalıdır.

    1. Artifacts, akışa Bağlan' yı seçin.

      Akışınızı nasıl bağlayakullanacağınızı gösteren ekran görüntüsü.

    2. Araçları al' ı seçin.

    3. Node.js dosyasını, NPM 'yi ve yapıt kimlik bilgileri sağlayıcısını indirmek için 1 ve 2. adımları izleyin.

    4. Windows bir makineniz varsa veya macos ya da Linux kullanıyorsanız Windows ' yi seçin.

    5. Project kurulum, paketleri geri yükleme ve paketleri yayımlama bölümlerinde bulunan yönergeleri izleyin.

      Akışınızı bağlamak için kurulum, geri yükleme ve yayımlama bölümlerinin gösterildiği ekran görüntüsü.

  2. Geliştirme makinenizde Ayrıca, Linux veya Mac sistemleri için $Home klasöründe veya $env bir. npmrc dosyasına sahip olursunuz . Windows IÇIN giriş. Bu. npmrc dosyası, bağlanmanız gereken tüm kayıt defterlerinin kimlik bilgilerini içermelidir. NPM istemcisi projenizin. npmrc dosyasına bakar, kayıt defterini bulur ve $Home/.npmrc veya $env ile eşleşen kimlik bilgilerini getirir . HOME/. npmrc.

Bu sayede, kimlik bilgilerinizi güvende tutarak projenin. npmrc dosyasını tüm ekiple paylaşabilirsiniz.

Geliştirme makinenizde kimlik doğrulamasını ayarlama

Bu noktada, projeye özgü bir. npmrc dosyanız olmalıdır. bu dosya, akış Bağlan iletişim kutusunda bulduğunuz kayıt defteri bilgilerini içerir. Bu dosyada kimlik bilgileri olmamalıdır. Dosya genellikle projenizin package.jsdosya üzerinde aynı konumda depolanır.

Önemli

. Npmrc dosyanızda yalnızca tek bir registry= satır olabilir. Kapsamlar ve yukarı akış kaynaklarıylabirden çok kayıt defterleri mümkündür.

Windows

Windows geliştiriyorsanız, vsts-npm-auth kimlik bilgilerini getirmek ve bunları düzenli aralıklarla ~/.npmrc dosyanıza eklemek için kullanmanızı öneririz. Bunu ayarlamanın en kolay yolu, vsts-npm-auth genel olarak (yani, npm install -g vsts-npm-auth ) yüklemek ve ardından projenizin package.jsdosyadaki bir çalıştırma betiği eklemektir.

"scripts": {
    "refreshVSToken": "vsts-npm-auth -config .npmrc"
}

Linux/Mac

Linux veya Mac üzerinde geliştirme yapıyorsanız, vsts-npm-auth desteklenmez. Bunun yerine, $HOME/.npmrc dosyanız için aşağıdaki şekilde bir belirteç oluşturun.

Proje ayarları

akışa Bağlan iletişim kutusu,. npmrc dosyanıza yerleştirebileceğiniz, uygun şekilde biçimlendirilen bir belirteç oluşturur. Belirtecin 90 günlük bir kullanım ömrü vardır.

İpucu

90 günden daha uzun süre devam eden bir belirteç oluşturmak isterseniz, varsayılan sona erme tarihini değiştirdiğinizden emin olun.

  1. projenizin içinden Azure Artifacts' yi seçin ve ardından akışa Bağlan' i seçin.

    Artifacts seçip akışa Bağlan

  2. NPM'yi seçin.

  3. Project kurulum bölümünde diğer ' i seçin.

    Project kurulum, diğer işletim sistemi

  4. Dosyasında package.jsaynı dizine bir. npmrc dosyası ekleyin.

    registry=https://pkgs.dev.azure.com/<yourOrganization>/_packaging/<yourFeed>/npm/registry/
    
    always-auth=true
    

Kimlik bilgileri kurulumu

  1. Aşağıdaki kod parçacığını User. npmrc dosyasına kopyalayın.

    • Kuruluş kapsamındaki akış:

      ; begin auth token
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/registry/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/registry/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/registry/:email=npm requires email to be set but doesn't use the value
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/:username=[ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/npm/:email=npm requires email to be set but doesn't use the value
      ; end auth token
      
    • Project kapsamlı akış:

      ; begin auth token
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/registry/:email=npm requires email to be set but doesn't use the value
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:username=[ENTER_ANY_VALUE_BUT_NOT_AN_EMPTY_STRING]
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:_password=[BASE64_ENCODED_PERSONAL_ACCESS_TOKEN]
      //pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/npm/:email=npm requires email to be set but doesn't use the value
      ; end auth token
      
  2. Paket okuma ve yazma kapsamları ile bir kişisel erişim belirteci oluşturun.

  3. Yeni oluşturulan kişisel erişim belirtecinizi aşağıdaki şekilde kodlayın:

    1. Yükseltilmiş bir komut istemi penceresinde aşağıdaki komutu çalıştırın:

      node -e "require('readline') .createInterface({input:process.stdin,output:process.stdout,historySize:0}) .question('PAT> ',p => { b64=Buffer.from(p.trim()).toString('base64');console.log(b64);process.exit(); })"
      

      Ayrıca, kişisel erişim belirtecinizi, işletim sisteminize bağlı olarak Base64 'e dönüştürmek için aşağıdaki komutu kullanabilirsiniz:

      • Windows:

        [Convert]::ToBase64String([system.Text.Encoding]::UTF8.GetBytes("YOUR_PAT_GOES_HERE"))
        
      • Linuxmac:

        echo -n "YOUR_PAT_GOES_HERE" | base64
        
    2. Base64 kodlamalı değeri kopyalayın.

  4. Yer tutucusunu, [BASE64_ENCODED_PERSONAL_ACCESS_TOKEN] Yeni oluşturduğunuz Kullanıcı Base64 kodlamalı kişisel erişim belirtecinizle değiştirin.

  1. paketler' den akışa Bağlan' yi seçin.

  2. NPM'yi seçin.

  3. NPM kimlik bilgileri oluştur' u seçin. Kimlik bilgilerini User. npmrc dosyanıza el ile eklemek için kopyalayın:

    NPM akışına bağlanma ekran görüntüsü.

Projenizi oluşturma

Bu noktada, projenizin dosya üzerinde bir package.jsve aynı klasörde bir. npmrc dosyası olması gerekir. npm installBu dosyaların her ikisini de içeren dizinden çalıştırın. NPM, geçerli çalışma dizinindeki. npmrc dosyasında akışınızı bulur. Daha sonra, "akış oluşturma" bölümünde yapılandırdığınız ana dizininizin. npmrc dosyasından kimlik bilgilerini getirir.

Not

Yarn kullanıyorsanız, Yarn kayıt defterini ayarlamak için aşağıdaki komutu çalıştırın:

yarn config set registry "https://pkgs.dev.azure.com/<yourOrganization>/_packaging/<yourFeed>/npm/registry/"

NPM paketlerini yayımlama

Artık NPM paketini yayımlayabilirsiniz:

  1. Paketinizin dosya package.jsdosyasını içeren dizine gidin.

  2. npm publish öğesini çalıştırın.

Bu komut, daha önce ayarlamanız gereken. npmrc yapılandırma dosyalarını kullanarak akışın kimliğini doğrular. Daha fazla bilgi için bkz. NPM CLI belgeleri.

NPM paketiniz artık akışınızda kullanılabilir olmalıdır.

Önemli

çalışma klasörünüzün .npmrc registry= , akışınızdaki besleme Bağlan ekranında açıklandığı gibi bir satırı olan bir dosyaya sahip olduğundan emin olun. Derleme, publishConfig yayımlamakta olduğunuz kayıt defterini belirtmek için özelliğini kullanmayı desteklemez. publishConfigÖzelliği dosyasına package.jseklerseniz, derleme ilgisiz bir kimlik doğrulama hatasıyla başarısız olabilir.

NPM paketlerini indirin

Npm paketlerini uygulama akışınıza veya Azure Artifacts kayıt defterinize yükleyebilirsiniz.

  1. İstemcinizin npmrc'sini ayarlayın.

  2. yükseltilmiş bir komut istemi penceresi açın ve dosyada dosyanızı içeren package.js gidin.

  3. Şu komutu çalıştırarak bir paket yükleyin:

    npm install --save <package>
    

Diğer ayrıntılar için npm-install belgelerine bakın.

Sonraki adımlar