Migration d’applications entre des locataires et des environnements au moyen de l’empaquetageEnvironment and tenant app migration through Packaging

Découvrez comment migrer les ressources d’un environnement à un autre avec l’empaquetage.Learn how to migrate resources from one environment to another with packaging. Ces environnements peuvent être situés dans le même locataire ou dans différents locataires.These environments can be within the same tenant or across different tenants.

ScénarioThe scenario

Voici un scénario courant de migration des ressources : vous avez des environnements de test ou de développement et un environnement de production.One common scenario where you may want to migrate resources is where you have Test or Dev environments and a Production environment. Les développeurs et testeurs ont un accès étendu aux applications dans leurs environnements.Developers and testers have wide access to the apps in their environments. Toutefois, lorsqu’il s’agit de migrer une application en production, cet environnement a un contrôle rigoureux sur les autorisations de mise à jour et de modification.But when it comes time to migrate a new app to production, that environment has rigorous control over permissions to update and change it.

Voici un autre scénario : chaque client possède son propre environnement et ses propres données.Another scenario is one where each customer has their own environment and data. Lorsqu’un nouveau client est ajouté, un environnement est créé pour lui et vous migrez les applications dans son environnement.When a new customer is added, a new environment is created for them, and you would migrate apps into their environment.

Quelles ressources puis-je migrer par le biais de l’empaquetage ?Which resources can I migrate through packaging?

Lorsque vous exportez une application, les ressources dépendantes associées sont également exportées dans le package.When you export an app, the dependent resources for your app will also get exported into the package. Initialement, seul un sous-ensemble de tous les types de ressource possibles est pris en charge, comme indiqué dans le tableau ci-dessous.Initially only a subset of all possible resource types will be supported as outlined in the table below.

Type de ressourceResource type Prise en chargeSupported Options d’importationImport options
AppApp OuiYes Il existe deux options pour importer une application dans un environnement :There are two options to import an app into an environment:
  1. Create new (Créer) : l’application est créée en tant que nouvelle application dans l’environnement où le package est importé.Create new – The app will be created as a new app in the environment where the package is imported.
  2. Mettre à jour : l’application existe déjà dans l’environnement et elle est mise à jour lors de l’importation de ce package.Update - the app already exists in the environment and will be updated when this package is imported.
FluxFlow OuiYes Il existe deux options pour importer un flux dans un environnement :There are two options to import a flow into an environment:
  1. Create new (Créer) : le flux est créé en tant que nouveau flux dans l’environnement où le package est importé.Create new – The flow will be created as a new flow in the environment where the package is imported.
  2. Mettre à jour : le flux existe déjà dans l’environnement et il est mis à jour lors de l’importation de ce package.Update - The flow already exists in the environment and will be updated when this package is imported.
Remarque : toutes les ressources dont dépend le flux sont également incluses dans le package d’application qui est exporté et doivent être configurées quand le package est importé NOTE: All resources that the flow depends on will also be included within the app package that is exported and will need to be configured with the package is imported
Listes déroulantes et personnalisations d’entités CDSCDS Entity Customizations and Picklists OuiYes Il existe deux options pour importer des listes déroulantes et entités CDS dans un environnement :There are two options to import CDS Entities or Picklists in an environment:
  1. Overwrite (Remplacer) : s’il existe une ressource portant le même nom, l’importation la remplace.Overwrite - If there's a resource with the same name, this import will replace it. En l’absence de ressource correspondante, une ressource est créée.If there isn’t a matching resource, a new resource will be created.
  2. Merge (Fusionner) : si une entité ou une liste déroulante porte le même nom, les nouveaux champs ou entrées sont ajoutés, mais les champs ou entrées manquants ne sont pas supprimés.Merge – If there's an entity or picklist with the same name, new fields or entries will be added, but missing fields or entries won’t be removed.
Connecteurs personnalisésCustom Connectors NonNo Si une application dépend d’un connecteur personnalisé, nous ne prenons pas en charge actuellement l’exportation du connecteur au sein du package.If an app depends on a custom connector we do not currently support exporting the connector as a part of the package.

Si vous avez une application qui s’appuie sur un connecteur personnalisé, votre seule option actuelle est de recréer ou mettre à jour manuellement le connecteur dans votre environnement cible et de sélectionner ce connecteur lorsque vous importez le package.If you have an app that relies on a custom connector, your only current option is to manually re-create or update the connector in your target environment and select that connector when you import the package.

ConnexionsConnections NonNo Si une application dépend d’une connexion (telle qu’une connexion SQL avec des informations d’identification), nous ne prenons pas en charge actuellement l’exportation de la connexion ou des informations d’identification au sein du package.If an app depends on a connection (such as a SQL connection w/ credentials), we do not currently support exporting the connection or credentials as a part of the package.

Si vous avez une application qui s’appuie sur une connexion partagée (telle que SQL), votre seule option actuelle est de recréer la connexion avec les informations d’identification appropriées dans votre environnement cible et de sélectionner cette connexion lorsque vous importez le package.If you have an app that relies on a shared connection (like SQL), your only current option is to manually re-create that connection with the appropriate credentials in your target environment and select that connection when you import the package.

