Hide

YetaWF Documentation

Display
Print

YetaWF.Packages Package

Overview

This package implements package management for YetaWF packages, your development packages and third-party packages.

Packages can contain modules and skins, although typically separate packages are used for modules and skins. Each package can contain multiple modules or multiple skins. A package is used to group related modules together, for example, a store package would contain all modules implementing an online store.

A package is equivalent to a project in your YetaWF solution. For example, the Blog Package contains all the blog modules and is located in your YetaWF solution at ./Modules/YetaWF/Blog.

Built-In Commands

This package offers several built-in commands which can be accessed directly by authorized users. In order to use the following commands, the user has to be authorized for the YetaWF_Core-BuiltinCommands resource (see Authorization).

UrlDescription
/$initall?From=fromInstalls all packages and builds the initial site from the import data (zip files) or from templates. This is not typically used and is reserved for YetaWF core developers. From=Data creates the site using the zip files and the Add Site.txt Site Template. Otherwise the InitialSite.txt Site Template is used.
/$initnew?From=fromAdds all packages and builds a new site from the import data (zip files) or from templates. This is not typically used and is reserved for YetaWF core developers. From=Data creates the site using the zip files and the Add Site.txt Site Template. Otherwise the NewSite.txt Site Template is used.
/$restartRestarts the YetaWF instance - Identical to restarting the site in IIS.
/$initpackage?Package=packagenameInstalls all models for the specified package packagename. This could be used to recover from a catastrophic site failure to install packages when the site is unable to display the Packages Module (using Admin > Panel > Packages, standard YetaWF site)
/$importdata?ZipFile=zipfilenameInstalls all models using the specified zip file zipfilename. This could be used to recover from a catastrophic site failure to restore package data when the site is unable to display the Packages Module (using Admin > Panel > Packages, standard YetaWF site)
/$processtemplate?Template=sitetemplateCreates pages and modules based on the specified Site Template sitetemplate. This could be used to recover from a catastrophic site failure to create pages and modules when the site is unable to display the Process Site Template Module (using Admin > Panel > Packages, standard YetaWF site)
/$undotemplate?Template=sitetemplateRemoves pages and modules based on the specified Site Template sitetemplate. This could be used to recover from a catastrophic site failure to remove pages and modules when the site is unable to display the Undo Site Template Module (using Admin > Panel > Packages, standard YetaWF site)

Packages Module

Displays and manages installed packages. It is accessible using Admin > Panel > Packages (standard YetaWF site).

Individual packages can be exported using the Packages Module as

  • binary packages - suitable for distribution of a package without source code, free or for sale
  • source code packages - suitable for distribution of a package including source code, free or for sale

When exporting a package, the YetaWF Core version is saved and the package can only be imported on a YetaWF instance with the same or newer version. This means that when you are developing packages for distribution, you have to do so using the oldest YetaWF version that you intend to support.

Data for individual packages can be exported, so it can be imported elsewhere (another YetaWF instance or another site within the same YetaWF instance) using the Import Package Data Module.

The Packages Module supports installing all data files (SQL tables or files) required by a package. If these already exist, the data is not altered, but may be upgraded to the current version of the package, if a newer package version is installed.

The Packages Module supports removing all data files (PostgreSQL/SQL tables or files) required by a package.

Localization data used by a package can be generated. This scans all source files and extracts localizable strings. In addition, the package also allows editing the localizable strings for a package.

Modules

Module NameDescription
Import Package (Binary or Source Code Package) ModuleUsed to import a package into your YetaWF site. The package can be a complete package including source code or a binary only package. Source code packages can only be imported on development systems in a Debug build.
Import Package Data ModuleUsed to import all the data for one package. Only data for the current site is imported. A site backup contains multiple zip files, each containing data a backup for a particular package. These zip files can be restored, or imported, using the Import Package Data Module. The Import Package Data Module is accessible using Admin > Panel > Packages.
Packages ModuleDisplays and manages installed packages. It is accessible using Admin > Panel > Packages (standard YetaWF site).
Process Site Template ModuleProcesses a Site Template and adds all defined pages to the current site. The Process Site Template Module is accessible using Admin > Panel > Packages (standard YetaWF site).
Undo Site Template ModuleUndoes a site template by removing all defined pages and menu entries from the current site. For information about site templates, please see Site Templates. The Undo Site Template Module is accessible using Admin > Panel > Packages.

License

The YetaWF.Packages package is part of YetaWF, an open source product licensed under the GNU General Public License, version 3 (GPL-3.0) - Copyright - Softel vdm, Inc.