Documentation Frappe Framework

Frappe Framework

Packages

Un Package embarque des modules construits dans l’interface, sans ligne de commande, puis se transporte vers un autre site.

1 min de lectureMis à jour le Source : docs.frappe.io

À quoi sert un Package

À retenir

Ajouté en version 14.

Les Packages sont des applications légères construites directement dans l’interface du framework. Un Package ressemble à une application : c’est un ensemble de définitions de modules (Module Defs).

On peut donc faire une application depuis l’interface, sans ligne de commande, avec des DocTypes, des scripts serveur (Server Scripts), des pages web, et le reste. Ces applications se regroupent dans un Package, puis s’importent sur d’autres sites.

Pour rattacher un module à un Package, renseignez sa propriété Package. Elle n’est disponible que pour les Module Defs de type Custom.

Créer le Package

Créez un objet Package. Vous pouvez y mettre un README et une LICENSE. Le Package est conçu pour être poussé vers un dépôt git. Ajoutez ensuite vos Module Defs personnalisés.

Publier une version

Un Package Release exporte tous les modules du Package dans [bench]/sites/[site]/packages, comme une application, puis emballe le dossier dans [package]-[version].tar.gz. Cette archive se télécharge et s’importe ailleurs.

Importer

Créez un Package Import et joignez l’archive sur le site cible. Si Activate est coché, le Package est extrait dans [bench]/sites/[sitename]/packages. Les fichiers déjà présents sont écrasés. Le système migre ensuite le Package vers la base, comme une migration d’application. Les fichiers inchangés sont sautés, sauf si Force est coché. Un journal enregistre la sortie.

Point d’attention

Activate écrase les fichiers existants du dossier packages. Force réapplique aussi les fichiers que la migration aurait sautés. La propriété Package ne concerne que les modules Custom.