Jeux d’autorisations et rôles personnalisés CDSCDS Custom Roles and Permission Sets NonNo L’exportation de rôles CDS personnalisés et/ou de jeux d’autorisations n’est pas prise en charge actuellement. La seule option aujourd’hui est de recréer manuellement ces entités dans votre environnement cible.Exporting custom CDS roles and/or permission sets is not currently supported, so the only option today is to manually re-create these entities in your target environment.
PasserellesGateways NonNo Les passerelles sont uniquement prises en charge dans les environnements par défaut et {nom du locataire} (à partir de la préversion). Par conséquent, la migration ou l’exportation n’est pas prise en charge.Gateways are only supported in the default (and {tenant name} (from preview) ) environments, so export/migration is not supported.
Lignes de données CDSCDS data rows NonNo L’exportation de lignes d’entités CDS n’est pas prise en charge actuellement. La seule option aujourd’hui est de manuellement exporter et importer les données une fois que les modifications de schéma CDS ont été appliquées dans un nouvel environnement.Export rows from CDS entities is not current supported, so the only option today to manually export and import data after your CDS schema changes have been applied in a new environment.

Comment obtenir l’accès à l’empaquetage de mon application ?How do I get access to packaging for my app?

Tout utilisateur disposant de l’autorisation « Modification » pour une application peut exporter cette dernière.The ability to export an app is available to any user with "Can edit" permission to the app.

Tout utilisateur disposant de l’autorisation « Créateur d’environnement » pour l’environnement de destination peut importer une application.The ability to import an app is available to any user with "Environment Maker" permission in the destination environment.

Un utilisateur doit avoir une licence PowerApps Plan 2 ou un essai PowerApps Plan 2 pour exporter ou importer une application.A user must have a PowerApps Plan 2 or PowerApps Plan 2 trial license in order to export or import any app.

Remarque : pendant que la fonctionnalité d’empaquetage est en préversion, tout utilisateur disposant d’une licence PowerApps valide peut essayer l’empaquetage pour ses applications et environnements.NOTE: While packaging is in preview, any user with a valid PowerApps license will be able to try out packaging for their apps and environments.

Exportation d’une applicationExporting an app

  1. Dans http://web.powerapps.com, cliquez ou appuyez sur Applications, sélectionnez le bouton de sélection correspondant à l’application à migrer, puis sélectionnez Export (preview) (Export (préversion)).In http://web.powerapps.com, click or tap Apps, select the ellipses for the app you want to migrate, and then select Export (preview).

    Sélectionner exporter

  2. Lorsque la page du package d’exportation s’ouvre, entrez un nom et une description pour le package.When the export package page opens, enter a Name and Description for the package.

    Passer en revue les détails du package

  3. Dans la section Passer en revue le contenu du package, vous pouvez éventuellement ajouter des commentaires ou des remarques ou modifier le paramètre spécifiant la façon dont chaque ressource est importée dans l’environnement cible lors de l’importation du package.Within the ‘Review Package Content’ section you can optionally add comments or notes or change the setting for how each individual resource will be imported into the target environment during package import.

    Configurer le contenu du package

  4. Lorsque vous avez terminé, sélectionnez Exporter : le téléchargement du fichier de package commence au bout de quelques secondes.When you are done select Export and the package file will begin downloading within a few seconds.

Importation d’une applicationImporting an app

  1. Dans http://web.powerapps.com, cliquez ou appuyez sur Applications, puis sélectionnez Import package (preview) (Importer un package (préversion)).In http://web.powerapps.com, click or tap Apps, and then select Import package (preview).

    Sélectionner importer

  2. Sélectionnez Charger, puis choisissez le fichier de package d’application à importer.Select Upload and select the app package file that you want to import.

    Sélectionner le fichier de package

  3. Une fois que le package a été chargé, vous devez passer en revue son contenu et fournir une entrée supplémentaire pour tout élément marqué d’une icône rouge en sélectionnant l’icône en forme de clé pour chaque élément et en entrant les informations nécessaires.Once the package has been uploaded you will need to review the package contents and will need to provide additional input for any item marked with a red icon by selecting the wrench icon for each item and entering the required information.

    Passer en revue le contenu du package

  4. Une fois que vous avez fourni toutes les informations requises, sélectionnez Importer.Once you have provided all of the required information select Import.

    Contenu du package mis à jour

  5. Lorsque l’importation est terminée, vous êtes automatiquement redirigé vers une page (semblable à celle ci-dessous) qui indique si l’opération d’importation a réussi ou non.When import completes you will be automatically redirected to a page (similar to the one below) that outlines whether or not the import operation was successful.

    Passer en revue les résultats de l’importation

Remarque Si vous importez une application et que vous avez choisi de mettre à jour une application actuelle, les modifications sont enregistrées en tant que brouillon des applications.NOTE If you are importing an app and chose to Update an existing app, the new changes will be saved as a draft of the applications. Vous devez publier ces modifications pour qu’elles soient accessibles par les autres utilisateurs des applications.You will need to publish those changes in order for them to be available all other users of the applications.

Limitations connuesKnown limitations

LimitationLimitation StatutStatus
L’importation de packages d’application contenant plus de 3 ressources a été signalée comme nécessitant plusieurs minutes.Importing app packages that contains more than ~3 resources has been reported to take several minutes to complete. Il s’agit d’un problème connu et un correctif sera bientôt déployé.This is a known issue and a fix will be rolled out soon.