Uzantı bildirimi başvurusu
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Her uzantının, uzantıyla ilgili temel bilgileri tanımlayan bir JSON bildirim dosyası vardır. Dosya ayrıca deneyimi nasıl genişletip geliştirebileceğini de tanımlar. Bu makalede, Azure DevOps uzantınız için nasıl bildirim oluşturulacağı gösterilmektedir.
İpucu
Azure DevOps Uzantı SDK'sını kullanarak uzantı geliştirmeyle ilgili en yeni belgelerimize göz atın.
Uzantı klasörünüzün kökünde adlı vss-extension.json
bir dosya oluşturun. Bu dosya, uzantının kimliği ve çalıştırabileceği yükleme hedefleri gibi gerekli öznitelikleri içerir. Ayrıca uzantınız tarafından yapılan katkıları da tanımlar.
Tipik bir bildirimin aşağıdaki örneğine bakın:
{
"manifestVersion": 1,
"id": "tools",
"version": "0.1.0",
"name": "Fabrikam Tools",
"publisher": "fabrikam",
"description": "Awesome tools to help you and your team do great things everyday.",
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
],
"icons": {
"default": "images/fabrikam-logo.png"
},
"scopes": [
"vso.work",
"vso.code_write",
"vso.build_execute"
],
"categories": [
"Azure Boards"
],
"branding": {
"color": "rgb(34, 34, 34)",
"theme": "dark"
},
"content": {
"details": {
"path": "readme.md"
},
"license": {
"path": "eula.md"
}
},
"links": {
"getstarted": {
"uri": "https://www.fabrikam-fiber-inc.com/help/getstarted"
},
"support": {
"uri": "https://www.fabrikam-fiber-inc.com/support"
}
},
"repository": {
"type": "git",
"uri": "https://github.com/fabrikam-fiber-inc/myextension"
},
"contributions": [
{
"id": "showCommits",
"type": "ms.vss-web.action",
"description": "Adds a menu action from builds grid to show associated items.",
"targets": [
"ms.vss-build-web.completed-build-menu"
],
"properties": {
"title": "View associated items",
"uri": "launch.html"
}
}
],
"files": [
{
"path": "launch.html",
"addressable": true
},
{
"path": "node_modules/vss-web-extension-sdk/lib",
"addressable": true,
"packagePath": "lib"
}
]
}
Girişler hakkında bilgi için bkz . ...
Gerekli öznitelikler
Ö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ınevi | 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) |
Gerekli öznitelik örnekleri
{
"manifestVersion": 1,
"id": "tools",
"version": "0.1.0",
"name": "Fabrikam Tools",
"publisher": "fabrikam",
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
]
}
İsteğe bağlı öznitelikler
Çalışma zamanı öznitelikleri
{
"scopes": [
"vso.work",
"vso.code_write",
"vso.build_execute"
],
"demands": [
"api-version/3.0"
],
"contributions": [
{
"id": "showCommits",
"type": "ms.vss-web.action",
"description": "Adds a menu action from builds grid to show associated items.",
"targets": [
"ms.vss-build-web.completed-build-menu"
],
"properties": {
"title": "View associated items",
"uri": "launch.html"
}
}
]
}
Bulma öznitelikleri
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 görüntüleri | İç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. |
Uzantıyı genel olarak işaretleme
Varsayılan olarak, Azure DevOps Market'teki tüm uzantılar özeldir. Bunlar yalnızca yayımcı tarafından ve yayımcı tarafından paylaşılan hesaplar tarafından görülebilir. Yayımcınız doğrulandıysa, uzantı bildiriminizde bayrağını ayarlayarak Public
uzantınızı herkese açık hale getirebilirsiniz:
{
"galleryFlags": [
"Public"
]
}
Veya:
{
"public": true
}
Daha fazla bilgi için bkz . Paketle/Yayımla/Yükle.
Uzantıyı önizlemede olacak şekilde işaretleme
Uzantınız Market'te kullanıcıların denemesine hazırsa ancak yine de birkaç hata üzerinde çalışıyorsanız veya işlev ekliyorsanız, olarak preview
işaretleyebilirsiniz:
{
"galleryFlags": [
"Preview"
]
}
Uzantıyı ücretli önizleme olarak işaretleme
Uzantınızı Market'te satmak istiyorsanız, uzantıyı ücretli önizleme olarak işaretleyin. Ücretsiz olarak işaretlenmiş bir uzantı ücretli olarak değiştirilemez.
{
"galleryFlags": [
"Paid",
"Preview"
]
}
Uzantıyı ücretli olarak işaretleme
Uzantınızı Market'te satmak istiyorsanız, uzantıyı bayrak ve __BYOLENFORCED
etiketle Paid
işaretleyebilirsiniz (iki alt çizgiyle başlar):
{
"galleryFlags": [
"Paid"
],
"tags": [
"__BYOLENFORCED"
]
}
Bir uzantıyı Market'te Paid
ücretli olarak işaretlemek için hem bayrağın __BYOLENFORCED
hem de etiketin mevcut olması gerekir. Kendi Lisansını Getir (KLG), uzantının yayımcısının, Azure DevOps uzantıları için Microsoft tarafından sağlanmayan uzantının faturalama ve lisans mekanizmasını sağladığı anlamına gelir. Gizlilik ilkesini, destek ilkesini ve son kullanıcı lisans sözleşmesini tanımlamak için tüm ücretli uzantılar gereklidir. Yayımcıların Market'teki fiyatlandırma sekmesi için aşağıdaki gibi içerik sağlaması gerekir:
{
"content": {
"details": {
"path": "overview.md"
},
"pricing": {
"path": "pricing.md"
}
}
}
Ayrıca ücretli lisanslamayı geçersiz kılmak için uzantı bildiriminize yeni bir bölüm eklemeniz gerekir. Gelecekte, ücretli lisans denetimini kaldıracağız ve artık geçersiz kılmayı gerektirmeyeceğiz. Şimdilik uzantınızın beklendiği gibi görüntüleniyor olduğundan emin olun. Her geçersiz kılma bir "KIMLIK" ve bir "davranış" oluşur. "Kimlik"in bildirimde tanımlanan katkıların kimliğiyle eşleşmesini sağlayın.
"licensing": {
"overrides": [
{ "id": "my-hub", "behavior": " AlwaysInclude" }
]
}
Ücretli KLG uzantınız bir deneme süresi sunuyorsa (bunu öneririz), deneme süresinin uzunluğunu gün cinsinden belirtebilirsiniz:
{
"galleryproperties": {
"trialDays": "30"
}
}
Not
Azure DevOps'yi hedeflemek istiyorsanız ancak uzantınız için bir İndirme seçeneğini ortaya koymak istemiyorsanız, __DoNotDownload
uzantı bildirimine etiketi ekleyin (iki alt çizgiyle başlar).
Bir uzantıyı daha önce sunulan faturalama ve lisanslamadan Microsoft'tan KLG modeline taşıyorsanız uygun adımlar için bizimle iletişime geçin.
Daha fazla özellik örneği
{
"description": "Awesome tools to help you and your team do great things everyday.",
"icons": {
"default": "images/fabrikam-logo.png"
},
"categories": [
"Plan and track"
],
"tags": [
"working",
"people person",
"search"
],
"content": {
"details": {
"path": "overview.md"
},
"license": {
"path": "license-terms.md"
}
},
"links": {
"home": {
"uri": "https://www.fabrikam-fiber-inc.com"
},
"getstarted": {
"uri": "https://www.fabrikam-fiber-inc.com/help/getstarted"
},
"learn": {
"uri": "https://www.fabrikam-fiber-inc.com/features"
},
"support": {
"uri": "https://www.fabrikam-fiber-inc.com/support"
},
"repository": {
"uri": "https://github.com/fabrikam-fiber-inc/tools"
},
"issues": {
"uri": "https://github.com/fabrikam-fiber-inc/tools/issues"
}
},
"repository": {
"type": "git",
"uri": "https://github.com/fabrikam-fiber-inc/tools"
},
"badges": [
{
"href": "https://travis.ci/fabrikam-fiber-inc/myextension",
"uri": "https://travis.ci/fabrikam-fiber-inc/myextension.svg?branch=master",
"description": "TravisCI build for the project"
},
{
"href": "https://ci.appveyor.com/projects/fabrikam-fiber-inc/myextension",
"uri": "https://ci.appveyor.com/api/projects/status/vlg2sgs2y7tsdxpj4c?svg=true",
"description": "AppVeyor build for the project"
}
],
"branding": {
"color": "rgb(34, 34, 34)",
"theme": "dark"
},
"screenshots": [
{
"path": "screenshots/screen1.png"
},
{
"path": "screenshots/screen2.png"
}
]
}
Ayrıntılar sayfası örneği
- 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
Market Soru-Cevap - CustomerQnASupport özelliği
Visual Studio Market'te bulunan tüm uzantıların, uzantı kullanıcıları ve yayımcılar arasında bire bir genel konuşmalara izin veren bir Sorular ve Yanıtlar (Soru-Cevap) bölümü vardır. Yayımcılar Market Soruları ve Yanıtları (Soru-Cevap), GitHub sorunları veya özel soru-cevap URL'si arasından seçim yapabilir. Bildirimdeki CustomerQnASupport özelliğini kullanarak Market'te Soru-Cevap'ı devre dışı bırakabilirsiniz.
Varsayılan deneyim (Bildirimde değişiklik yapılması gerekmez)
- GitHub deposuna sahip uzantılar için Market, Soru-Cevap bölümündeki kullanıcıları ilişkili GitHub sorunlarına yönlendirir.
- GitHub deposu olmayan uzantılar için Market Soru-Cevap etkindir.
Varsayılan seçeneklerden birinden farklı bir deneyim için bildirimdeki CustomerQnASupport özelliğini kullanın.
{
"CustomerQnASupport": {
"enablemarketplaceqna": true,
"url": "http://uservoice.visualstudio.com"
}
}
Properties
Müşteri Soru-Cevap Desteği bölümünün özellikleri:
- enablemarketplaceqna - boole alanı, market için olarak ayarlanmış
true
veya özel Soru-Cevap; Soru-Cevap'ı devre dışı bırakmak için yanlış - url - dize, özel Soru-Cevap için URL
Soru-Cevap desteği kullanımını gösteren örnekler
Örnek: Özel Q & A kullanan uzantı
{
"CustomerQnASupport": {
"enablemarketplaceqna":"true",
"url": "http://uservoice.visualstudio.com"
}
}
Örnek: GitHub deposuyla uzantı ancak GitHub yerine Market Q & A kullanma sorunları
{
"CustomerQnASupport": {
"enablemarketplaceqna":"true"
}
}
Örnek: Uzantının Q & A bölümünü devre dışı bırakması
{
"CustomerQnASupport": {
"enablemarketplaceqna":"false"
}
}
Kapsamlar
Uzantınızda bir veya daha fazla kapsam tanımlayabilirsiniz. Bu kapsamlar, uzantınızın erişebileceği kaynakları ve bu kaynaklar üzerinde gerçekleştirmesine izin verilen işlemleri belirler. Uzantı bildiriminizde belirttiğiniz kapsamlar, uzantınıza verilen erişim belirteçlerinde ayarlanan kapsamlardır. Daha fazla bilgi için bkz . Kimlik doğrulaması ve güvenlik.
Hiçbir kapsam belirtilmezse, uzantılara yalnızca kullanıcı profili ve uzantı verilerine erişim sağlanır.
Desteklenen kapsamlar
Kategori | Kapsam | Veri Akışı Adı | Açıklama | Devral |
---|---|---|---|---|
Gelişmiş Güvenlik | vso.advsec |
AdvancedSecurity (okuma) | Uyarıları, sonuç örneklerini, analiz sonucu örneklerini okuma olanağı verir. | |
vso.advsec_write |
AdvancedSecurity (okuma ve yazma) | Sarif'e analiz yükleme olanağı verir | vso.advsec |
|
vso.advsec_manage |
AdvancedSecurity (okuma, yazma ve yönetme) | Sarif'e analiz yükleme olanağı verir | vso.advsec_write |
|
Aracı Havuzları | vso.agentpools |
Aracı Havuzları (okuma) | Aracılar için görevleri, havuzları, kuyrukları, aracıları ve şu anda çalışan veya son tamamlanan işleri görüntüleme olanağı sağlar. | |
vso.agentpools_manage |
Aracı Havuzları (okuma, yönetme) | Havuzları, kuyrukları ve aracıları yönetme olanağı sağlar. | vso.agentpools |
|
vso.environment_manage |
Ortam (okuma, yönetme) | Havuzları, kuyrukları, aracıları ve ortamları yönetme olanağı sağlar. | vso.agentpools_manage |
|
Analizler | vso.analytics |
Analiz (okuma) | Analiz verilerini sorgulama olanağı sağlar. | |
Denetim | vso.auditlog |
Denetim Günlüğü (okuma) | Kullanıcılara denetim günlüğünü okuma olanağı verir. | |
vso.auditstreams_manage |
Denetim Akışları (okuma) | Kullanıcılara denetim akışlarını yönetme olanağı verir. | vso.auditlog |
|
Yapı | vso.build |
Derleme (okuma) | Derleme sonuçları, tanımlar ve istekler dahil olmak üzere derleme yapıtlarına erişme ve hizmet kancaları aracılığıyla derleme olayları hakkında bildirim alma olanağı verir. | vso.hooks_write |
vso.build_execute |
Derleme (okuma ve yürütme) | Derleme sonuçları, tanımlar ve istekler dahil olmak üzere derleme yapıtlarına erişme ve derlemeyi kuyruğa alma, derleme özelliklerini güncelleştirme ve hizmet kancaları aracılığıyla derleme olayları hakkında bildirim alma olanağı verir. | vso.build |
|
Kod | vso.code |
Kod (okuma) | İşlemeler, değişiklik kümeleri, dallar ve diğer sürüm denetimi yapıtları hakkında kaynak kodu ve meta verileri okuma olanağı sağlar. Ayrıca hizmet kancaları aracılığıyla kod arama ve sürüm denetimi olayları hakkında bildirim alma olanağı sağlar. | vso.hooks_write |
vso.code_write |
Kod (okuma ve yazma) | Kaynak kodu okuma, güncelleştirme ve silme, işlemeler, değişiklik kümeleri, dallar ve diğer sürüm denetimi yapıtları hakkındaki meta verilere erişme olanağı sağlar. Ayrıca çekme istekleri ve kod gözden geçirmeleri oluşturup yönetme ve hizmet kancaları aracılığıyla sürüm denetimi olayları hakkında bildirim alma olanağı sağlar. | vso.code |
|
vso.code_manage |
Kod (okuma, yazma ve yönetme) | Kaynak kodu okuma, güncelleştirme ve silme, işlemeler, değişiklik kümeleri, dallar ve diğer sürüm denetimi yapıtları hakkındaki meta verilere erişme olanağı sağlar. Ayrıca kod depoları oluşturup yönetme, çekme istekleri ve kod gözden geçirmeleri oluşturup yönetme ve hizmet kancaları aracılığıyla sürüm denetimi olayları hakkında bildirim alma olanağı sağlar. | vso.code_write |
|
vso.code_full |
Kod (tam) | Kaynak koduna, işlemeler, değişiklik kümeleri, dallar ve diğer sürüm denetimi yapıtlarıyla ilgili meta verilere tam erişim verir. Ayrıca kod depoları oluşturup yönetme, çekme istekleri ve kod gözden geçirmeleri oluşturup yönetme ve hizmet kancaları aracılığıyla sürüm denetimi olayları hakkında bildirim alma olanağı sağlar. Ayrıca İstemci OM API'leri için sınırlı destek içerir. | vso.code_manage |
|
vso.code_status |
Kod (durum) | İşleme ve çekme isteği durumunu okuma ve yazma olanağı verir. | ||
Bağlı Sunucu | vso.connected_server |
Bağlı Sunucu | Şirket içi bağlı bir sunucudan gerekli uç noktalara erişme olanağı verir. | |
Destek Hakları | vso.entitlements |
Yetkilendirmeler (Okuma) | Hesap yetkilendirmelerini almak için lisans yetkilendirmeleri uç noktasına salt okunur erişim sağlar. | |
vso.memberentitlementmanagement |
MemberEntitlement Management (okuma) | Kullanıcılara, lisanslarına ek olarak erişebilecekleri projeleri ve uzantıları okuma olanağı verir. | ||
vso.memberentitlementmanagement_write |
MemberEntitlement Management (yazma) | Kullanıcıları, lisanslarını ve erişebilecekleri projeleri ve uzantıları yönetme olanağı sağlar. | vso.memberentitlementmanagement |
|
Uzantı -ları | vso.extension |
Uzantılar (okuma) | Yüklü uzantıları okuma olanağı verir. | vso.profile |
vso.extension_manage |
Uzantılar (okuma ve yönetme) | Yüklü uzantılarda diğer yönetim eylemlerini yükleme, kaldırma ve gerçekleştirme olanağı verir. | vso.extension |
|
vso.extension.data |
Uzantı verileri (okuma) | Yüklü uzantılar tarafından depolanan verileri (ayarlar ve belgeler) okuma olanağı verir. | vso.profile |
|
vso.extension.data_write |
Uzantı verileri (okuma ve yazma) | Yüklü uzantılar tarafından depolanan verileri (ayarlar ve belgeler) okuma ve yazma olanağı sağlar. | vso.extension.data |
|
Github Bağlantıları | vso.githubconnections |
GitHub Bağlantıları (okuma) | GitHub bağlantıları ve GitHub depoları verilerini okuma olanağı sağlar. | |
vso.githubconnections_manage |
GitHub Bağlantıları (okuma ve yönetme) | GitHub bağlantılarını ve GitHub depoları verilerini okuma ve yönetme olanağı sağlar | vso.githubconnections |
|
Grafik ve kimlik | vso.graph |
Grafik (okuma) | Kullanıcı, grup, kapsam ve grup üyeliği bilgilerini okuma olanağı verir. | |
vso.graph_manage |
Graph (yönet) | Kullanıcı, grup, kapsam ve grup üyeliği bilgilerini okuma ve kullanıcı, grup ekleme ve grup üyeliklerini yönetme olanağı verir. | vso.graph |
|
vso.identity |
Kimlik (okuma) | Kimlikleri ve grupları okuma olanağı sağlar. | ||
vso.identity_manage |
Kimlik (yönet) | Kimlikleri ve grupları okuma, yazma ve yönetme olanağı sağlar. | vso.identity |
|
Makine Grubu | vso.machinegroup_manage |
Dağıtım grubu (okuma, yönetme) | Dağıtım grubu ve aracı havuzlarını yönetme olanağı sağlar. | vso.agentpools_manage |
Market | vso.gallery |
Market | Genel ve özel öğelere ve yayımcılara okuma erişimi verir. | vso.profile |
vso.gallery_acquire |
Market (satın alma) | Okuma erişimi ve öğe alma olanağı verir. | vso.gallery |
|
vso.gallery_publish |
Market (yayımlama) | Okuma erişimi ve öğeleri karşıya yükleme, güncelleştirme ve paylaşma olanağı verir. | vso.gallery |
|
vso.gallery_manage |
Market (yönet) | Okuma erişimi ve öğeleri ve yayımcıları yayımlama ve yönetme olanağı verir. | vso.gallery_publish |
|
Bildirimler | vso.notification |
Bildirimler (okuma) | Filtrelenebilir alan değerleri dahil olmak üzere aboneliklere ve olay meta verilerine okuma erişimi sağlar. | vso.profile |
vso.notification_write |
Bildirimler (yazma) | Filtrelenebilir alan değerleri dahil olmak üzere aboneliklere okuma ve yazma erişimi ve olay meta verilerine okuma erişimi sağlar. | vso.notification |
|
vso.notification_manage |
Bildirimler (yönet) | Filtrelenebilir alan değerleri dahil olmak üzere aboneliklere okuma, yazma ve yönetim erişimi ve olay meta verilerine okuma erişimi sağlar. | vso.notification_write |
|
vso.notification_diagnostics |
Bildirimler (tanılama) | Bildirimle ilgili tanılama günlüklerine erişim sağlar ve tek tek abonelikler için tanılamayı etkinleştirme olanağı sağlar. | vso.notification |
|
Paketleme | vso.packaging |
Paketleme (okuma) | Akışları ve paketleri okuma olanağı sağlar. | vso.profile |
vso.packaging_write |
Paketleme (okuma ve yazma) | Akışlar ve paketler oluşturma ve okuma olanağı sağlar. | vso.packaging |
|
vso.packaging_manage |
Paketleme (okuma, yazma ve yönetme) | Akışlar ve paketler oluşturma, okuma, güncelleştirme ve silme olanağı sağlar. | vso.packaging_write |
|
İşlem Hattı Kaynakları | vso.pipelineresources_use |
İşlem Hattı Kaynakları (kullanım) | Bir işlem hattının korumalı kaynak kullanma isteğini onaylama olanağı verir: aracı havuzu, ortam, kuyruk, depo, güvenli dosyalar, hizmet bağlantısı ve değişken grubu. | |
vso.pipelineresources_manage |
İşlem Hattı Kaynakları (kullanma ve yönetme) | Korumalı bir kaynağı veya işlem hattının korumalı kaynak kullanma isteğini yönetme olanağı verir: aracı havuzu, ortam, kuyruk, depo, güvenli dosyalar, hizmet bağlantısı ve değişken grubu. | vso.pipelineresources_manage |
|
Proje ve Ekip | vso.project |
Proje ve ekip (okuma) | Projeleri ve ekipleri okuma olanağı sağlar. | |
vso.project_write |
Proje ve ekip (okuma ve yazma) | Projeleri ve ekipleri okuma ve güncelleştirme olanağı sağlar. | vso.project |
|
vso.project_manage |
Proje ve ekip (okuma, yazma ve yönetme) | Projeleri ve ekipleri oluşturma, okuma, güncelleştirme ve silme olanağı sağlar. | vso.project_write |
|
Sürüm | vso.release |
Yayın (okuma) | Yayınlar, yayın tanımları ve yayın ortamı dahil olmak üzere yayın yapıtlarını okuma olanağı sağlar. | vso.profile |
vso.release_execute |
Yayın (okuma, yazma ve yürütme) | Yayınlar, yayın tanımları ve yayın ortamı dahil olmak üzere yayın yapıtlarını okuma ve güncelleştirme ve yeni bir sürümü kuyruğa alma olanağı sağlar. | vso.release |
|
vso.release_manage |
Yayın (okuma, yazma, yürütme ve yönetme) | Yayınlar, yayın tanımları ve yayın ortamı dahil olmak üzere yayın yapıtlarını okuma, güncelleştirme ve silme ve yeni bir sürümü kuyruğa alma ve onaylama olanağı sağlar. | vso.release_manage |
|
Güvenli Dosyalar | vso.securefiles_read |
Güvenli Dosyalar (okuma) | Güvenli dosyaları okuma olanağı verir. | |
vso.securefiles_write |
Güvenli Dosyalar (okuma, oluşturma) | Güvenli dosyaları okuma ve oluşturma olanağı verir. | vso.securefiles_read |
|
vso.securefiles_manage |
Güvenli Dosyalar (okuma, oluşturma ve yönetme) | Güvenli dosyaları okuma, oluşturma ve yönetme olanağı sağlar. | vso.securefiles_write |
|
Güvenlik | vso.security_manage |
Güvenlik (yönet) | Güvenlik izinlerini okuma, yazma ve yönetme olanağı sağlar. | |
Hizmet Bağlantıları | vso.serviceendpoint |
Hizmet Uç Noktaları (okuma) | Hizmet uç noktalarını okuma olanağı verir. | vso.profile |
vso.serviceendpoint_query |
Hizmet Uç Noktaları (okuma ve sorgulama) | Hizmet uç noktalarını okuma ve sorgulama olanağı verir. | vso.serviceendpoint |
|
vso.serviceendpoint_manage |
Hizmet Uç Noktaları (okuma, sorgulama ve yönetme) | Hizmet uç noktalarını okuma, sorgulama ve yönetme olanağı sağlar. | vso.serviceendpoint_query |
|
Hizmet Kancaları | vso.hooks |
Hizmet kancaları (okuma) | Desteklenen olaylar, tüketiciler ve eylemler dahil olmak üzere hizmet kancası aboneliklerini ve meta verilerini okuma olanağı sağlar. (Artık genel değil.) | vso.profile |
vso.hooks_write |
Hizmet kancaları (okuma ve yazma) | Desteklenen olaylar, tüketiciler ve eylemler dahil olmak üzere hizmet kancası abonelikleri oluşturma ve güncelleştirme ve meta verileri okuma olanağı sağlar. (Artık genel değil.) | vso.hooks |
|
vso.hooks_interact |
Hizmet kancaları (etkileşim) | Hizmet kancaları aracılığıyla alınan olaylar üzerinde etkileşim kurma ve eylemler gerçekleştirme olanağı sağlar. (Artık genel değil.) | vso.profile |
|
Ayarlar | vso.settings |
Ayarlar (okuma) | Ayarları okuma olanağı verir. | |
vso.settings_write |
Ayarlar (okuma ve yazma) | Ayarları oluşturma ve okuma olanağı verir. | ||
Simgeler | vso.symbols |
Simgeler (okuma) | Sembolleri okuma yeteneği verir. | vso.profile |
vso.symbols_write |
Simgeler (okuma ve yazma) | Sembolleri okuma ve yazma yeteneği verir. | vso.symbols |
|
vso.symbols_manage |
Simgeler (okuma, yazma ve yönetme) | Sembolleri okuma, yazma ve yönetme olanağı sağlar. | vso.symbols_write |
|
Görev Grupları | vso.taskgroups_read |
Görev Grupları (okuma) | Görev gruplarını okuma yeteneği verir. | |
vso.taskgroups_write |
Görev Grupları (okuma, oluşturma) | Görev gruplarını okuma ve oluşturma olanağı verir. | vso.taskgroups_read |
|
vso.taskgroups_manage |
Görev Grupları (okuma, oluşturma ve yönetme) | Görev gruplarını okuma, oluşturma ve yönetme olanağı sağlar. | vso.taskgroups_write |
|
Ekip Panosu | vso.dashboards |
Ekip panoları (okuma) | Ekip panosu bilgilerini okuma olanağı sağlar. | |
vso.dashboards_manage |
Ekip panoları (yönet) | Ekip panosu bilgilerini yönetme olanağı sağlar. | vso.dashboards |
|
Test Yönetimi | vso.test |
Test yönetimi (okuma) | Test planlarını, çalışmaları, sonuçları ve test yönetimiyle ilgili diğer yapıtları okuma olanağı sağlar. | vso.profile |
vso.test_write |
Test yönetimi (okuma ve yazma) | Test planlarını, çalışmaları, sonuçları ve test yönetimiyle ilgili diğer yapıtları okuma, oluşturma ve güncelleştirme olanağı sağlar. | vso.test |
|
İş Parçacıkları | vso.threads_full |
Çekme isteği iş parçacıkları | Çekme isteği açıklama iş parçacıklarını okumak ve yazmak için yeteneği verir. | |
Belirteçler | vso.tokens |
Temsilci Yetkilendirme Belirteçleri | Kullanıcılara temsilci yetkilendirme belirteçlerini yönetme olanağı verir. | |
vso.tokenadministration |
Belirteç Yönetimi | Kuruluş yöneticilerine mevcut belirteçleri yönetme (görüntüleme ve iptal etme) olanağı verir. | ||
Kullanıcı Profili | vso.profile |
Kullanıcı profili (okuma) | Profilinizi, hesaplarınızı, koleksiyonlarınızı, projelerinizi, ekiplerinizi ve diğer üst düzey kuruluş yapıtlarınızı okuma olanağı sağlar. | |
vso.profile_write |
Kullanıcı profili (yazma) | Profilinize yazma olanağı sağlar. | vso.profile |
|
Değişken Grupları | vso.variablegroups_read |
Değişken Grupları (okuma) | Değişken gruplarını okuma olanağı verir. | |
vso.variablegroups_write |
Değişken Grupları (okuma, oluşturma) | Değişken gruplarını okuma ve oluşturma olanağı verir. | vso.variablegroups_read |
|
vso.variablegroups_manage |
Değişken Grupları (okuma, oluşturma ve yönetme) | Değişken gruplarını okuma, oluşturma ve yönetme olanağı sağlar. | vso.variablegroups_write |
|
Wiki | vso.wiki |
Wiki (okuma) | Wiki'leri, wiki sayfalarını ve wiki eklerini okuma olanağı sağlar. Ayrıca wiki sayfalarında arama yapma olanağı da verir. | |
vso.wiki_write |
Wiki (okuma ve yazma) | Wiki'leri, wiki sayfalarını ve wiki eklerini okuma, oluşturma ve güncelleştirme olanağı sağlar. | vso.wiki |
|
İş Öğeleri | vso.work |
İş öğeleri (okuma) | İş öğelerini, sorguları, panoları, alan ve yineleme yollarını ve diğer iş öğesi izlemeyle ilgili meta verileri okuma olanağı verir. Ayrıca, hizmet kancaları aracılığıyla sorgu yürütme, iş öğelerinde arama yapma ve iş öğesi olayları hakkında bildirim alma olanağı verir. | vso.hooks_write |
vso.work_write |
İş öğeleri (okuma ve yazma) | İş öğelerini ve sorgularını okuma, oluşturma ve güncelleştirme, pano meta verilerini güncelleştirme, okuma alanı ve yineleme yolları ile ilgili diğer iş öğesi izleme meta verilerini okuma, sorguları yürütme ve hizmet kancaları aracılığıyla iş öğesi olayları hakkında bildirim alma olanağı verir. | vso.work |
|
vso.work_full |
İş öğeleri (tam) | İş öğelerine, sorgulara, kapsamlara, planlara ve iş öğesi izleme meta verilerine tam erişim verir. Ayrıca hizmet kancaları aracılığıyla iş öğesi olayları hakkında bildirim alma olanağı sağlar. | vso.work_write |
|
Kullanıcı Kimliğe Bürünme | user_impersonation |
Kullanıcı Kimliğe Bürünme | Visual Studio Team Services REST API'lerine tam erişime sahip olun. Bu kapsamı çok güçlü olduğu için dikkatle isteyin ve/veya onaylayın! |
Yayımlanan uzantının kapsamını değiştirme
Yayımlanan uzantının kapsamını değiştirebilirsiniz. Uzantınızı daha önce yüklediyseniz (ve önceki kapsam kümesini yetkilendirdiyseniz), en yeni sürüme yükseltmeden önce yeni kapsamları yetkilendirebilirsiniz.
Uzantı ayarları hub'ının Eylem Gerekli bölümünde, yüklü uzantıların yetkilendirme gerektirdiği bir kullanıcı gösterilir:
Ardından bir yönetici yeni kapsam kümesini gözden geçirebilir ve yetkilendirebilir:
Yükleme hedefleri
Adından da anlaşılacağı gibi, yükleme hedefleri uzantınızı yükleyebileceğiniz ürünleri ve hizmetleri tanımlar. Microsoft.VisualStudio.Services
en yaygın yükleme hedefidir ve uzantının Azure DevOps'a yüklenebileceğini gösterir.
Bir uzantı veya tümleştirme için yükleme hedefleri bildirimdeki targets
alan aracılığıyla belirtilir.
Uzantılar için desteklenen tanımlayıcılar:
Microsoft.VisualStudio.Services.Cloud
: Azure DevOps Services'e yüklerMicrosoft.TeamFoundation.Server
: Azure DevOps Server'a yüklerMicrosoft.VisualStudio.Services
: her ikisine de yüklenir. veMicrosoft.TeamFoundation.Server
sürümü içinMicrosoft.VisualStudio.Services.Cloud
kısayol[14.2,)
Tümleştirmeler için desteklenen tanımlayıcılar:
Microsoft.VisualStudio.Services.Cloud.Integration
: Azure DevOps Services ile tümleştirilirMicrosoft.TeamFoundation.Server.Integration
: Azure DevOps Server ile tümleşirMicrosoft.VisualStudio.Services.Integration
: her ikisiyle de tümleşir. ve kısayoluMicrosoft.VisualStudio.Services.Cloud.Integration
Microsoft.TeamFoundation.Server.Integration
Daha fazla bilgi için bkz . Genişletilebilirlik noktaları.
Yükleme hedefleri örnekleri
Örnek: Azure DevOps ile çalışan uzantı
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
]
}
Örnek: Yalnızca Azure DevOps Services ile çalışan uzantı
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Cloud"
}
]
}
Yükleme hedefleri tümleştirme bildiriminde de kullanılabilir. Örneğin, birlikte çalışan ancak Azure DevOps'a yüklenmeyen ürünler, uygulamalar veya araçlar.
Örnek: Azure DevOps ile çalışan tümleştirme
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Integration"
}
]
}
Örnek: Yalnızca Azure DevOps Server ile çalışan tümleştirme
{
"targets": [
{
"id": "Microsoft.TeamFoundation.Server.Integration"
}
]
}
Yükleme hedef sürümleri
ve Microsoft.TeamFoundation.Server.Integration
gibi Microsoft.TeamFoundation.Server
bazı yükleme hedefi tanımlayıcıları isteğe bağlı bir sürüm aralığını destekler. Bu isteğe bağlı sürüm aralığı, uzantının veya tümleştirmenin desteklendiği desteklenen sürümleri daha ayrıntılı olarak açıklar.
Sürüm veya sürüm aralığı, yükleme hedef nesnesinde version
alan aracılığıyla belirtilir. Bu değer şu değerlerden biri olabilir:
- Belirli bir sürüm, örneğin:
15.0
(yalnızca 2017 RTM) - Desteklenen bir sürüm aralığı, örneğin:
[14.0)
(2015 RTM ve üzeri),[14.3,15.1]
(2015 Güncelleştirme 3 ile 2017 Güncelleştirme 1). Aralık değerleri aşağıdakiler kullanılarak iyileştirilir:[
: en düşük sürüm (dahil)]
: en yüksek sürüm (dahil)(
: en düşük sürüme özel)
: özel sürüm üst sınırı
Azure DevOps Server için sürüm numaraları:
Sürüm | Yayınlar | Sürüm |
---|---|---|
2010 | Tüm sürümler | 10.0 |
2012 | Tüm sürümler | 11.0 |
2013 | RTM ve güncelleştirmeler | 12.0, 12.1, 12.2, 12.3, 12.4 |
2015 | RTM ve güncelleştirmeler | 14.0, 14.1, 14.2, 14.3 |
2017 | RTM ve güncelleştirmeler | 15.0, 15.1 |
2018 | RTM ve güncelleştirmeler | 16.0 |
2019 | RTM ve güncelleştirmeler | 17.0 |
2020 | RTM ve güncelleştirmeler | 18,0 |
Sürümleri gösteren örnekler
Örnek: Azure DevOps ile çalışan uzantı
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Cloud"
},
{
"id": "Microsoft.TeamFoundation.Server",
"version": "[15.0,)"
}
]
}
Kısayollar
Microsoft.VisualStudio.Services
, Azure DevOps için bir kısayoldur.
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
]
}
eşdeğerdir:
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Cloud"
},
{
"id": "Microsoft.TeamFoundation.Server",
"version": "[14.2,)"
}
]
}
Yükleme hedeflerini ve taleplerini kullanma
Yükleme hedefleri ve talepleri, kullanıcılara uzantınızın veya tümleştirmenizin uyumlu olduğu ürünlerin/hizmetlerin doğru görünümünü sunmak için birlikte kullanılır. Örneğin, bir yükleme hedefinin Microsoft.VisualStudio.Services
isteğe bağlı api-version/3.0
olarak belirtilmesi, uzantının Azure DevOps ile çalıştığı anlamına gelir.
İpucu
REST API'ler hakkında daha fazla bilgi için bkz . REST API Başvurusu.
Örnek: Sürüm 3.0 API'lerini kullanan uzantı
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
],
"demands": [
"api-version/3.0"
]
}
Aşağıdaki yükleme hedeflerine çözümler:
Microsoft.VisualStudio.Services.Cloud
Microsoft.TeamFoundation.Server
Sürüm:[15.0,)
Örnek: Sürüm 2.0 API'lerini kullanan tümleştirme
{
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Integration"
}
],
"demands": [
"api-version/2.0"
]
}
Aşağıdaki yükleme hedeflerine çözümler:
Microsoft.VisualStudio.Services.Cloud.Integration
Microsoft.TeamFoundation.Server.Integration
Sürüm:[14.0,)
Talep
Talepler, uzantınızın gerektirdiği özellikleri ve diğer özellikleri belirtmenize olanak sağlar. Uzantınızın yayımlandığı veya yüklenebileceği yerleri sınırlamak için bu talepleri kullanabilirsiniz.
Talepler Visual Studio Market tarafından uzantınızın uyumlu olduğu ürünleri ve ortamları listelemek için kullanılır ve bu da müşterilerin uzantınızın Azure DevOps sürümleriyle çalışıp çalışmadığını anlamasına yardımcı olur.
Uzantı bildiriminde taleplerin nasıl belirtildiğine ilişkin aşağıdaki örne bakın.
{
"demands": [
"api-version/3.0",
"contribution/ms.vss-dashboards-web.widget-catalog"
]
}
Bu örnekte uzantı, API'lerin 3.0 sürümünü talep eder ve bu da yalnızca Azure DevOps'a yüklenebileceği anlamına gelir. Ayrıca uzantınızın yüklenebilmesi için uzantının ms.vss-dashboards-web
(ve katkısının widget-catalog
) koleksiyona yüklenmesi (ve etkinleştirilmesi) gerekir.
Desteklenen talepler
Type | Açıklama | Yayımlama sırasında denetlendi mi? | Yükleme sırasında denetlendi mi? |
---|---|---|---|
environment/cloud |
Bulut ortamında çalıştırmayı gerektirir | Yes | Yes |
environment/onprem |
Şirket içi ortamda çalıştırmayı gerektirir | Yes | Yes |
api-version/{version} |
Belirli bir API sürümü gerektirir (en düşük) | Hayır | Evet |
extension/{id} |
Belirli bir uzantının yüklenmesini/etkinleştirilmesini gerektirir | Hayır | Evet |
contribution/{id} |
Belirli bir katkının kullanılabilir olmasını gerektirir | Hayır | Evet |
contributionType/{id} |
Belirli bir katkı türünün kullanılabilir olmasını gerektirir | Hayır | Evet |
Not
- ve
environment/onprem
yalnızca uzantınızın belirli bir ortamda çalıştırılmasını gerektiren topolojiyle ilgili gereksinimleri olduğunda kullanınenvironment/cloud
. extension
,contribution
vecontributionType
talepleri yükleme zamanında değerlendirilir ve belirtilen uzantının kuruluşta/koleksiyonda zaten yüklü ve etkin olmasını gerektirir.
Dosyalar
Bölüm files
, uzantınıza eklemek istediğiniz dosyalara başvurabileceğiniz yerdir. Hem klasörleri hem de tek tek dosyaları ekleyebilirsiniz:
{
"files": [
{
"path": "hello-world.html", "addressable": true
},
{
"path": "scripts", "addressable": true
},
{
"path": "images/logo.png", "addressable": true, "packagePath": "/"
}
]
}
Properties
Dosyalar bölümünün özellikleri:
- path - Kök dizininize göre olabilecek disk üzerindeki kaynağın yolu.
- addressable – (isteğe bağlı) Dosyanızın URL adreslenebilir olmasını istiyorsanız true olarak ayarlayın. Varsayılan değer false'tur.
- packagePath – (isteğe bağlı) Paket içindeki kaynağın yolu. Kök dizininizden disk üzerindeki göreli yolu varsayılan olarak kullanır.
- contentType – (isteğe bağlı) dosyanın MIME türü. Dosya uzantısına ve işletim sistemi ayarlarına göre varsayılan olarak en iyi tahmindir.
- assetType – (isteğe bağlı) VSIX bildiriminde varlık girişinin Type özniteliğinin değerini belirtin. Bu dosya için birden çok varlık girdisi eklendiği bir dize dizisi de olabilir. Varsayılan olarak packagePath'i kullanır.
- lang – (isteğe bağlı) Bu varlığın dili. Yerelleştirilmiş dosyalar Accept-Language üst bilgisine göre sunulur. Bu dosyanın varsayılan (veya geri dönüş) dilinde olduğunu göstermek için boş bırakın. Aynı dosyanın yerelleştirilmiş sürümleri aynı assetType'a sahip olmalıdır.
Katkılar
Her katkı girişi aşağıdaki özelliklere sahiptir:
- id - Katkı için bir başvuru kimliği (dize). Her katkı kimliğini bir uzantı içinde benzersiz hale getirin. Bkz . katkılara ve türlere başvurma.
- type - Bu katkının contributionType kimliği.
- description - (İsteğe bağlı) Katkının ne sağladığını açıklayan bir dize.
- targets - Katkının hedeflediğini (katkıda bulunan) katkı kimlikleri dizisi. Bkz . Katkıları hedefleme.
- properties - (İsteğe bağlı) Katkı türünde tanımlanan katkı özelliklerini içeren nesne.
Daha fazla bilgi için bkz. katkı modeline genel bakış.
Katkı türleri
Her katkı girişi aşağıdaki özelliklere sahiptir:
- id - Katkı türü için bir başvuru kimliği (dize). Her katkı türü kimliğini bir uzantı içinde benzersiz hale getirin. Bkz . katkılara ve türlere başvurma.
- name - Katkı türünün kolay adı.
- description - (İsteğe bağlı) Katkı türünün ne için olduğunu daha ayrıntılı olarak açıklayan bir dize.
- properties - (İsteğe bağlı) Özellik adlarını özellik açıklamalarına eşleyen bir sözlük. Bu özellikler, bu tür katkılarının kullanabileceği gerekli ve isteğe bağlı özellikleri açıklar.
Özellik açıklamaları aşağıdaki özelliklere sahiptir:
- description - (İsteğe bağlı) Özelliğin ne için kullanıldığını açıklayan bir dize.
- required - (İsteğe bağlı) True ise özelliğin bu türdeki tüm katkılar için gerekli olduğunu belirten boole değeri.
- type - Özelliğin sahip olabileceği, dize, uri, guid, boolean, tamsayı, double, dateTime, dizi veya nesne olabilen değer türü.
Daha fazla bilgi için bkz. katkı modeline genel bakış.
Katkılara ve türlere başvurma
Katkılara ve katkı türlerine başvurmak için benzersiz tanımlayıcılar kullanın. Özelliğiyle type
başvuru türleri ve özelliğiyle targets
diğer katkılara başvurun.
- Tam katkı başvurusu yayımcı tanımlayıcısını, uzantı tanımlayıcısını ve katkı/tür tanımlayıcısını nokta (.) ile ayırarak içerir. Örneğin,
ms.vss-web.hub
"ms" (Microsoft) yayımcısı tarafından yayımlanan "vss-web" uzantısında "hub" tanımlayıcısı ile katkının tam tanımlayıcısıdır. - Göreli katkı başvuruları, bir katkının aynı uzantıdaki başka bir katkıya veya katkı türüne başvurusu için uzantı bildiriminde kullanılabilir. Bu durumda, yayımcı ve uzantı tanımlayıcıları DAHIL DEĞİlDİ ve tanımlayıcı bir nokta (.) ve ardından katkı tanımlayıcısı olur. Örneğin, ".hub" daha önce "ms.vss-web.hub" kısayolu olarak bahsedilen "vss-web" uzantısında kullanılabilir.
Katkıları hedefleme
Bazı katkılar, diğer katkıların hedeflediği kapsayıcılar olarak görev görür.
- Hub katkıları Hub Gruplarını hedefleyebilir. Bir sayfa işlendiğinde, web kullanıcı arabirimi seçilen hub grubunu hedefleyen tüm Hub katkılarını gösterir. Hub grupları, belirli bir gezinti alanında (örneğin proje düzeyi yönetici sayfaları) gösterilen bir hub grubu kümesini tanımlayan bir merkez grubu koleksiyonunu hedefler.
- Farklı katkı türleri menüleri hedefleyebilir: eylem, köprü eylemi ve eylem sağlayıcısı. Eylemler ve köprü eylemleri tek menü öğesi girdileri sağlar. Eylem sağlayıcısı birden çok dinamik menü öğesi sağlayabilir. Belirli bir menü için, söz konusu menü katkısını hedefleyen tüm katkılar (bu türlerden herhangi biri) genelinde öğeler toplanır.
Hub simgesi ekleme
Hub'ınıza simge ekleme hakkında bilgi için hub simgesi kılavuzuna göz atın.
Desteklenen rozet hizmetleri
Market yalnızca aşağıdaki güvenilen hizmetlerden gelen rozetleri destekler:
- api.travis-ci.org/
- badge.fury.io/
- badges.frapsoft.com/
- badges.gitter.im/
- badges.greenkeeper.io/
- cdn.travis-ci.org/
- ci.appveyor.com/
- codeclimate.com/
- codecov.io/
- coveralls.io/
- david-dm.org/
- gemnasium.com/
- img.shields.io/
- isitmaintained.com/
- marketplace.visualstudio.com/
- snyk.io/
- travis-ci.com/
- travis-ci.org/
- vsmarketplacebadges.dev/
- bithound.io/
- deepscan.io/
- githost.io/
- gitlab.com/
- opencollective.co/
Not
"vsmarketplacebadge.apphb.com" yerine "vsmarketplacebadges.dev" yazın.
Başka bir hizmetten rozet göstermek için Geliştirici Topluluğu Müşteri Desteği'ne başvurun.
Örnek bildirim
Aşağıdaki uzantı, tamamlanmış derlemeler bağlam menüsüne bir eyleme ve Derleme hub'ı grubuna bir hub'a katkıda bulunur:
{
"manifestVersion": 1,
"id": "tools",
"version": "0.1.0",
"name": "Fabrikam Tools",
"publisher": "fabrikam",
"description": "Awesome tools to help you and your team do great things everyday.",
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
],
"demands": [
"api-version/3.0"
],
"icons": {
"default": "images/fabrikam-logo.png"
},
"scopes": [
"vso.work",
"vso.code_write"
],
"categories": [
"Plan and track"
],
"tags": [
"working",
"people person",
"search"
],
"branding": {
"color": "rgb(34, 34, 34)",
"theme": "dark"
},
"screenshots": [
{
"path": "screenshots/screen1.png"
},
{
"path": "screenshots/screen2.png"
}
],
"content": {
"details": {
"path": "overview.md"
},
"license": {
"path": "eula.md"
}
},
"links": {
"home": {
"uri": "https://www.fabrikam-fiber-inc.com"
},
"getstarted": {
"uri": "https://www.fabrikam-fiber-inc.com/help/getstarted"
},
"learn": {
"uri": "https://www.fabrikam-fiber-inc.com/features"
},
"support": {
"uri": "https://www.fabrikam-fiber-inc.com/support"
},
"repository": {
"uri": "https://github.com/fabrikam-fiber-inc/tools"
},
"issues": {
"uri": "https://github.com/fabrikam-fiber-inc/tools/issues"
}
},
"repository": {
"type": "git",
"uri": "https://github.com/fabrikam-fiber-inc/myextension"
},
"badges": [
{
"href": "https://travis.ci/fabrikam-fiber-inc/myextension",
"uri": "https://travis.ci/fabrikam-fiber-inc/myextension.svg?branch=master",
"description": "TravisCI build for the project"
},
{
"href": "https://ci.appveyor.com/projects/fabrikam-fiber-inc/myextension",
"uri": "https://ci.appveyor.com/api/projects/status/vlg2sgs2y7tsdxpj4c?svg=true",
"description": "AppVeyor build for the project"
}
],
"contributions": [
{
"id": "showCommits",
"type": "ms.vss-web.action",
"description": "Adds a menu action from builds grid to show associated items.",
"targets": [
"ms.vss-build-web.completed-build-menu"
],
"properties": {
"title": "View associated items",
"uri": "launch.html"
}
}
]
}