Market'te tümleştirmeyi paketleme ve yayımlama
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Azure DevOps veya Team Foundation Server (TFS) ile tümleşen bir aracınız, hizmetiniz veya ürününüz var mı? Öyleyse, kullanıcıların Visual Studio Market'te yayımlayarak bulmalarına yardımcı olun. Market, kişilerin ve ekiplerin deneyimi genişleten ve geliştiren araçları bulması için tek noktadan ulaşabilirsiniz.
Diğer tümleştirmelerin ve uzantıların örneklerini görmek için Market'e göz atın.
Not
Uzantılar için paketleme ve yayımlama bilgileri arıyorsanız Uzantıları Paketleme ve Yayımlama'ya göz atın.
Yayımlama gereksinimleri
Market'te yayımlamadan önce aşağıdaki gereksinimlerin listesi karşılanmalıdır.
- Uzantı paketleme aracını (TFX) yükleyin. Komut isteminden komutunu çalıştırın
npm install -g tfx-cli
. - Simgeler, logolar, ekran görüntüleri gibi tüm görüntüleri kullanmak için uygun izinlerin verildiğinden emin olun.
- Market'teki listenizi açıklamak için kapsamlı
overview.md
bir dosya ekleyin. - Uzantınız için en az 128x128 piksel boyutunda bir simge ekleyin.
- Microsoft ürünlerine başvururken, kısaltmalar yerine tam adları kullanın; örneğin, Azure DevOps ile AzDO veya diğer tüm kısaltmalar.
- Uzantınızın adında marka adlarını kullanmaktan kaçının.
Ne gerekiyor?
- Tümleştirmenizi, kendinizi veya şirketinizi/kuruluşunuzu temsil eden 128x128 piksel logo (PNG veya JPEG biçimi)
- Tümleştirmenizi gösteren en az bir ekran görüntüsü
- Eylem çağrısı / başlarken URL'si (kullanıcıların tümleştirmenize başlamak için gitmesi gereken yer)
Adımlar
Market'te yayımlama, tümleştirme ve önemli bulma özelliklerinizi (ekran görüntüleri, logolar ve genel bakış içeriği gibi) tanımlayan bir bildirim dosyası oluşturmayla başlayan yinelemeli bir işlemdir. Bu bilgiler, tümleştirmenizi Market'te kullanıcılara sunmak için kullanılır, örneğin:
Not: terimi, extension
aşağıda başvuruda bulunan belgelerde kullanılır. Uzantılar başka bir Market öğesi türüdür ve bulma açısından tümleştirme olarak birçok benzerliği paylaşır.
Bir Yayımcı oluşturma
Microsoft'un uzantıları dahil olmak üzere tüm uzantıların ve tümleştirmelerin bir yayımcısı vardır. Herkes bir yayımcı oluşturabilir ve bunun altında uzantılar yayımlayabilir. Ayrıca, bir ekip uzantıyı geliştiriyorsa diğer kişilere yayımcınıza erişim verebilirsiniz.
Bir kullanıcı yayımcının sahibidir, genellikle yayımcıyı oluşturan kullanıcıdır. Yayımcıyı diğer kullanıcılarla da paylaşabilirsiniz.
Henüz var olan bir yayımcının üyesi değilseniz + Yayımcı oluştur'u seçin. Yayımcı adı alanına bir ad girin. Kimlik alanı, girdiğiniz ada göre otomatik olarak ayarlanmalıdır.
Not
Uzantınızın bildirim dosyasında ayarlamanız gerektiğinden kimliği not edin.
Yayımcı oluşturmanız istenmezse sayfanın en altına kadar aşağı kaydırın ve İlgili siteler'in altında Uzantıları yayımla'yı seçin.
- Yayımcınız için bir tanımlayıcı belirtin, örneğin:
mycompany-myteam
. Bu tanımlayıcı, uzantı bildirim dosyanızdaki özniteliğinpublisher
değeri olarak kullanılır. - Yayımcınız için bir görünen ad belirtin, örneğin:
My Team
- Yayımcınız için bir tanımlayıcı belirtin, örneğin:
Market Yayımcı Sözleşmesi'ni gözden geçirin ve oluştur'u seçin.
Yayımcı oluşturulduktan sonra öğeleri yönetmeye yönlendirilirsiniz, ancak hiçbir öğe yoktur.
Öğe bildiriminizi ve diğer varlıkları içerecek bir klasör oluşturma
Tümleştirmenizi bir uzantı olarak paketlemeden önce, bu klasörün içinde bazı gerekli varlıkları içerecek bir home
klasör oluşturmanız gerekir:
- Aşağıdakini içerecek şekilde adlı
images
bir klasör oluşturun:- Tümleştirmenizin logosu (128x128 piksel)
- Ekran görüntüleri (1366x768 piksel)
- Adlı bir dosya oluşturma
overview.md
- Tümleştirmenizi burada açıklayın
- Markdown hakkında daha fazla bilgi edinmek için bkz . GitHub Flavored Markdown
- Adlı bir dosya oluşturma
vss-integration.json
- Bu dosya, Market listenizin bildirim dosyasıdır ve Market listenizde uzantınızı açıklamak için birçok özellik içerir. Uzantı bildirimi başvurusuna buradan göz atabilirsiniz
Uzantı Bildirimi
Dosyanızı
vss-integration.json
aşağıdaki JSON ile doldurun:{ "manifestVersion": 1, "id": "myservice", "version": "1.0.0", "name": "My Service", "publisher": "mycompany", "description": "Awesome tools to help you and your team do great things everyday.", "targets": [ { "id": "Microsoft.VisualStudio.Services.Integration" } ], "icons": { "default": "images/service-logo.png" }, "categories": [ "Plan and track" ], "tags": [ "working", "people person", "search" ], "screenshots": [ { "path": "images/screen1.png" }, { "path": "images/screen2.png" } ], "content": { "details": { "path": "overview.md" }, "license": { "path": "fabrikam-license-terms.md" } }, "links": { "getstarted": { "uri": "https://www.mycompany.com/help/getstarted" }, "learn": { "uri": "https://www.mycompany.com/features" }, "support": { "uri": "https://www.mycompany.com/support" } }, "branding": { "color": "rgb(34, 34, 34)", "theme": "dark" } }
Aşağıdaki başvuruyu kullanarak JSON'yi güncelleştirin:
Özellik | Açıklama | Notlar |
---|---|---|
manifestVersion | Bildirim biçiminin sürümüne karşılık gelen bir sayı. | 1 olmalıdır. |
Kimlik | Uzantının tanımlayıcısı. | Th Id, aynı yayımcının uzantıları arasında benzersiz olması gereken bir dizedir. Alfabetik veya sayısal bir karakterle başlamalıdır ve 'A' - 'Z', 'a' - 'z', '0' - '9' ve '-' (kısa çizgi) içermelidir. Örnek: sample-extension . |
version | Uzantının sürümünü belirten bir dize. | biçiminde olmalıdır major.minor.patch , örneğin 0.1.2 veya 1.0.0 . Aşağıdaki biçim için dördüncü bir sayı da ekleyebilirsiniz: 0.1.2.3 |
Adı | Uzantının kısa, insan tarafından okunabilen adı. 200 karakterle sınırlıdır. | Örnek: "Fabrikam Agile Board Extension" . |
Yayımcı | Yayımcının tanımlayıcısı. | Bu tanımlayıcı, uzantının yayımlandığı tanımlayıcıyla eşleşmelidir. Bkz. Yayımcı oluşturma ve yönetme. |
Kategori | Uzantınızın ait olduğu kategorileri temsil eden dize dizisi. En az bir kategori sağlanmalıdır ve içerebilecek kategori sınırı yoktur. | Geçerli değerler: Azure Repos , Azure Boards , Azure Pipelines , Azure Test Plans ve Azure Artifacts .Notlar:
- Yayımlamak için Azure DevOps Uzantı Görevleri uzantısını kullanıyorsanız sürümünün = 1.2.8 olduğundan >emin olun. Son kapsam değişiklikleri nedeniyle uzantı güncelleştirmesini onaylamanız gerekebilir. - Daha önce bahsedilen kategoriler Visual Studio Market ve Azure DevOps Server 2019 ve üzeri sürümlerde yerel olarak bulunur. TFS'nin önceki sürümlerini hedefleyen uzantılar için:
- Uzantıyı doğrudan (Visual Studio Market üzerinden değil) TFS <=2018 kullanan bir müşteriyle paylaşacaksanız şu kategorileri kullanın: Kod, Planlama ve izleme, Derleme ve yayınlama, Test Etme, İşbirliği Yapma ve Tümleştirme. Hem Visual Studio Market aracılığıyla hem de doğrudan bir TFS <= 2018 müşterisiyle paylaşmanız gerekiyorsa, 2 uzantı paketine sahip olmanız gerekir. |
Hedef | Tümleştirmeniz veya uzantınız tarafından desteklenen ürünler ve hizmetler. Daha fazla bilgi için bkz . yükleme hedefleri. | Her nesnenin aşağıdakilerden birini belirten bir alanı olan bir id nesne dizisi:
Microsoft.VisualStudio.Services (Azure DevOps veya TFS ile çalışan uzantılar),- Microsoft.TeamFoundation.Server (TFS ile çalışan uzantı),- Microsoft.VisualStudio.Services.Integration (Azure DevOps veya TFS ile çalışan tümleştirmeler) - Microsoft.TeamFoundation.Server.Integration (TFS ile çalışan tümleştirmeler) |
Bu isteğe bağlı özellikler kullanıcıların uzantınızı keşfetmelerine ve bunlar hakkında bilgi edinmelerine yardımcı olur:
Özellik | Açıklama | Notlar |
---|---|---|
Açıklama | Uzantıları açıklayan birkaç cümle. 200 karakterle sınırlıdır. | Açıklama, uzantınızı Market'te açıklamak ve insanların yüklemek istemesini sağlamak için uzantınızın "asansör konuşması" olmalıdır. Aşağıdaki örniğe bakın |
Simge | Uzantıyı temsil eden simgelerin sözlüğü. | Geçerli tuşlar: default (128x128 piksel) türü BMP, GIF, EXIF, JPG, PNG ve TIFF). Gelecekte (512x512 piksel) gibi large diğer tuşlar desteklenebilir. Her anahtarın değeri, uzantıdaki simge dosyasının yoludur |
etiketler | Kullanıcıların uzantınızı bulmasına yardımcı olmak için dize etiketleri dizisi. | Örnekler: agile , project management , task timer ve benzeri. |
Ekran | İçeriğinize eklenemeyen görüntü dizisi. | ekran görüntüleri içeriğinizde öne çıktığında daha değerlidir ve uzantınız için kaliteli bir pazar ayrıntıları sayfası oluşturmak için orada kullanılmalıdır. İçeriğinizde bulunmayan daha az önemli görüntüler için ekran görüntülerini kullanın. Her resim 1366x768 piksel olmalıdır. path Her öğenin yolu, uzantıdaki dosyanın yoludur. |
Içerik | Kullanıcılara uzantınızı açıklayan içerik dosyalarının sözlüğü. | Her uzantı sağlam içerik içermelidir. Kullanıcılara uzantınızın neler yapabileceğini bu şekilde göstereceksiniz. Zengin, kullanılabilir hale getirin ve gerektiğinde ekran görüntüleri ekleyin. Temel içerik parçanız olarak bir overview.md dosya ekleyin. Her dosyanın GitHub Flavored Markdown biçiminde olduğu varsayılır. path Her öğenin yolu, uzantıdaki Markdown dosyasının yoludur. Geçerli anahtarlar: details . Gelecekte diğer anahtarlar desteklenebilir. |
Bağlantı | Kullanıcıların uzantınız hakkında daha fazla bilgi edinebilmesine, destek almasına ve taşınmasına yardımcı olan bağlantılar sözlüğü. | Geçerli anahtarlar: getstarted - ilk adımlar, kurulum veya kullanım. learn - Kullanıcıların uzantınızı veya hizmetinizi daha iyi anlamasına yardımcı olmak için daha ayrıntılı içerik. license - son kullanıcı lisans sözleşmesi. privacypolicy - Bir uzantı için gizlilik ilkesi. support - bir uzantı için yardım ve destek alın. Her anahtarın değeri, bağlantının mutlak URL'si olan alanı olan bir uri nesnedir |
Depo | Uzantının kaynak kod deposunu açıklayan özellikler sözlüğü | Geçerli Anahtarlar: type - Depo türü. Örnek: git. uri - Deponun mutlak URL'si. |
Rozet | Onaylı rozet sitelerinden TravisCI, Appveyor vb. dış meta veri rozetlerine bağlantı dizisi | Geçerli anahtarlar: href - Rozeti seçerken kullanıcının gittiği bağlantı. uri - Görüntülenecek rozet görüntüsünün mutlak URL'si. description - Vurgulamada görüntülenecek rozetin açıklaması. |
Marka | Markayla ilgili özelliklerin sözlüğü. | Geçerli tuşlar: color - uzantının veya yayımcının birincil rengi; onaltılık (#ff00ff), RGB (rgb(100.200,50)) veya desteklenen HTML renk adları (mavi) olabilir. theme - rengi tamamlar; koyu marka renkleri için koyu veya daha açık marka renkleri için açık kullanın. |
Ayrıntılar sayfası
- 1 - açıklama
- 2 - simge
- 3 - kategoriler
- 4 - ekran görüntüleri
- 5 - içerik (ayrıntılar)
- 6 - bağlantılar
- 7 - markalama
Bildiriminizi ve varlıklarınızı paketleme
Paket aracını alma (tfx-cli)
Komut satırınızdan Node.js bileşeni olan kullanarak Azure DevOps (tfx-cli) npm
için Platformlar Arası CLI'yı yükleyebilir veya güncelleştirebilirsiniz.
npm i -g tfx-cli
Tümleştirmenizi bir .vsix dosyasında paketleme
tfx extension create --manifest-globs vss-extension.json
Not
Uzantı/tümleştirmenin sürümü her güncelleştirmede artırılmalıdır.
Bildirimde uzantınızı/tümleştirmenizi artırmadıysanız komut satırı anahtarını geçirmeniz --rev-version
gerekir. Bu, uzantınızın düzeltme eki sürüm numarasını artırır ve yeni sürümü bildiriminize kaydeder.
Tümleştirmenizi Market'te yayımlama
Uzantınız paketlendiğinde, bir yayımcı altında Market'e yükleyebilirsiniz. publisher
Uzantınızın bildirim dosyasında belirtilen tanımlayıcı, uzantının karşıya yüklendiği yayımcının tanımlayıcısı ile eşleşmelidir.
Yönetim portalından, sayfanın üst kısmındaki açılan menüden yayımcınızı seçin.
Yeni uzantı>Azure DevOps'ı seçin.
Önceki paketleme adımında oluşturduğunuz VSIX dosyanızı bulmak için dosyanızı sürükleyip bırakın veya seçin ve ardından Karşıya Yükle'yi seçin.
Hızlı doğrulamadan sonra uzantınız yayımlanan uzantılar listesinde görünür. Endişelenmeyin, uzantı yalnızca size görünür.
Bu noktada uzantınız hiçbir hesapta görünmez ve siz paylaşana kadar yüklenemez.
Not
Microsoft, yayımlanan her yeni ve güncelleştirilmiş uzantı paketinde bir virüs taraması çalıştırır. Tarama tamamen temizlenene kadar uzantıyı genel kullanım için Market'te yayımlamayız. Bu şekilde, Market sayfalarında uygunsuz veya rahatsız edici içerikle gezinmekten de kaçınıyoruz.
Tümleştirmenizi paylaşma
Azure DevOps veya TFS'de bir kuruluşa tümleştirme yükleyebilmeniz için önce bunu bu kuruluşla paylaşmanız gerekir. Tümleştirmeyi çalıştırmanın tek yolu olduğundan, tümleştirmenin geliştirilmesi ve test edilmesi sırasında paylaşım bir gereksinimdir.
Tümleştirmeyi paylaşmak için aşağıdaki görevleri gerçekleştirin:
- Görüntülenen öğeler listesinden bir tümleştirme seçin
- Paylaş düğmesini seçin
- Bu tümleştirmeyi görünür hale getirmek için kuruluşun adını belirtin.
- Örneğin, tümleştirmeyi dev.azure.com/fabrikam-fiber-inc kuruluşuna görünür hale getirmek için belirtin
fabrikam-fiber-inc
.
- Örneğin, tümleştirmeyi dev.azure.com/fabrikam-fiber-inc kuruluşuna görünür hale getirmek için belirtin
Öğeyi güncelleştirme
Zaten yayımlanmış bir uzantıyı değiştirmek için uzantıyı güncelleştirin.
İpucu
Uzantıyı kaldırma ve yeniden yükleme üzerinden güncelleştirmenizi öneririz. Ayrıca, örneğin ve publisher.extension-dev
olmak üzere publisher.extension
iki uzantıya sahip olmasını öneririz.
Publisher.extension
, müşterilerin Azure DevOps kuruluşlarına yükleyebileceği Market'te genel kullanıma sunulur. Publisher.extension-dev
Market'te gizli tutulur ve sahibi olduğunuz ve denetlediğiniz bir kuruluşla paylaşılabilir.
Uzantının kaynak kodunun iki kopyasını tutmanız gerekmez. İki bildirim dosyası tutabilirsiniz: her uzantı için bir tane ve uzantının paketlenmesi sırasında ilgili bildirim dosyasını tfx-cli aracına sağlayabilirsiniz. Araç için gereken bağımsız değişkenler hakkında daha fazla bilgi için bkz . TFX uzantısı komutları.
- Görüntülenen öğeler listesinden bir uzantı seçin.
- Örneğin, için sağ tıklayın ve Güncelleştir'i
publisher.extension-dev
seçin. - Uzantınızı doğrulayın.
- Örneğin,
publisher.extension
üretim sürümünde aynı güncelleştirmeleri yapın. - Uzantınız için .vsix'e göz atın ve karşıya yükleyin.
Uzantınızın güncelleştirilmiş sürümü, zaten yüklü olan hesaplara otomatik olarak yüklenir. Uzantının gelecekte yüklendiği yeni hesaplar da en son sürümü alır.
Tümleştirmenizi herkese açık hale getirme (herkes tarafından görülebilir)
Tümleştirmenizi herkese açık hale getirme hakkında daha fazla bilgi için Dökümünüzü herkese açık hale getirme adresini ziyaret edin.