Bagikan melalui


Tindakan GitHub yang Tersedia untuk pengembangan Microsoft Power Platform

Tindakan GitHub untuk Microsoft Power Platform dijelaskan pada bagian berikut. Selain itu, contoh alur kerja GitHub juga ditampilkan. Untuk informasi lebih lanjut tentang Tindakan GitHub dan cara mengunduhnya, buka Tindakan GitHub Microsoft Power Platform.

Konfigurasikan kredensial yang akan digunakan dengan Tindakan GitHub dengan Microsoft Power Platform

Banyak tindakan mengharuskan Anda menyambung ke lingkungan Microsoft Dataverse. Anda dapat menambahkan kredensial utama layanan atau pengguna sebagai rahasia dalam penyimpanan penyimpanan GitHub, lalu menggunakannya dalam alur kerja.

  • Untuk rincian tentang cara mengkonfigurasi rahasia di GitHub, lihat rahasia dienkripsi

  • Untuk rincian cara mengkonfigurasi otentikasi utama layanan untuk Microsoft Power Platform, lihat alat Build DevOps

Setelah dikonfigurasi, Anda dapat menghubungi Pokok Layanan dari dalam skrip Tindakan.

Parameter untuk ditentukan dalam Skrip Tindakan GitHub sebagai Variabel Lingkungan:

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

Rahasia klien harus ditambahkan dan disimpan sebagai Rahasia GitHub, dan akan direferensikan dari dalam alur kerja menggunakan parameter seperti: client secret: ${{secrets.CLIENT_SECRET_GITHUB_ACTIONS}}

Tugas pembantu

Tugas pembantu yang tersedia dijelaskan di bawah ini.

tindakan-instal

Ketika alur kerja GitHub Actions memaksa penginstalan Power Platform CLI dalam konteks runner, dan terjadi kesalahan batas waktu, maka Anda harus menggunakan versi 1 (@v1) dengan tindakan tambahan (actions-install) seperti di bawah ini.

Penting

  • Menggunakan versi 1 (@v1) dapat menyebabkan pembaruan pada tindakan GitHub yang ada yang dapat mengakibatkan alur kerja saat ini diperbarui.
  • Anda harus menambahkan tugas Instal Power Platform Alat sebagai tugas pertama dalam alur kerja Anda sebelum Tindakan GitHub lainnya Power Platform.
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 dapat menemukan sampel tambahan GitHub Actions at Power Platform Actions.

whoAmI

Memverifikasi sambungan layanan dengan menyambung ke layanan dan mengirim permintaan WhoAmI [SDK/web api]. Tugas ini dapat berguna untuk dicakup sejak awal di alur kerja GitHubAnda, untuk memverifikasi konektivitas sebelum pemrosesan dimulai.

Parameter KETERANGAN
environment-url URL untuk lingkungan yang Anda sambungkan.
user-name Nama pengguna akun yang Anda gunakan untuk terhubung.
password-secret Kata sandi untuk nama pengguna. Kata sandi GitHub ditentukan dalam pengaturan dalam rahasia. Anda tidak dapat mengambil rahasia setelah didefinisikan dan disimpan.
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.

Tugas solusi

Tugas ini melakukan tindakan terhadap solusi dan mencakup hal berikut ini.

Impor Solusi

Mengimpor solusi ke lingkungan target.

