GitHub Actions disponibles pour le développement de Microsoft Power Platform
Les actions GitHub pour Microsoft Power Platform sont décrites dans les sections suivantes. En outre, des exemples de workflows GitHub sont également affichés. Pour plus d’informations sur les actions GitHub et comment les télécharger, accédez à Actions GitHub pour Microsoft Power Platform.
Configurer les informations d’identification à utiliser avec les actions GitHub avec Microsoft Power Platform
De nombreuses actions nécessitent que vous vous connectiez à un environnement Microsoft Dataverse. Vous pouvez ajouter des informations d’identification de principal de service ou d’utilisateur en tant que secrets dans votre référentiel GitHub, puis les utiliser dans vos workflows.
Pour plus de détails sur la configuration des secrets dans GitHub, consultez Secrets cryptés
Pour plus de détails sur la configuration de l’authentification du principal de service pour Microsoft Power Platform, voir Outils de création DevOps
Une fois configuré, vous pouvez appeler le principal du service à partir de vos scripts d’action.
Paramètres à définir dans votre script d’action GitHub comme Variables d’environnement :
- L’ID de l’application tel que
WF_APPLICATION_ID:<your application id>
- L’ID de client tel que
WF_TENANT_ID:<your tenant id>
La clé secrète client doit être ajoutée et stockée en tant que secret GitHub, et sera référencée à partir du workflow à l’aide d’un paramètre tel que : client secret: ${{secrets.CLIENT_SECRET_GITHUB_ACTIONS}}
Tâches d’aide
La tâche d’assistance disponible est décrite ci-dessous.
actions-install
Lorsqu’un workflow GitHub Actions force une installation de Power Platform CLI dans le contexte d’un exécuteur et qu’une erreur de délai d’expiration se produit, vous devez utiliser la version 1 (@v1) avec une action supplémentaire (actions-install
) comme ci-dessous.
Important
- L’utilisation de la version 1 (@v1) peut entraîner des mises à jour des GitHub Actions existantes, ce qui peut entraîner la mise à jour des workflows actuels.
- Vous devez ajouter la tâche Installer Power Platform Tools comme première tâche dans votre workflow avant toute autre GitHub Action pour 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'
Vous pouvez trouver des exemples supplémentaires de GitHub Actions dans Actions Power Platform.
whoAmI
Vérifie la connexion au service en se connectant au service et en envoyant une demande de [Kit de développement logiciel (SDK)/API web] WhoAmI
. Cette tâche peut être utile à inclure au début de votre workflow GitHub, pour vérifier la connectivité avant le début du traitement.
Paramètre | Description |
---|---|
environment-url | L’URL de l’environnement auquel vous souhaitez vous connecter. |
user-name | Le nom d’utilisateur du compte que vous utilisez pour vous connecter. |
password-secret | Mot de passe pour user-name. Les mots de passe GitHub sont définis dans Paramètres sous Secrets. Vous ne pouvez pas récupérer un secret une fois qu’il a été défini et enregistré. |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
ID de locataire | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
Tâches de solution
Ces tâches exécutent des opérations sur des solutions, et incluent ce qui suit :
importer la solution
Importe une solution dans un environnement cible.
Paramètre | Description |
---|---|
environment-url | (Obligatoire) URL de l’environnement cible dans lequel vous voulez importer la solution (par exemple, https://YourOrg.crm.dynamics.com ). |
user-name | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le nom d’utilisateur du compte que vous utilisez pour vous connecter. |
password-secret | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le mot de passe du compte que vous utilisez pour vous connecter. |
solution-file | (Obligatoire) Le chemin et le nom du fichier de solution que vous souhaitez importer. |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
ID de locataire | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
exporter la solution
Exporte une solution à partir d’un environnement source.
Paramètre | Description |
---|---|
environment-url | (Obligatoire) URL de l’environnement cible dans lequel vous voulez exporter la solution (par exemple, https://YourOrg.crm.dynamics.com ). |
user-name | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le nom d’utilisateur du compte que vous utilisez pour vous connecter. |
password-secret | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le mot de passe pour user-name. Les mots de passe GitHub sont définis dans Paramètres sous Secrets. Vous ne pouvez pas récupérer un secret une fois qu’il a été défini et enregistré. |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
ID de locataire | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
solution-name | (Obligatoire) Nom de la solution à exporter. Utilisez toujours le nom de la solution, pas son nom d’affichage. |
solution-output-file | (Obligatoire) Chemin d’accès et nom du fichier solution.zip vers lequel exporter l’environnement source. |
managed | (Obligatoire) Définissez sur vrai pour exporter en tant que solution gérée ; la valeur par défaut (faux) permet d’exporter en tant que solution non gérée. |
décompresser une solution
Prend un fichier de solution compressé et le décompose en plusieurs fichiers XML afin qu’ils puissent être plus facilement lus et gérés par un système de contrôle de code source.
Paramètre | Description |
---|---|
solution-file | (Obligatoire) Chemin d’accès et nom du fichier solution.zip à décompresser. |
solution-folder | (Obligatoire) Chemin d’accès et dossier cible dans lequel vous souhaitez décompresser la solution. |
solution-type | (Obligatoire) Type de solution à décompresser. Les options comprennent : Non géré (conseillé), Géré et Les deux. |
compresser une solution
Compresse une solution représentée dans le contrôle source dans un fichier solution.zip pouvant être importé dans un autre environnement.
Paramètre | Description |
---|---|
solution-file | (Obligatoire) Le chemin et le nom du fichier solution.zip contenant la solution (par exemple, out/CI/ALMLab.zip). |
solution-folder | (Obligatoire) Chemin d’accès et dossier source de la solution à compresser. |
solution-type | (Facultatif) Le type de solution à compresser. Les options comprennent : Non géré (conseillé), Géré et Les deux. |
publier la solution
Publie les personnalisations de solution.
Paramètre | Description |
---|---|
environment-url | (Obligatoire) URL de l’environnement dans lequel vous voulez publier la solution (par exemple, https://YourOrg.crm.dynamics.com ). |
user-name | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le nom d’utilisateur du compte que vous utilisez pour vous connecter. |
password-secret | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le mot de passe du compte que vous utilisez pour vous connecter. |
solution-file | (Obligatoire) Le chemin et le nom du fichier de solution que vous souhaitez importer. |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
ID de locataire | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
cloner la solution
Clone la solution pour un environnement donné.
Paramètre | Description |
---|---|
environment-url | (Obligatoire) URL de l’environnement cible dans lequel vous voulez cloner la solution (par exemple, https://YourOrg.crm.dynamics.com ). |
user-name | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le nom d’utilisateur du compte que vous utilisez pour vous connecter. |
password-secret | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le mot de passe du compte que vous utilisez pour vous connecter. |
solution-file | (Obligatoire) Le chemin et le nom du fichier de solution que vous souhaitez importer. |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
ID de locataire | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
solution-name | (Obligatoire) Le chemin et le nom du fichier solution.zip à cloner (par exemple, out/CI/ALMLab.zip). |
version de la solution | Version de la solution à cloner. |
dossier cible | Dossier cible dans lequel placer la solution extraite. (par exemple, référentiel Git\t dossier-solution-arget). |
Répertoire de travail | Dossier temporaire pour les artefacts de travail en cours nécessaires au clonage de la solution. par défaut : root of the repository |
vérificateur de solution
Vérifie le fichier de solution pour détecter les incohérences.
Paramètre | Description |
---|---|
environment-url | (Obligatoire) URL de l’environnement cible dans lequel vous voulez cloner la solution (par exemple, https://YourOrg.crm.dynamics.com ). |
user-name | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le nom d’utilisateur du compte que vous utilisez pour vous connecter. |
password-secret | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le mot de passe du compte que vous utilisez pour vous connecter. |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
ID de locataire | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
chemin | (Obligatoire) Le chemin et le nom du fichier de solution que vous souhaitez vérifier. |
geo | Quelle géolocalisation du service Vérificateur Microsoft Power Platform à utiliser. La valeur par défaut est « États-Unis ». |
règle-niveau-écraser | Chemin d’accès au fichier contenant un tableau JSON de règles et leurs niveaux. Les valeurs acceptées sont : Critique, Élevé, Faible et Informationnel. Exemple : [{« Id »:« meta-remove-dup-reg »,« OverrideLevel »:« Moyen »},{« Id »:« il-evid-specialized-update-ops »,« OverrideLevel »:« Moyen »}] |
checker-logs-nom-artefact | Le nom du dossier d’artefacts pour lequel les journaux du vérificateur Microsoft Power Platform seront téléchargés. La valeur par défaut est « CheckSolutionsLogs ». |
mise à niveau-solution
Offre la possibilité de mettre à niveau la solution.
Paramètre | Description |
---|---|
environment-url | (Obligatoire) URL de l’environnement cible dans lequel vous voulez cloner la solution (par exemple, https://YourOrg.crm.dynamics.com ). |
user-name | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le nom d’utilisateur du compte que vous utilisez pour vous connecter. |
password-secret | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le mot de passe du compte que vous utilisez pour vous connecter. |
solution-file | (Obligatoire) Le chemin et le nom du fichier de solution que vous souhaitez importer. |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
ID de locataire | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
solution-name | (Obligatoire) Nom de la solution à mettre à niveau. |
asynchrone | Met à niveau la solution de manière asynchrone. |
Délai d’attente maximal | Temps d’attente asynchrone maximum en minutes. La valeur par défaut est 60 minutes. |
Tâches de package
Ces tâches effectuent des actions sur les packages et incluent les éléments suivants.
Package de déploiement
Offre la possibilité d’afficher un package .dll ou .zip avec un package.
Note
Cette action n’est prise en charge que sous Windows.
Paramètre | Description |
---|---|
environment-url | (Obligatoire) URL de l’environnement cible dans lequel vous voulez cloner la solution (par exemple, https://YourOrg.crm.dynamics.com ). |
user-name | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le nom d’utilisateur du compte que vous utilisez pour vous connecter. |
password-secret | (Obligatoire) Si vous utilisez l’authentification par nom d’utilisateur/mot de passe, le mot de passe du compte que vous utilisez pour vous connecter. |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
ID de locataire | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
package | (Obligatoire) Chemin d’accès à un fichier dll ou zip avec un package. |
Tâches de portail
Ces tâches effectuent les actions suivantes sur les portails Power Pages.
upload-paportal
Télécharge des données vers Power Pages.
Paramètre | Description |
---|---|
environment-url | (Obligatoire) URL de l’environnement dans lequel vous voulez importer la solution (par exemple, https://YourOrg.crm.dynamics.com ). |
id d’application | L’ID d’application pour l’authentification. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
Clé secrète client | Le secret client utilisé pour authentifier le pipeline GitHub. Ce paramètre est obligatoire lors de l’authentification avec les informations d’identification du principal de service. |
tenant-id | L’ID du locataire lors de l’authentification avec app-id et client-secret . |
upload-path | Chemin où est stocké le contenu du site web (alias : -p). |
deployment-profile | Chargez les données du portail avec les détails de l′environnement définis par les variables de profil dans le fichier deployment-profiles/[profile-name].deployment.yaml. |
model-version | Indique si les données du site à charger utiliseront le modèle de données standard (1 ) ou amélioré (2 ). La valeur par défaut est « 1 ». |
En savoir plus sur le Support Microsoft Power Platform CLI pour Power Pages.
Tâches du catalogue (version préliminaire)
Ces tâches exécutent des actions sur le catalogue dans Power Platform et incluent ce qui suit :
Note
Actuellement, les tâches du catalogue pour Power Platform sont une version préliminaire.
install
Installez un élément de catalogue dans l’environnement cible.
Paramètre | Description |
---|---|
catalog-item-id | (Obligatoire) Élément du catalogue à installer dans l’environnement cible. |
target-url | (Obligatoire) URL de l’environnement cible pour l’installation de l’élément du catalogue (par exemple, « https://YourOrg.crm.dynamics.com" »). |
settings | (Obligatoire) Paramètres du package d’exécution pour l’infrastructure d’installation à exécuter. Le format de la chaîne doit être key=value|key=value . |
target-version | Version cible à installer. Si cette option est laissée vide, la version publiée est sélectionnée. |
poll-status | Interrogez pour vérifier le statut de votre demande. |
submit
Répertoriez tous les éléments du catalogue publiés à partir de l’environnement Dataverse actuel (organisation).
Paramètre | Description |
---|---|
path | (Obligatoire) Chemin d’accès au document d’envoi du catalogue. |
package-zip | Chemin d’accès au fichier zip du package. |
solution-zip | Chemin d’accès au fichier zip de la solution. |
poll-status | Interrogez pour vérifier le statut de votre demande. |
status
Permet d’obtenir le statut de la demande d’installation/d’envoi de Catalog.
Paramètre | Description |
---|---|
tracking-id | (Obligatoire) ID de suivi de la demande. |
type | (Obligatoire) Type de demande (Valeurs : Installer, Soumettre) |
Création de workflow GitHub
Pour en savoir plus sur la composition de workflows GitHub à l’aide d’actions GitHub, complétez les laboratoires Actions GitHub pour Microsoft Power Platform.
Plus d’informations : À propos des actions GitHub