Поділитися через


Доступні дії GitHub для розробки Microsoft Power Platform

Дії для Microsoft Power Platform GitHub описані в наступних розділах. Крім того, також показані приклади робочих процесів на GitHub. Для отримання додаткової інформації про дії GitHub Actions і про те, як їх завантажити, перейдіть до Дій GitHub для Microsoft Power Platform.

Налаштуйте облікові данні для використання зі справами GitHub з Microsoft Power Platform

Для багатьох справ потрібно, щоб ви підключилися до середовища Microsoft Dataverse. Ви можете додати облікові дані принципала служби або користувача, як приховані елементи в своєму репозиторії GitHub, після чого їх можна буде використовувати в робочих циклах.

  • Докладніше про те, як налаштовувати секрети в GitHub див. у розділі Зашифровані секрети

  • Докладніше про те, як налаштувати автентифікацію принципала служби для Microsoft Power Platform, див. у розділі DevOps Build tools

Після налаштування ви зможете викликати принципала служби в своїх сценаріях справ.

Параметри, які слід визначити в сценарії справи GitHub як зміні середовища:

  • Ідентифікатор програми, наприклад: WF_APPLICATION_ID:<your application id>
  • Ідентифікатор програми, наприклад: WF_TENANT_ID:<your tenant id>

Секрет клієнта додається й зберігається як секрет GitHub. Після цього на нього можуть налаштовуватися посилання із середини робочого циклу з використанням такого параметра, який наведено далі: client secret: ${{secrets.CLIENT_SECRET_GITHUB_ACTIONS}}

Завдання помічника

Доступне допоміжне завдання описано нижче.

дії-встановити

Коли робочий процес GitHub Actions змушує встановити Power Platform CLI в контексті бігуна, і виникає помилка тайм-ауту, то ви повинні використовувати версію 1 (@v1) з додатковою дією (actions-install), як показано нижче.

Важливо

  • Використання версії 1 (@v1) може призвести до оновлення існуючих дій GitHub, що може призвести до оновлення поточних робочих процесів.
  • Ви повинні додати завдання «Встановити інструменти» Power Platform як перше завдання у вашому робочому процесі перед будь-якими іншими діями GitHub для 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'

Ви можете знайти додаткові приклади дій GitHub у Power Platform розділі Дії.

whoAmI

Перевіряє підключення до послуги способом з’єднання з послугою та надсилання запиту пакету SDK WhoAmI [далі – «пакет SDK»/Web API]. Це завдання варто включати на ранньому етапі циклу GitHub для перевірки з’єднання, перш ніж почнеться обробка.

Параметр Опис
environment-url URL-адреса середовища, до якого ви підключаєтесь.
user-name Ім'я користувача облікового запису, що використовується для підключення.
password-secret Пароль для імені користувача. Паролі GitHub визначаються в меню Параметри розділу Таємні. Після визначення та збереження секрету його не можна витягнути.
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.

Завдання рішення

Ці завдання виконують дії з рішеннями і містять таке.

import-solution

Імпортує рішення до цільового середовища.

