Tindakan GitHub tersedia untuk pembangunan Microsoft Power Platform

Bahagian berikut menerangkan GitHub Actions untuk Microsoft Power Platform. Bahagian ini juga menunjukkan contoh aliran kerja GitHub. Untuk maklumat lanjut tentang GitHub Actions dan cara memuat turunnya, lihat GitHub Actions untuk Microsoft Power Platform.

Konfigurasikan kelayakan untuk digunakan dengan Tindakan GitHub dengan Microsoft Power Platform

Kebanyakan tindakan memerlukan anda untuk bersambung ke persekitaran Microsoft Dataverse. Tambah kelayakan prinsipal perkhidmatan atau pengguna sebagai rahsia dalam repositori GitHub anda dan kemudian gunakan dalam aliran kerja anda.

  • Untuk maklumat lanjut tentang cara menyediakan rahsia dalam GitHub, lihat Rahsia yang disulitkan.

  • Untuk maklumat lanjut tentang cara menyediakan pengesahan prinsipal perkhidmatan untuk Microsoft Power Platform, lihat alat DevOps Build.

Selepas anda mengkonfigurasi kelayakan, anda boleh memanggil prinsipal perkhidmatan dari dalam skrip Tindakan anda.

Tentukan parameter berikut dalam Skrip Tindakan GitHub anda sebagai Pembolehubah Persekitaran:

  • ID Permohonan, seperti: WF_APPLICATION_ID:<your application id>
  • ID penyewa, seperti: WF_TENANT_ID:<your tenant id>

Tambah rahsia klien sebagai rahsia GitHub. Rujuknya dari dalam aliran kerja dengan menggunakan parameter seperti: client secret: ${{secrets.CLIENT_SECRET_GITHUB_ACTIONS}}

Tugas pembantu

Tugas pembantu berikut tersedia.

tindakan-pasang

Apabila aliran kerja GitHub Actions memaksa pemasangan CLI Power Platform dalam konteks runner, dan ralat tamat masa berlaku, gunakan versi 1 (@v1) dengan tindakan tambahan (actions-install) seperti yang ditunjukkan dalam contoh berikut.

Penting

  • Menggunakan versi 1 (@v1) mungkin membawa kepada kemas kini pada tindakan GitHub sedia ada yang boleh menyebabkan aliran kerja semasa dikemas kini.
  • Tambah tugasan Pasang Power Platform Tools sebagai tugasan pertama dalam aliran kerja anda sebelum mana-mana GitHub Actions untuk Power Platform yang lain.
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'

Anda boleh mendapatkan lebih banyak contoh GitHub Actions di Power Platform Actions.

whoAmI

Sahkan sambungan perkhidmatan dengan menyambung ke perkhidmatan dan menghantar permintaan WhoAmI [SDK/API Web]. Tugas ini berguna untuk dimasukkan awal dalam aliran kerja GitHub anda bagi mengesahkan sambungan sebelum pemprosesan bermula.

Parameter Penerangan
url-persekitaran URL untuk persekitaran yang anda sambungkan.
nama-pengguna Nama pengguna akaun yang anda guna untuk disambungkan.
rahsia-kata laluan Kata laluan untuk nama pengguna. Tentukan kata laluan GitHub dalam Tetapan di bawah Rahsia. Anda tidak boleh mendapatkan semula rahsia selepas anda mentakrif dan menyimpannya.
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.

Tugas penyelesaian

Tugas ini melaksanakan tindakan terhadap penyelesaian dan memasukkan perkara berikut.

import-penyelesaian

Imports penyelesaian ke dalam persekitaran sasaran.

