Microsoft Power Platform geliştirmesi için kullanılabilir GitHub Actions
GitHub Actions Microsoft Power Platform aşağıdaki bölümlerde açıklanmıştır. Ayrıca örnek GitHub iş akışları da gösterilmektedir. GitHub eylemleri ve bunları indirme hakkında daha fazla bilgi için Microsoft Power Platform için GitHub Eylemleri konusuna gidin.
Microsoft Power Platform ile GitHub Actions ile birlikte kullanılacak kimlik bilgilerini yapılandırma
Eylemlerin çoğu bir Microsoft Dataverse ortamına bağlanmanızı gerektirir. GitHub deponuza, hizmet sorumlusu veya kullanıcı kimlik bilgilerini parola olarak ekleyebilir ve bunları iş akışlarınızında kullanabilirsiniz.
GitHub'da parolaların nasıl ayarlanacağı hakkında ayrıntılı bilgi için bkz. Şifrelenmiş parolalar
Microsoft Power Platform için hizmet sorumlusu kimlik doğrulaması ayarlama hakkında ayrıntılı bilgi için bkz. DevOps Derleme araçları
Yapılandırıldıktan sonra, Hizmet Sorumlusunu Eylem komut dosyalarınızda çağırabilirsiniz.
GitHub eylemi komut dosyanızda Ortam Değişkenleri olarak tanımlanacak parametreler:
- Şunun gibi Uygulama Kimliği:
WF_APPLICATION_ID:<your application id>
- Şunun gibi Kiracı Kimliği:
WF_TENANT_ID:<your tenant id>
İstemci parolası, GitHub parolası olarak eklenip depolanmalıdır ve bu parolaya şunun gibi bir parametre kullanarak iş akışının içinden başvurulur: client secret: ${{secrets.CLIENT_SECRET_GITHUB_ACTIONS}}
Yardımcı görevleri
Kullanılabilir yardımcı görev aşağıda açıklanmıştır.
actions yüklemesi
GitHub Eylemler iş akışı bir çalıştırıcı bağlamında Power Platform CLI yüklemesini zorlar ve zaman aşımı hatası oluşursa, aşağıdaki gibi ek bir eylemle (actions-install
) sürüm 1'i (@v1) kullanmanız gerekir.
Önemli
- Sürüm 1'in (@v1) kullanılması, varolan GitHub eylemlerinde güncelleştirmelere yol açarak geçerli iş akışlarının güncelleştirilmeleriyle sonuçlanabilir.
- Power Platform Tools Yükle görevini, diğer Power Platform GitHub Eylemleri öncesinde iş akışınıza ilk görev olarak eklemeniz gerekir.
jobs:
builds:
runs-on: windows-latest # alternate runner OS is: ubuntu-latest
steps:
- name: Install Power Platform Tools
uses: microsoft/powerplatform-actions/actions-install@v1
- name: Export Solution
uses: microsoft/powerplatform-actions/export-solution@v1
with:
environment-url: 'https://myenv.crm.dynamics.com'
user-name: 'me@myenv.onmicrosoft.com'
password-secret: ${{ secrets.MYPASSWORD }}
solution-name: aSolution
solution-output-file: 'aSolution.zip'
working-directory: 'out'
Power Platform Eylemlerinde GitHub Eylemleri'nin ek örneklerini bulabilirsiniz.
whoAmI
Hizmete bağlanarak ve WhoAmI
[SDK/Web API'sı] isteği göndererek servis bağlantısını doğrular. İşleme başlamadan önce bağlantıyı doğrulamak için bu görevin GitHub iş akışınızın erken bir bölümüne eklenmesi yararlı olabilir.
Parametre | Açıklama |
---|---|
environment-url | Bağlanmakta olduğunuz ortamın URL'si. |
user-name | Bağlanmak için kullandığınız hesabın kullanıcı adı. |
password-secret | user-name için parola. GitHub parolaları Gizli Anahtarlar altındaki Ayarlar'da tanımlanır. Tanımlandıktan ve kaydettikten sonra parola alamazsınız. |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
Çözüm görevleri
Bu görevler çözümlere karşı eylemler gerçekleştirirler ve aşağıdakileri içerir.
import-solution
Hedef ortama bir çözüm alır.
Parametre | Açıklama |
---|---|
environment-url | (Gerekli) Çözümü içeri aktarmak istediğiniz hedef ortamın URL'si (örneğin https://YourOrg.crm.dynamics.com ). |
user-name | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın kullanıcı adı. |
password-secret | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın parolası. |
solution-file | (Gerekli) İçeri aktarmak istediğiniz çözüm dosyasının yolu ve adı. |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
export-solution
Kaynak ortamdan bir çözümü verir.
Parametre | Açıklama |
---|---|
environment-url | (Gerekli) Çözümü dışarı aktarmak istediğiniz ortamın URL'si (örneğin https://YourOrg.crm.dynamics.com ). |
user-name | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın kullanıcı adı. |
password-secret | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız user-name parolası. GitHub parolaları Gizli Anahtarlar altındaki Ayarlar'da tanımlanır. Tanımlandıktan ve kaydettikten sonra parola alamazsınız. |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
solution-name | (Gerekli) Dışarı aktarılacak çözümün adı. Her zaman çözümün adını kullanın, görünen adı değil. |
solution-output-file | (Gerekli) Kaynak ortamdan dışarı aktarılacak çözüm .zip dosyasının yolu ve dosya adı. |
managed | (Gerekli) Yönetilen çözüm olarak dışarı aktarmak için true olarak ayarlayın; varsayılan ayar (false) yönetilmeyen çözüm olarak dışarı aktarmaktır. |
unpack-solution
Sıkıştırılmış bir çözüm dosyasını alır ve birden çok XML dosyasına ve diğer dosyalara bu dosyaların bir kaynak denetim sistemi tarafından daha kolay yönetilebilmesi için bunları kaldırır.
Parametre | Açıklama |
---|---|
solution-file | (Gerekli) Paketi açılacak çözüm.zip dosyasının yolu ve dosya adı. |
solution-folder | (Gerekli) Çözümün paketini içine almak istediğiniz yol ve hedef klasör. |
solution-type | (Gerekli) Paketini açmak istediğiniz çözümün türü. Seçenekler şunlardır: Yönetilmeyen (önerilen), Yönetilen ve Her ikisi. |
pack-solution
Bu görev, kaynak denetimi tarafından temsil edilen bir çözümü başka bir ortama alınabilen bir çözüm .zip dosyası olarak paketler.
Parametre | Açıklama |
---|---|
solution-file | (Gerekli) Çözümün paketleneceği solution.zip dosyasının yolu ve dosya adı (ör. out/CI/ALMLab.zip). |
solution-folder | (Gerekli) Paketin çözüm yolu ve kaynak klasörü. |
solution-type | (İsteğa Bağlı) Paketlenecek çözümün türü. Seçenekler şunlardır: Yönetilmeyen (önerilen), Yönetilen ve Her ikisi. |
publish-solution
Çözüm özelleştirmelerini yayımlar.
Parametre | Açıklama |
---|---|
environment-url | (Gerekli) Çözümü yayımlamak istediğiniz hedef ortamın URL'si (örneğin https://YourOrg.crm.dynamics.com ). |
user-name | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın kullanıcı adı. |
password-secret | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın parolası. |
solution-file | (Gerekli) İçeri aktarmak istediğiniz çözüm dosyasının yolu ve adı. |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
clone-solution
Çözümü belirli bir ortam için klonlar.
Parametre | Açıklama |
---|---|
environment-url | (Gerekli) Çözümü klonlamak istediğiniz ortamın URL'si (örneğin https://YourOrg.crm.dynamics.com ). |
user-name | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın kullanıcı adı. |
password-secret | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın parolası. |
solution-file | (Gerekli) İçeri aktarmak istediğiniz çözüm dosyasının yolu ve adı. |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
solution-name | (Gerekli) Klonlamak için gereken çözüm .zip dosyasının yolu ve adı (örneğin, out/CI/ALMLab.zip). |
solution-version | Çözümün klonlanacak sürümü. |
target-folder | Ayıklanan çözümün yerleştirileceği hedef klasör. (örneğin, Git repository\target-solution-folder). |
Working-directory | Çözümü klonlamak için gerekli olan devam eden çalışma yapıtlarına ait geçici klasör. varsayılan: root of the repository |
check-solution
Tutarsızlıkları saptamak için çözüm dosyasını denetler.
Parametre | Açıklama |
---|---|
environment-url | (Gerekli) Çözümü klonlamak istediğiniz ortamın URL'si (örneğin https://YourOrg.crm.dynamics.com ). |
user-name | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın kullanıcı adı. |
password-secret | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın parolası. |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
yol | (Gerekli) Denetlemek istediğiniz çözüm dosyasının yolu ve adı. |
geo | Microsoft Power Platform Denetleyicisi hizmetinin hangi coğrafi konumunun kullanılacağı. Varsayılan değer: 'united states'. |
rule-level-override | Bir JSON kural dizisi ve düzeylerini içeren dosyanın yolu. Kabul edilen değerler şunlardır: Kritik, en yüksek, düşük ve bilgilendirici. Örnek: [{"Id":"meta-remove-dup-reg","OverrideLevel":"Medium"},{"Id":"il-avoid-specialized-update-ops","OverrideLevel":"Medium"}] |
checker-logs-artifact-name | Microsoft Power Platform denetleyici günlüklerinin yükleneceği yapıt klasörünün adı. Varsayılan değer: 'CheckSolutionLogs'. |
upgrade-solution
Çözümü yükseltme yeteneğini sağlar.
Parametre | Açıklama |
---|---|
environment-url | (Gerekli) Çözümü klonlamak istediğiniz ortamın URL'si (örneğin https://YourOrg.crm.dynamics.com ). |
user-name | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın kullanıcı adı. |
password-secret | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın parolası. |
solution-file | (Gerekli) İçeri aktarmak istediğiniz çözüm dosyasının yolu ve adı. |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
solution-name | (Gerekli) Yükseltilecek çözümün adı. |
async | Çözümü zaman uyumsuz olarak yükseltir. |
max-async-wait-time | Dakika olarak maksimum zaman uyumsuz bekleme süresi. Varsayılan değer 60 dakikadır. |
Paket görevleri
Bu görevler paketlere karşı eylemler gerçekleştirirler ve aşağıdakileri içerir.
deploy-package
Paketi bulunan bir paket DLL'sini veya zip dosyasını dağıtma olanağı sağlar.
Not
Bu eylem yalnızca Windows'da desteklenir.
Parametre | Tanım |
---|---|
environment-url | (Gerekli) Çözümü klonlamak istediğiniz ortamın URL'si (örneğin https://YourOrg.crm.dynamics.com ). |
user-name | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın kullanıcı adı. |
password-secret | (Gerekli) Kullanıcı adı/parola kimlik doğrulaması kullanıyorsanız, bağlanırken kullandığınız hesabın parolası. |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
paket | (Gerekli) Paket dll dosyası veya paket içeren zip dosyasının yolu. |
Toplam görevleri
Bu görevler, Power Pages üzerinde aşağıdaki işlemleri gerçekleştirir.
upload-paportal
Power Pages'e veri yükler.
Parametre | Tanım |
---|---|
environment-url | (Gerekli) Çözümü içeri aktarmak istediğiniz hedef ortamın URL'si (örneğin https://YourOrg.crm.dynamics.com ). |
app-id | Kimlik doğrulama için uygulama kimliği. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
client-secret | GitHub ardışık düzeninin kimliğini doğrulamak için kullanılan gizli anahtar. Bu parametre, Hizmet Sorumlusu kimlik bilgileriyle kimlik doğrulaması yapılırken gereklidir. |
tenant-id | app-id ve client-secret kimlik doğrulaması yaparken kiracı kimliği. |
upload-path | Web sitesi içeriğinin saklandığı yol (diğer adı: -p). |
deployment-profile | deployment-profiles/[profile-name].deployment.yaml dosyasında profil değişkenleri aracılığıyla tanımlanan ortam ayrıntıları ile portal verilerini karşıya yükleyin. |
model-version | Yüklenecek site verilerinin standart (1 ) veya gelişmiş veri modelini (2 ) kullanacağını belirtir. Varsayılan değer: '1'. |
Power Pages için Microsoft Power Platform CLI desteği hakkında daha fazla bilgi edinin.
Katalog görevleri (önizleme)
Bu görevler Power Platform uygulamasında kataloğa karşı eylemler gerçekleştirirler ve aşağıdakileri içerir.
Not
Şimdilik, Power Platform için katalog görevleri bir Önizleme sürümüdür.
yükle
Hedef ortama bir Catalog öğesi yükleyin.
Parametre | Veri Akışı Açıklaması |
---|---|
katalog-öğe-kimlik | (Gerekli) Hedef ortama yüklenecek Katalog öğesi. |
target-url | (Gerekli) Katalog öğesi yüklemesi için hedef ortamın URL'si (örneğin, "https://YourOrg.crm.dynamics.com"). |
ayarlar | (Gerekli) Çalıştırılacak yükleme çerçevesi için çalışma zamanı paketi ayarları. Dize biçimi key=value|key=value olmalıdır. |
hedef-sürüm | Yüklenecek hedef sürüm. Boş bırakılırsa, yayımlanan sürüm seçilir. |
anket-durum | İsteğinizin durumunu kontrol etmek için anket. |
gönder
Geçerli Dataverse ortamdan (kuruluş) tüm yayınlanmış katalog öğelerini listeleyin.
Parametre | Veri Akışı Açıklaması |
---|---|
yol | (Gerekli) Katalog gönderme belgesinin yolu. |
paket-zip | Paket zip dosyasının yolu. |
çözüm-zip | Çözüm zip dosyasının yolu. |
anket-durum | İsteğinizin denetim durumu için yoklama yapma. |
durum
Catalog yükleme/gönderme isteğinin durumunu alın.
Parametre | Veri Akışı Açıklaması |
---|---|
izleme-kimlik | (Gerekli) İzleme kimliğini iste. |
Tür | (Gerekli) İstek türü (değerler: Yükle, Gönder) |
GitHub iş akışı yazma
GitHub Actions'ı kullanarak GitHub iş akışları oluşturma hakkında daha fazla bilgi edinmek için Microsoft Power Platform için GitHub Actions laboratuvarlarını tamamlayın.
Daha fazla bilgi: GitHub Eylemleri Hakkında