Dosya dönüştürme görevi

Yapılandırma ve parametreler dosyalarında dosya dönüştürmeleri ve değişken değiştirmeleri uygulamak için bu görevi kullanın. Çevirilerin nasıl işlendiği hakkında daha fazla bilgi için bkz. Dosya dönüştürmeleri ve değişken değiştirme başvurusu.

Önemli

Bu görev Web paketlerine yöneliktir ve bir Web paketi dosyası gerektirir ve tek başına JSON dosyalarında çalışmaz.

Dosya dönüştürmeleri

  • Mevcut dosya dönüştürmeleri yalnızca XML dosyaları için desteklenir.

  • Yapılandırma dosyalarına (*. config) XML dönüşümü uygulamak için söz dizimini kullanarak dönüştürme dosyası kurallarının yeni bir listesini belirtmeniz gerekir:

    -transform <path to the transform file> -xml <path to the source file> -result <path to the result file>

  • Dosya dönüştürmeleri, özellikle bir App Service 'e dağıtım yaparken ve standart Web.config dönüşüm sözdiziminiizleyerek farklı ortamlara (geliştirme, test veya üretim gibi) yapılandırma eklemek, kaldırmak veya değiştirmek istediğinizde birçok senaryoda faydalıdır.

  • Ayrıca, bu işlevselliği konsol veya Windows hizmeti uygulama yapılandırma dosyaları (örneğin, FabrikamService.exe.config) dahil diğer dosyaları dönüştürmek için de kullanabilirsiniz.

  • Yapılandırma dosyası dönüştürmeleri, değişken değişimlerinden önce çalıştırılır.

Değişken değiştirme

  • Yalnızca mevcut XML ve JSON dosya biçimleri değişken değiştirme için desteklenir.

  • Hedef yapılandırma dosyalarında tanımlanan belirteçler güncelleştirilir ve sonra değişken değerleriyle değiştirilmiştir.

  • Değişken değişimler, yapılandırma dosyası dönüşümlerinden sonra çalıştırılır.

  • Değişken değiştirme yalnızca nesne hiyerarşisinde önceden tanımlanmış JSON anahtarları için geçerlidir. Yeni anahtar oluşturmaz.

Örnekler

Model .Production.config adlı tüm yapılandırma dosyalarında ÇALıŞTıRMAK için xml dönüşümü gerekiyorsa, dönüştürme kuralı şöyle belirtilmelidir:

-transform **\*.Production.config -xml **\*.config

İşlem hattınızdaki aşama adına göre adlı bir yapılandırma dosyanız varsa şunları kullanabilirsiniz:

-transform **\*.$(Release.EnvironmentName).config -xml **\*.config

İç içe geçmiş veya hiyerarşik olan JSON değişkenlerini değiştirmek için, JSONPath ifadelerini kullanarak bunları belirtin. Örneğin, aşağıdaki örnekteki ConnectionString öğesinin değerini değiştirmek için, Data.DefaultConnection.ConnectionString derleme veya sürüm ardışık düzeninde (veya yayın işlem hattının içindeki bir aşamada) bir değişken tanımlamanız gerekir.

{
  "Data": {
    "DefaultConnection": {
      "ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
    }
  }
}

Not

Yalnızca derleme ve yayın işlem hatları 'nda tanımlanan özel değişkenler değiştirme içinde kullanılır. Varsayılan ve sistem ardışık düzen değişkenleri hariç tutulur.

Şu anda dışlanan ön eklerin listesi aşağıda verilmiştir:

  • ' Agent. '
  • ' azure_http_user_agent '
  • ' Build. '
  • ' Common. '
  • ' Release. '
  • ' System. '
  • ' tf_ '

Aynı değişkenler hem yayın ardışık düzeninde hem de bir aşamada tanımlanırsa, aşama tanımlı değişkenler işlem hattı tanımlı değişkenlerin yerini alır.

Ayrıca bkz: Dosya dönüştürmeleri ve değişken değiştirme başvurusu.

Erişim

Yok

YAML kod parçacığı

# File transform
# Replace tokens with variable values in XML or JSON configuration files
- task: FileTransform@1
  inputs:
    #folderPath: '$(System.DefaultWorkingDirectory)/**/*.zip' 
    #enableXmlTransform: # Optional
    #xmlTransformationRules: '-transform **\*.Release.config -xml **\*.config-transform **\*.$(Environment.Name).config -xml **\*.config' # Optional
    #fileType: # Optional. Options: xml, json
    #targetFiles: # Optional

Bağımsız değişkenler

Bağımsız Değişken Description
Paket veya klasör
folderPath
Paketin veya klasörün dosya yolu. Değişkenler (derleme | Sürüm), joker karakterler desteklenir. Örneğin, $(System.DefaultWorkingDirectory)/*/.zip. Daraltılmış klasörler için içerik GEÇICI konuma, yürütülen dönüşümlere ve özgün yapıt konumunda daraltılmış sonuçlara ayıklanır.
XML dönüşümü
enableXmlTransform
Aşağıda belirtilen kurallara göre XML dönüştürmeleri uygulamak için bu seçeneği etkinleştirin. Yapılandırma dönüştürmeleri, herhangi bir değişken değiştirme işleminden önce çalışır. XML dönüştürmeleri yalnızca Windows platformu için desteklenir.
Dönüştürme kuralları
Xmldönüştürme Tionrules
Sözdizimini kullanarak dönüştürme dosyası kurallarının yeni satır ile ayrılmış bir listesini sağlayın
-transform <path to the transform file> -xml <path to the source configuration file> -result <path to the result file>
Sonuç dosyası yolu isteğe bağlıdır ve belirtilmemişse, kaynak yapılandırma dosyası dönüştürülmüş sonuç dosyasıyla birlikte değişir.
Dosya biçimi
fileType
Değiştirme gerçekleştirileceği dosya biçimini belirtin. Değişken değiştirme herhangi bir yapılandırma dönüşümden sonra çalışır. XML için, derleme veya yayın işlem hatlarında tanımlanan değişkenler, herhangi bir yapılandırma dosyasının ve parameters.xml dosyanın appSettings, applicationSettings ve connectionStrings bölümlerinde yer alarak belirteç ('Key' veya 'ad') girişleri ile eşleştirilir.
Hedef dosyalar
targetFiles
Değişken değiştirme için dosyaların yeni satır ile ayrılmış bir listesini sağlayın. Dosya adları kök klasöre göre belirtilmelidir.

Açık kaynak

Bu görev GitHub'da açık kaynaktır. Geribildirim ve katılımlar hoş geldiniz.