Aracılığıyla paylaş


Komut satırından yayımlama

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Uzantınızı Visual Studio Market'te yayımlamak için Azure DevOps (tfx-cli) için Platformlar Arası CLI'yı kullanabilirsiniz.

Daha fazla bilgi için bkz. Yayımlama, yükleme ve paylaşmaya genel bakış.

Önkoşullar

Node Paket Yöneticisi'nden TFX CLI'yi alın ve bir Microsoft Entra belirteci veya kişisel erişim belirteci (PAT) oluşturun. Ayrıca, henüz yapmadıysanız, Galeri'de bir Yayımcı ayarlayın.

Azure DevOps için Platformlar Arası CLI'yi edinme

  1. Sahip değilseniz NodeJSindirip yükleyin. Kurulum sırasında Add to PATH seçili olduğundan emin olun.

  2. Bir Komut İstemi açın ve npm i -g tfx-cligirin.

TFX CLI zaten yüklüyse, npm up -g tfx-cliçalıştırarak en son sürüme güncelleştirebilirsiniz.

Microsoft Entra belirteci ile bir hizmet sorumlusu olarak yayınla

Bir uzantıyı hizmet sorumlusu olarak yayımlamak da mümkündür.

  1. Hizmet sorumlusunu yayımcı hesabına üye olarak ekleyin. Hizmet ilkesi kimliğini REST API üzerinden ve az cli aracılığıyla giriş yapıp hizmet ilkesinin profilini sorgulayarak alabilirsiniz. Bu, aşağıdaki komutlarla yapılabilir:
az login --service-principal --username <appId> --password <password> --tenant <tenant-id>
# 499b84ac-1321-427f-aa17-267ca6975798 specifies azure devops as a resource
az rest -u https://app.vssps.visualstudio.com/_apis/profile/profiles/me --resource 499b84ac-1321-427f-aa17-267ca6975798

Ardından önceki adımda yer alan kimliği kullanarak hizmet sorumlusunu yayımcıya üye ekleyebilirsiniz.

  1. Hizmet sorumlusu kullanarak TFX CLI aracılığıyla uzantı yayımlama. Erişim belirtecini kullanmak için aşağıdaki TFX CLI komutunu yürütür:
tfx extension publish --publisher my-publisher --vsix my-publisher.my-extension-1.0.0.vsix --auth-type pat -t <ENTRA_TOKEN>

Kişisel erişim belirteci ile yayımlama

  1. Kuruluşunuzda oturum açın (https:dev.azure.com/{organization}).

  2. Giriş sayfanızdan kullanıcı ayarları simgesini açın ve profilseçin.

    Kullanıcı ayarları simgesini seçtikten sonra Profil Seç'i

  3. Güvenlikaltında, Kişisel erişim belirteçleri'ni seçin ve ardından Yeni belirteç'i seçin.

    Yeni kişisel erişim belirtecinizi oluşturma

  4. Formu doldurun:

    • Belirtecinizi adlandırın
    • CLI aracılığıyla yayımlarken çalışan tek değer olan Tüm erişilebilir kuruluşlar'ı seçin. Yalnızca bir kuruluş seçerseniz PAT geçerli olsa bile hatayla sonuçlanır
    • Token için bir bitiş süresi seçin. Visual Studio Market yayımlama API'leri bir kuruluşun bağlamı dışında çalıştığından bu gereklidir
    • Bu belirteçle ilişkili erişim kapsamını ayarlayın. Market (yayımlama) kapsamını seçtiğinizden emin olun. Bu kapsam, belirteci yalnızca Market'te uzantı yayımlayabilecek şekilde sınırlar.
    • Oluştur'u seçin

    ..

  5. Oluşturduğunuz kişisel erişim belirtecinizi kopyalayın. Bunu gizli tuttuğuna emin ol.

    Belirtecinizi kopyalayın ve bir sır olarak tutun

TFX CLI yüklendikten ve belirtecinizi aldıktan sonra uzantınızı paketlemek ve yayımlamak için aracı kullanabilirsiniz.

  1. Uzantınızın kök dizinine bir komut istemi açın.
  2. Uzantınızı yayımlamak için aşağıdaki komutu çalıştırın. İstendiğinde, kimlik doğrulaması için belirtecinizi girin.
tfx extension publish --publisher <YOUR_PUBLISHER_ID> --manifest-js <YOUR_EXTENSION_MANIFEST> --share-with <ACCOUNT_NAME>

Olası Hatalar

Uzantınız zaten yayımlanmışsa aşağıdaki hatayı alabilirsiniz:

Failed Request: Internal Server Error(500) - Version number must increase each time an extension is published. Extension: fabrikam.my-extension  Current version: 0.1.9  Updated version: 0.1.9

Uzantınızın --rev-version sürümünü otomatik olarak artırmak için bayrağını ekleyebilirsiniz. Bu, yeni sürümü bildiriminize de kaydeder.

Note

create için kullanılabilen tüm seçenekler publish komutu için kullanılabilir.

Örnek

C:\vso-team-calendar>tfx extension publish --publisher publishFabrikam --manifest-js fabrikam.config.js --share-with fabrikam --rev-version
Copyright Microsoft Corporation
> Personal access token:
Checking if this extension is already published
It is, update the extension
Waiting for server to validate extension package...
Sharing extension with fabrikam.

=== Completed operation: publish extension ===
 - Packaging: C:\vso-team-calendar\fabrikam.team-calendar-0.2.6.vsix
 - Publishing: success
 - Sharing: shared with fabrikam