Parameter KETERANGAN
environment-url (Wajib) URL untuk lingkungan target yang akan diimpor solusinya ke dalam (misalnya, https://YourOrg.crm.dynamics.com).
user-name (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, nama pengguna akun yang Anda gunakan untuk terhubung.
password-secret (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, kata sandi akun yang Anda gunakan untuk terhubung.
solution-file (Wajib) Jalur dan nama file solusi yang akan diimpor.
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.

export-solution

Mengekspor solusi dari lingkungan sumber.

Parameter KETERANGAN
environment-url (Wajib) URL untuk lingkungan yang akan diekspor solusinya dari (misalnya, https://YourOrg.crm.dynamics.com).
user-name (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, nama pengguna akun yang Anda gunakan untuk terhubung.
password-secret (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, kata sandi untuk nama pengguna. Kata sandi GitHub ditentukan dalam pengaturan dalam rahasia. Anda tidak dapat mengambil rahasia setelah didefinisikan dan disimpan.
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.
solution-name (Diperlukan) Nama solusi yang akan diekspor. Selalu gunakan nama solusi, bukan nama tampilan.
solution-output-file (wajib) Jalur dan nama file dari file Solution.zip untuk diekspor lingkungan sumbernya.
terkelola (Wajib) Diatur ke benar untuk mengekspor sebagai solusi terkelola; (salah) default adalah ekspor sebagai solusi yang tidak terkelola.

unpack-solution

Memerlukan file solusi terkompresi dan menguraikannya menjadi beberapa file XML sehingga file ini dapat lebih mudah dikelola oleh sistem kontrol sumber.

Parameter KETERANGAN
solution-file (Diperlukan) Jalur dan nama file dari file solution.zip untuk dibongkar.
solution-folder (Diperlukan) Folder jalur dan target yang akan Anda gunakan untuk membongkar solusi.
solution-type (Diperlukan) Jenis solusi yang ingin Anda bongkar. Pilihan mencakup: Tidak terkelola (disarankan), Terkelola, dan Keduanya.

pack-solution

Mengemas solusi yang diwakili dalam kontrol sumber ke dalam file Solution.zip yang dapat diimpor ke lingkungan lain.

Parameter KETERANGAN
solution-file (Wajib) Jalur dan nama file dari file solution.zip untuk mengemas solusi ke (misalnya, out/CI/ALMLab.zip).
solution-folder (Diperlukan) Folder jalur dan sumber solusi untuk dikemas.
solution-type (Opsional) Jenis solusi untuk dikemas. Pilihan mencakup: Tidak terkelola (disarankan), Terkelola, dan Keduanya.

publish-solution

Mempublikasikan penyesuaian solusi.

Parameter KETERANGAN
environment-url (Wajib) URL untuk lingkungan yang akan diterbitkan solusinya ke dalam (misalnya, https://YourOrg.crm.dynamics.com).
user-name (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, nama pengguna akun yang Anda gunakan untuk terhubung.
password-secret (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, kata sandi akun yang Anda gunakan untuk terhubung.
solution-file (Wajib) Jalur dan nama file solusi yang akan diimpor.
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.

clone-solution

Mengkloning solusi untuk lingkungan tertentu.

Parameter KETERANGAN
environment-url (Wajib) URL untuk lingkungan yang akan dikloning solusinya dari (misalnya, https://YourOrg.crm.dynamics.com).
user-name (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, nama pengguna akun yang Anda gunakan untuk terhubung.
password-secret (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, kata sandi akun yang Anda gunakan untuk terhubung.
solution-file (Wajib) Jalur dan nama file solusi yang akan diimpor.
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.
solution-name (Wajib) Jalur dan nama file solution.zip yang diperlukan untuk kloning (contoh: out/CI/ALMLab.zip).
solution-version Versi Solusi yang hendak dikloning.
target-folder Folder target untuk menempatkan solusi yang diekstrak. (misalnya, penyimpanan Git\target-solution-folder).
Working-directory Folder sementara untuk pekerjaan artefak yang sedang berlangsung yang diperlukan untuk mengkloning solusi.
default: root of the repository

check-solution

Memeriksa file solusi untuk mendeteksi inkonsistensi.

Parameter KETERANGAN
environment-url (Wajib) URL untuk lingkungan yang akan dikloning solusinya dari (misalnya, https://YourOrg.crm.dynamics.com).
user-name (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, nama pengguna akun yang Anda gunakan untuk terhubung.
password-secret (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, kata sandi akun yang Anda gunakan untuk terhubung.
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.
path (Wajib) Jalur dan nama file solusi yang akan diperiksa.
geo Lokasi geo mana dari layanan Pemeriksa Microsoft Power Platform yang akan digunakan. Nilai default adalah 'amerika serikat'.
rule-level-override Jalur untuk memberkas rangkaian aturan berisi larik JSON dan tingkat mereka. Nilai yang disetujui adalah: Penting, Tinggi, Rendah, dan Informasi. Misalnya: [{"Id":"meta-remove-dup-reg","OverrideLevel":"Medium"},{"Id":"il-avoid-specialized-update-ops","OverrideLevel":"Medium"}]
checker-logs-artifact-name Nama folder artefak yang akan diunggah log pemeriksa Microsoft Power Platform nya. Nilai default-nya adalah 'CheckSolutionLogs'.

upgrade-solution

Memberikan kemampuan untuk meningkatkan solusi.

Parameter KETERANGAN
environment-url (Wajib) URL untuk lingkungan yang akan dikloning solusinya dari (misalnya, https://YourOrg.crm.dynamics.com).
user-name (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, nama pengguna akun yang Anda gunakan untuk terhubung.
password-secret (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, kata sandi akun yang Anda gunakan untuk terhubung.
solution-file (Wajib) Jalur dan nama file solusi yang akan diimpor.
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.
solution-name (wajib) Nama Solusi yang ditingkatkan.
async Meningkatkan solusi secara asinkron.
max-async-wait-time Waktu tunggu asinkron maksimum dalam menit. Nilai default adalah 60 menit.

Tugas paket

Tugas ini melakukan tindakan terhadap paket dan mencakup yang berikut.

deploy-package

Memberikan kemampuan untuk menyebarkan paket dll atau file zip dengan paket.

Catatan

Tindakan ini hanya didukung di Windows.

Parameter Description
environment-url (Wajib) URL untuk lingkungan yang akan dikloning solusinya dari (misalnya, https://YourOrg.crm.dynamics.com).
user-name (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, nama pengguna akun yang Anda gunakan untuk terhubung.
password-secret (Wajib) Jika Anda menggunakan autentikasi nama pengguna/kata sandi, kata sandi akun yang Anda gunakan untuk terhubung.
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.
package (Wajib) jalur ke dll paket atau file zip dengan paket.

Tugas portal

Tugas ini melakukan tindakan berikut terhadap Power Pages.

upload-paportal

Mengunggah data ke Power Pages.

Parameter Description
environment-url (Wajib) URL untuk lingkungan yang akan diimpor solusinya ke dalam (misalnya, https://YourOrg.crm.dynamics.com).
app-id ID aplikasi untuk mengautentikasi. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
Rahasia klien Rahasia klien yang digunakan untuk mengautentikasi alur GitHub. Parameter ini diperlukan saat mengautentikasi dengan kredensial Pokok layanan.
ID Penyewa ID penyewa saat mengotentikasi dengan app-id dan client-secret.
upload-path Jalur tempat konten situs web disimpan (alias: -p).
deployment-profile Mengunggah data portal dengan rincian lingkungan yang ditentukan melalui variabel profil pada file deployment-profiles/[profile-name].deployment.yaml.
Versi model Menunjukkan apakah data situs yang akan diunggah akan menggunakan model data standar (1) atau disempurnakan2(). Nilai defaultnya adalah '1'.

Pelajari lebih lanjut tentang Microsoft Power Platform dukungan CLI untuk Power Pages.

Tugas katalog (pratinjau)

Tugas ini melakukan tindakan terhadap katalog di Power Platform dan menyertakan yang berikut ini.

Catatan

Saat ini, tugas katalog untuk Power Platform adalah rilis pratinjau .

instal

Menginstal item katalog ke lingkungan target.

Parameter Description
katalog-item-id (Wajib) Item katalog yang akan diinstal pada lingkungan target.
target-url (Wajib) Url lingkungan target untuk penginstalan item katalog ke dalam (misalnya, "https://YourOrg.crm.dynamics.com").
pengaturan (Wajib) Pengaturan paket runtime untuk kerangka kerja instalasi untuk dijalankan. Format string harus key=value|key=value.
Versi target Targetkan versi untuk diinstal. Jika dibiarkan kosong, versi yang dipublikasikan dipilih.
Status jajak pendapat Polling untuk memeriksa status permintaan Anda.

kirim

Cantumkan semua item katalog yang diterbitkan dari lingkungan saat ini Dataverse (organisasi).

Parameter Description
path (Wajib) Jalur ke dokumen pengiriman katalog.
paket-zip Jalur ke file zip paket.
solusi-zip Jalur untuk file zip solusi.
Status jajak pendapat Polling untuk memeriksa status permintaan Anda.

status

Dapatkan status permintaan penginstalan/pengiriman katalog.

Parameter Description
ID pelacakan (Wajib) Minta id pelacakan.
jenis (Wajib) Jenis permintaan (Nilai: Instal, Kirim)

Penulisan alur kerja GitHub

Untuk mempelajari lebih lanjut tentang menulis alur kerja GitHub menggunakan tindakan GitHub, lengkapi Tindakan GitHub untuk lab Microsoft Power Platform.

Informasi selengkapnya: Tentang Tindakan GitHub

Lihat Juga

Tindakan GitHub untuk Microsoft Power Platform