Azure DevOps ile Sürekli Dağıtım
Önemli
Özel Komutlar 30 Nisan 2026'da kullanımdan kaldırılacaktır. 30 Ekim 2023 itibarıyla Speech Studio'da yeni Özel Komutlar uygulaması oluşturamazsınız. Bu değişiklikle ilgili olarak LUIS, 1 Ekim 2025'te kullanımdan kaldırılacaktır. 1 Nisan 2023 itibarıyla yeni LUIS kaynakları oluşturamazsınız.
Bu makalede, Özel Komutlar uygulamalarınız için sürekli dağıtımı ayarlamayı öğreneceksiniz. CI/CD iş akışını destekleyecek betikler size sağlanır.
Önkoşul
- Geliştirme için Özel Komutlar uygulaması (DEV)
- Üretim için Özel Komutlar uygulaması (PROD)
- Azure Pipelines'a kaydolma
Dışarı/İçeri/Yayımla
Betikler Ses Yardımcısı - Özel Komutlar'da barındırılır. Bash dizinindeki betikleri deponuza kopyalayın. Aynı yolu kullandığınızdan emin olun.
İşlem hattı ayarlama
Azure DevOps - İşlem Hatları'na gidin ve "Yeni İşlem Hattı" seçeneğini belirleyin
Bağlan bölümünde bu betiklerin bulunduğu deponuzun konumunu seçin
Seç bölümünde deponuzu seçin
Yapılandır bölümünde "Starter işlem hattı" seçeneğini belirleyin
Ardından YAML dosyası içeren bir düzenleyici alırsınız, "adımlar" bölümünü bu betikle değiştirin.
steps: - task: Bash@3 displayName: 'Export source app' inputs: targetType: filePath filePath: ./bash/export.sh arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(SourceAppId) -f ExportedDialogModel.json' workingDirectory: bash failOnStderr: true - task: Bash@3 displayName: 'Import to target app' inputs: targetType: filePath filePath: ./bash/import.sh arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(TargetAppId) -f ExportedDialogModel.json' workingDirectory: bash failOnStderr: true - task: Bash@3 displayName: 'Train and Publish target app' inputs: targetType: filePath filePath: './bash/train-and-publish.sh' arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(TargetAppId)' workingDirectory: bash failOnStderr: true
Bu betikler, bölge
westus2
kullandığınızı varsayar, durum böyle değilse görevlerin bağımsız değişkenlerini uygun şekilde güncelleştirin"Kaydet ve çalıştır" düğmesinde açılan listeyi açın ve "Kaydet"i seçin
İşlem hattını uygulamanızla bağlama
İşlem hattının ana sayfasına gidin.
Sağ üst köşedeki açılan listede İşlem hattını düzenle'yi seçin. Sizi bir YAML düzenleyicisine alır.
"Çalıştır" düğmesinin yanındaki sağ üst köşede Değişkenler'i seçin. Yeni değişken'i seçin.
Şu değişkenleri ekleyin:
Değişken Açıklama SourceAppId DEV uygulamasının kimliği TargetAppId PROD uygulamasının kimliği SubscriptionKey Her iki uygulama için de kullanılan anahtar Kültür Uygulamaların kültürü (en-us) "Çalıştır"ı ve ardından çalışan "İş" öğesini seçin.
Çalışan görevlerin listesini görmeniz gerekir: "Kaynak uygulamayı dışarı aktar", "Hedef uygulamaya aktar" ve "Hedef uygulamayı eğitme ve yayımlama"
Kaynak koddan dağıtma
Uygulamanızın tanımını bir depoda tutmak istiyorsanız, kaynak koddan dağıtımlar için betikler sağlıyoruz. Betikler Bash'te olduğundan Windows kullanıyorsanız Linux alt sistemini yüklemeniz gerekir.
Betikler Ses Yardımcısı - Özel Komutlar'da barındırılır. Bash dizinindeki betikleri deponuza kopyalayın. Aynı yolu kullandığınızdan emin olun.
Deponuzu hazırlama
Uygulamanız için bir dizin oluşturun, örneğimizde "uygulamalar" adlı bir dizin oluşturun.
Aşağıdaki bash betiğinin bağımsız değişkenlerini güncelleştirin ve çalıştırın. Uygulamanızın iletişim kutusu modelini dosya myapp.json içeri aktarır
bash/export.sh -r <region> -s <subscriptionkey> -c en-us -a <appid> -f apps/myapp.json
Bağımsız Değişkenler Açıklama region Konuşma kaynak bölgeniz. Örneğin: westus2
subscriptionkey Konuşma kaynak anahtarınız. Appıd Dışarı aktarmak istediğiniz Özel Komutların uygulama kimliği. Bu değişiklikleri deponuza gönderin.
İşlem hattı ayarlama
Azure DevOps - İşlem Hatları'na gidin ve "Yeni İşlem Hattı" seçeneğini belirleyin
Bağlan bölümünde bu betiklerin bulunduğu deponuzun konumunu seçin
Seç bölümünde deponuzu seçin
Yapılandır bölümünde "Starter işlem hattı" seçeneğini belirleyin
Ardından YAML dosyası içeren bir düzenleyici alırsınız, "adımlar" bölümünü bu betikle değiştirin.
steps: - task: Bash@3 displayName: 'Import app' inputs: targetType: filePath filePath: ./bash/import.sh arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(TargetAppId) -f ../apps/myapp.json' workingDirectory: bash failOnStderr: true - task: Bash@3 displayName: 'Train and Publish app' inputs: targetType: filePath filePath: './bash/train-and-publish.sh' arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(TargetAppId)' workingDirectory: bash failOnStderr: true
Not
Bu betikler westus2 bölgesini kullandığınızı varsayar; durum böyle değilse görevlerin bağımsız değişkenlerini uygun şekilde güncelleştirin
"Kaydet ve çalıştır" düğmesinde açılan listeyi açın ve "Kaydet"i seçin
İşlem hattını hedef uygulamalarınızla bağlama
İşlem hattının ana sayfasına gidin.
Sağ üst köşedeki açılan listede İşlem hattını düzenle'yi seçin. Sizi bir YAML düzenleyicisine alır.
"Çalıştır" düğmesinin yanındaki sağ üst köşede Değişkenler'i seçin. Yeni değişken'i seçin.
Şu değişkenleri ekleyin:
Değişken Açıklama TargetAppId PROD uygulamasının kimliği SubscriptionKey Her iki uygulama için de kullanılan anahtar Kültür Uygulamaların kültürü (en-us) "Çalıştır"ı ve ardından çalışan "İş" öğesini seçin. Çalışan görevlerin listesini görmeniz gerekir: "Uygulamayı içeri aktar" ve "Uygulamayı eğit ve yayımla"