Параметр Опис
environment-url (Обов'язково) URL-адреса для цільового середовища, до якого потрібно імпортувати рішення (наприклад, https://YourOrg.crm.dynamics.com).
user-name (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, ім'я користувача облікового запису, з яким ви підключаєтесь..
password-secret (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, пароль від облікового запису, з яким ви підключаєтесь.
solution-file (Обов’язково) Шлях та ім'я файлу рішення, який ви бажаєте імпортувати.
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.

export-solution

Експортує рішення з вихідного середовища.

Параметр Опис
environment-url (Обов'язково) URL-адреса для середовища, з якого потрібно експортувати рішення (наприклад, https://YourOrg.crm.dynamics.com).
user-name (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, ім'я користувача облікового запису, з яким ви підключаєтесь..
password-secret (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, пароль для user-name. Паролі GitHub визначаються в меню Параметри розділу Таємні. Після визначення та збереження секрету його не можна витягнути.
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.
solution-name (Обов'язково) Назва рішення, яке необхідно експортувати. Завжди використовуйте Ім’я рішення, а не його Коротке ім’я.
solution-output-file (Обов’язково) Шлях та ім’я файлу solution.zip, до якого передбачається експортувати вихідне середовище.
керовані (Обов'язково) Установіть значення true, щоб експортувати як кероване рішення; за замовчуванням (false) експортується як некероване рішення.

unpack-solution

Береться стиснений файл рішення, потім розпакується з отриманням кількох файлів XML, які легше прочитати та якими легше керувати системі керування вхідним кодом.

Параметр Опис
solution-file (Обов'язково) Ім’я шляху та ZIP-файлу рішення, яке потрібно розпакувати.
solution-folder (Обов'язково) Шлях і папка призначення, до якої потрібно розпакувати рішення.
solution-type (Обов'язково) Тип рішення, яке потрібно розпакувати. Параметри включають: Некероване (рекомендовано), Кероване і Обидва.

pack-solution

Пакує рішення, представлене у системі керування вхідним кодом, у ZIP-файл рішення, який можна імпортувати до іншого середовища.

Параметр Опис
solution-file (Обов'язково) Шлях та ім'я файлу solution.zip. до якого потрібно упакувати рішення (наприклад, out/CI/ALMLab.zip).
solution-folder (Обов'язково) Шлях і вихідна папка рішення для пакування.
solution-type (Обов'язково) Тип рішення для пакування. Параметри включають: Некероване (рекомендовано), Кероване і Обидва.

publish-solution

Публікує настроювання рішення.

Параметр Опис
environment-url (Обов’язково) URL-адреса середовища, в якому ви бажаєте опублікувати рішення (наприклад, https://YourOrg.crm.dynamics.com).
user-name (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, ім'я користувача облікового запису, з яким ви підключаєтесь..
password-secret (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, пароль від облікового запису, з яким ви підключаєтесь.
solution-file (Обов’язково) Шлях та ім'я файлу рішення, який ви бажаєте імпортувати.
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.

clone-solution

Клонує рішення для певного середовища.

Параметр Опис
environment-url (Обов'язково) URL-адреса для середовища, з якого потрібно клонувати рішення (наприклад, https://YourOrg.crm.dynamics.com).
user-name (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, ім'я користувача облікового запису, з яким ви підключаєтесь..
password-secret (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, пароль від облікового запису, з яким ви підключаєтесь.
solution-file (Обов’язково) Шлях та ім'я файлу рішення, який ви бажаєте імпортувати.
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.
solution-name (Обов’язково) Шлях та ім’я файлу solution.zip, необхідного для клонування (наприклад, out/CI/ALMLab.zip).
solution-version Версія рішення для клонування.
target-folder Цільова папка, в якій необхідно розмістити витягнене рішення. (наприклад, репозиторій Git\target-solution-folder).
Working-directory Тимчасова папка для артефактів незавершеної роботи, необхідних для клонування рішення.
за промовчанням: root of the repository

check-solution

Перевіряє файл рішення на наявність невідповідності.

Параметр Опис
environment-url (Обов'язково) URL-адреса для середовища, з якого потрібно клонувати рішення (наприклад, https://YourOrg.crm.dynamics.com).
user-name (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, ім'я користувача облікового запису, з яким ви підключаєтесь..
password-secret (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, пароль від облікового запису, з яким ви підключаєтесь.
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.
path (Обов’язково) Шлях та ім'я файлу рішення, який ви бажаєте перевірити.
geo Це географічне розташування служби перевірки Microsoft Power Platform, яку передбачається використовувати. За промовчанням використовується значення «сполучені штати».
rule-level-override Шлях до файлу, який містить масив правил JSON і їхні рівні. Прийняті значення наведено далі: критичне, високе, низьке та інформаційне. Приклад: [{ «Id»:«meta-remove-dup-reg», «OverrideLevel»: «Середній», }{ «Id»:«il-avoid-update-ops», «OverrideLevel»: «Середній» }]
checker-logs-artifact-name Ім’я папки з артефактами, для якої завантажуватимуться журнали засобу перевірки Microsoft Power Platform. Значенням за промовчанням є «CheckSolutionLogs».

upgrade-solution

Надає можливість оновлювати рішення.

Параметр Опис
environment-url (Обов'язково) URL-адреса для середовища, з якого потрібно клонувати рішення (наприклад, https://YourOrg.crm.dynamics.com).
user-name (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, ім'я користувача облікового запису, з яким ви підключаєтесь..
password-secret (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, пароль від облікового запису, з яким ви підключаєтесь.
solution-file (Обов’язково) Шлях та ім'я файлу рішення, який ви бажаєте імпортувати.
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.
solution-name (Обов'язково) Ім’я рішення для оновлення.
async Оновлює рішення асинхронно.
max-async-wait-time Максимальний асинхронний час очікування в хвилинах. Значенням за промовчанням є 60 хвилин.

Завдання пакета

Ці завдання виконують справи з пакетами та включають наведені далі.

deploy-package

Надає можливість розгортання пакетної dll або файлу zip разом із пакетом.

Нотатка

Ця справа підтримується лише у Windows.

Параметр Опис
environment-url (Обов'язково) URL-адреса для середовища, з якого потрібно клонувати рішення (наприклад, https://YourOrg.crm.dynamics.com).
user-name (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, ім'я користувача облікового запису, з яким ви підключаєтесь..
password-secret (Обов'язково) Якщо ви використовуєте автентифікацію за іменем і паролем користувача, пароль від облікового запису, з яким ви підключаєтесь.
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.
пакет (Обов’язково) Шлях до бібліотеки DLL пакета або файлу zip разом із пакетом.

Завдання порталу

Ці завдання виконують наведені нижче дії з Power Pages.

upload-paportal

Передає дані до Power Pages.

Параметр Опис
environment-url (Обов’язково) URL-адреса середовища, до якого потрібно імпортувати рішення (наприклад, https://YourOrg.crm.dynamics.com).
app-id Ідентифікатор програми для автентифікації. Це параметр обов’язково при перевірці облікових даних Принципала служби.
client-secret Секрет клієнта, який використовується для автентифікації воронки продажів GitHub. Це параметр обов’язково при перевірці облікових даних Принципала служби.
tenant-id Це ідентифікатор клієнта під час автентифікації за допомогою app-id та client-secret.
upload-path Шлях, за яким буде збережено вміст (alias: -p).
deployment-profile Передайте дані порталу з відомостями про середовище, визначеними через змінні профілю у файлі deployment-profiles/[profile-name].deployment.yaml.
модель-версія Указує, чи використовуватимуться дані сайту, які потрібно завантажити, стандартна (1) або розширена модель даних(2). За замовчуванням використовується значення ’1’.

Дізнайтеся більше про Microsoft Power Platform підтримку CLI для Power Pages.

Завдання каталогу (підготовча версія)

Ці завдання виконують дії проти каталогу в Power Platform і включають в себе наступне.

Нотатка

На даний момент завдання каталогу для Power Platform є підготовча версія.

Інсталювати

Інсталюйте елемент каталогу в цільовому середовищі.

Параметр Опис
Ідентифікатор товару каталогу (Обов’язково) Елемент каталогу для встановлення в цільовому середовищі.
target-url (Обов’язково) URL-адреса цільового оточення для встановлення елемента каталогу в (наприклад, ";)https://YourOrg.crm.dynamics.com".
настройки (Обов’язково) виконуваний пакет налаштувань для виконання інсталяційної структури. Формат рядка повинен бути key=value|key=value.
Цільова версія Цільова версія для встановлення. Якщо залишити поле порожнім, вибирається опублікована версія.
Статус опитування Проведіть опитування, щоб перевірити статус вашого запиту.

надіслати

Перерахуйте всі опубліковані позиції каталогу з поточного Dataverse середовища (організації).

Параметр Опис
path (Обов’язково) Шлях до документа подання каталогу.
Пакет-блискавка Шлях до ZIP-файлу пакета.
Рішення-блискавка Шлях до ZIP-файлу рішення.
Статус опитування Проведіть опитування, щоб перевірити статус вашого запиту.

status

Переглядайте стан запитів на інсталяцію або надсилання в каталог.

Параметр Опис
Ідентифікатор відстеження (Обов’язково) Ідентифікатор відстеження запиту.
тип (Обов’язково) Тип запиту (Значення: Встановити, Надіслати)

Створення робочих циклів GitHub

Докладніше про складання робочих циклів GitHub із використанням справ GitHub можна дізнатися, виконавши справи GitHub для лабораторій Microsoft Power Platform.

Додаткові відомості: Про дії GitHub

Статті за темою

Дії GitHub для Microsoft Power Platform