Parameter Penerangan
url-persekitaran (Diperlukan) URL untuk persekitaran sasaran yang anda mahu import penyelesaian (contohnya, https://YourOrg.crm.dynamics.com).
nama-pengguna (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
rahsia-kata laluan (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
fail-penyelesaian (Diperlukan) Laluan dan nama fail penyelesaian yang anda mahu import.
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.

eksport-penyelesaian

Export penyelesaian daripada persekitaran sumber.

Parameter Penerangan
url-persekitaran (Diperlukan) URL untuk persekitaran sasaran yang anda mahu eksport penyelesaian (contohnya, https://YourOrg.crm.dynamics.com).
nama-pengguna (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
rahsia-kata laluan (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, kata laluan untuknama pengguna. Tentukan kata laluan GitHub dalam Tetapan di bawah Rahsia. Anda tidak boleh mendapatkan semula rahsia selepas anda mentakrif dan menyimpannya.
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.
nama-penyelesaian (Diperlukan) Nama penyelesaian untuk dieksport. Sentiasa gunakan nama penyelesaian, bukannya nama paparan.
Fail-output-penyelesaian (Diperlukan) Laluan dan nama fail penyelesaian.zip untuk dieksport ke dalam persekitaran sasaran.
terurus (Diperlukan) Ditetapkan ke benar untuk mengeksport sebagai penyelesaian terurus; (palsu) lalai adalah untuk mengeksport sebagai penyelesaian tidak terurus.

buka-penyelesaian

Mengambil fail penyelesaian termampat dan menguraikannya menjadi beberapa fail XML. Anda boleh membaca dan mengurus fail-fail ini dengan lebih mudah dalam sistem kawalan sumber.

Parameter Penerangan
fail-penyelesaian (Diperlukan) Laluan dan nama fail bagi fail solution.zip file untuk dibuka.
folder-penyelesaian (Diperlukan) Folder laluan dan sasaran di mana anda ingin membuka penyelesaian.
jenis-penyelesaian (Diperlukan) Jenis penyelesaian yang anda mahu buka. Pilihan termasuk Tidak terurus (disyorkan), Terurus dan Kedua-duanya.

pek-penyelesaian

Membungkus penyelesaian yang diwakili dalam kawalan sumber ke dalam fail solution.zip yang boleh anda import ke persekitaran lain.

Parameter Penerangan
fail-penyelesaian (Diperlukan) Laluan dan nama fail solution.zip untuk membungkus penyelesaian (contohnya, out/CI/ALMLab.zip).
folder-penyelesaian (Diperlukan) Laluan dan folder sumber penyelesaian untuk dipek.
jenis-penyelesaian (Pilihan) Jenis penyelesaian untuk dibungkus. Pilihan termasuk Tidak terurus (disyorkan), Terurus dan Kedua-duanya.

terbitkan-penyelesaian

Menerbitkan penyesuaian penyelesaian.

Parameter Penerangan
url-persekitaran (Diperlukan) URL untuk persekitaran yang anda ingin terbitkan penyelesaian di dalamnya (contohnya, https://YourOrg.crm.dynamics.com).
nama-pengguna (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
rahsia-kata laluan (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
fail-penyelesaian (Diperlukan) Laluan dan nama fail penyelesaian yang anda mahu import.
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.

klonkan-penyelesaian

Klonkan penyelesaian untuk persekitaran yang diberikan.

Parameter Penerangan
url-persekitaran (Diperlukan) URL untuk persekitaran yang anda ingin klonkan penyelesaian daripadanya (contohnya, https://YourOrg.crm.dynamics.com).
nama-pengguna (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
rahsia-kata laluan (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
fail-penyelesaian (Diperlukan) Laluan dan nama fail penyelesaian yang anda mahu import.
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.
nama-penyelesaian (Diperlukan) Laluan dan nama fail penyelesaian.zip yang diperlukan untuk diklon (contohnya, out/CI/ALMLab.zip).
versi-penyelesaian Versi penyelesaian untuk diklon.
folder-sasaran Folder sasaran untuk menempatkan penyelesaian yang diekstrak. (contohnya, repositori Git\tfolder-penyelesaian-sasaran).
direktori-kerja Folder sementara untuk artifak kerja sedang berlaku diperlukan untuk pengklonan penyelesaian.
lala: root of the repository

semak-penyelesaian

Semak fail penyelesaian untuk mengesan percanggahan.

Parameter Penerangan
url-persekitaran (Diperlukan) URL untuk persekitaran yang anda ingin klonkan penyelesaian daripadanya (contohnya, https://YourOrg.crm.dynamics.com).
nama-pengguna (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
rahsia-kata laluan (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.
laluan (Diperlukan) Laluan dan nama fail penyelesaian yang anda ingin semak.
geo Lokasi geo bagi perkhidmatan Penyemak Microsoft Power Platform untuk digunakan. Nilai lalai ialah 'amerika syarikat'.
ganti-tahap-peraturan Laluan ke fail yang mengandungi jujukan JSON bagi peraturan dan tahap mereka. Nilai yang diterima adalah: Kritikal, Tinggi, Rendah dan Bermaklumat. Contoh: [{"Id":"meta-remove-dup-reg","OverrideLevel":"Medium"},{"Id":"il-avoid-specialized-update-ops","OverrideLevel":"Medium"}]
nama-artifak-log-penyemak Nama folder artifak yang log penyemak Microsoft Power Platform akan dimuat naik. Nilai lalai ialah 'CheckSolutionLogs'.

naik taraf-penyelesaian

Meningkatkan penyelesaian.

Parameter Penerangan
url-persekitaran (Diperlukan) URL untuk persekitaran yang anda ingin klonkan penyelesaian daripadanya (contohnya, https://YourOrg.crm.dynamics.com).
nama-pengguna (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
rahsia-kata laluan (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
fail-penyelesaian (Diperlukan) Laluan dan nama fail penyelesaian yang anda mahu import.
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.
nama-penyelesaian (Diperlukan) Nama penyelesaian untuk dinaik taraf.
tak segerak Naik taraf penyelesaian secara tak segerak.
masa-tunggu-tak segerak-maks Masa tunggu tak segerak maksimum dalam minit. Nilai lalai ialah 60 minit.

Tugas pakej

Tugas-tugas ini melaksanakan tindakan terhadap pakej.

laksanakan-pakej

Menyebarkan DLL pakej atau fail ZIP bersama pakej.

Nota

Tindakan ini hanya disokong di Windows.

Parameter Penerangan
url-persekitaran (Diperlukan) URL untuk persekitaran yang anda ingin klonkan penyelesaian daripadanya (contohnya, https://YourOrg.crm.dynamics.com).
nama-pengguna (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
rahsia-kata laluan (Diperlukan) Jika anda menggunakan pengesahan nama pengguna/kata laluan, nama pengguna akaun yang anda gunakan untuk bersambung.
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.
pakej (Diperlukan) Laluan ke fail DLL atau ZIP pakej bersama pakej.

Tugas portal

Tugasan ini melaksanakan tindakan berikut terhadap Power Pages.

muat naik-paportal

Memuat naik data ke Power Pages.

Parameter Penerangan
url-persekitaran (Diperlukan) URL untuk persekitaran yang anda ingin import penyelesaian ke dalamnya (contohnya, https://YourOrg.crm.dynamics.com).
id-aplikasi ID aplikasi untuk penentusahan dengan, Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
rahsia-pelanggan Rahsia pelanggan yang digunakan untuk mengesahkan saluran paip GitHub. Parameter ini diperlukan apabila mengesahkan dengan kelayakan Utama Perkhidmatan.
id-penyewa Menggunakan ID penyewa apabila mengesahkan app-id dan client-secret.
laluan muat naik Laluan: yang mana kandungan tapak web akan disimpan (alias: -p).
profil pelaksanaan Muat naik data portal dengan butiran persekitaran yang ditakrifkan melalui pemboleh ubah profil dalam deployment-profiles/[profile-name].deployment.yaml file.
Versi model Menunjukkan sama ada data tapak yang hendak dimuat naik menggunakan model data standard (1) atau enhanced ().2 Nilai lalai ialah 1.

Ketahui lebih lanjut mengenai Microsoft Power Platform sokongan CLI untuk Power Pages.

Tugas katalog (pratonton)

Tugas-tugas ini melaksanakan tindakan terhadap katalog dalam Power Platform.

Nota

Pada masa ini, tugasan katalog untuk Power Platform sedang dalam pratonton.

pasang

Pasang item katalog ke persekitaran sasaran.

Parameter Penerangan
katalog-item-id (Diperlukan) Item katalog untuk dipasang pada persekitaran sasaran.
sasaran-url (Diperlukan) URL persekitaran sasaran untuk pemasangan item katalog (contohnya, https://YourOrg.crm.dynamics.com).
seting (Diperlukan) Tetapan pakej masa jalan untuk rangka kerja pemasangan untuk dilaksanakan. Format rentetan mestilah key=value|key=value.
Versi sasaran Versi sasaran untuk dipasang. Jika anda tidak menentukan versi, versi yang diterbitkan akan dipilih.
Status undian Tinjauan pendapat untuk menyemak status permintaan anda.

serah

Senaraikan semua item katalog yang diterbitkan daripada persekitaran semasa Dataverse (organisasi).

Parameter Penerangan
laluan (Diperlukan) Laluan ke dokumen penyerahan katalog.
pakej-zip Laluan ke fail zip pakej.
penyelesaian-zip Laluan ke fail zip penyelesaian.
Status undian Tinjauan pendapat untuk menyemak status permintaan anda.

status

Dapatkan status permintaan pemasangan atau penghantaran katalog.

Parameter Penerangan
ID penjejakan (Diperlukan) Minta ID penjejakan.
jenis (Diperlukan) Jenis permintaan. Nilai yang sah ialah Install dan Submit.

Menganggu aliran kerja GitHub

Untuk mengetahui lebih lanjut tentang cara menyusun aliran kerja GitHub menggunakan GitHub Actions, lengkapkan makmal GitHub Actions untuk Microsoft Power Platform.

Untuk maklumat lanjut, lihat Tentang GitHub Actions.

Lihat Juga

Tindakan GitHub untuk Microsoft Power Platform