Component Definition
The definition of a component is done through a markup file in XML format, which must follow the schema file provided by the portal. The link to the documentation of this schema file can be found on the API and XSD page.
In this file, the following can be defined:
- Version: Indicates what the version of the component is.
- Description: Description of the component.
- Source code path: Path of the source code used by the portal to store source code generated by it. Typically used in development and assembly environments.
- Installation Restrictions: Validators that will be checked at each deploy and undeploy to verify whether the component can be installed, updated, or uninstalled. The restrictions can be dependencies and can be defined by specifying the following data:
- Component identifier: Identifier of the component that the current component depends on.
- Version: Version of the component that the current component depends on.
- Version restriction type: Indicates what type of version restriction this component depends on. It can be: equal version, greater than version or equal to or greater than version. The default, if not specified, is equal version.
- Component Substitution: Configuration for component substitution. This configuration must be made to indicate that the current component substitutes other components. This configuration requires that each replaced component is referenced in this configuration and must also have its version defined.
- A substitution can be made together with other components. In this case, for the substitution to occur, all components referenced in the joint substitution must be present in the same deploy package for it to happen. If they are not, an error will be generated and the deploy will not occur.
- Channel identifier: This is the channel identifier that will be used to identify to which website to copy the component's static files. If not specified, the component's static files will be copied to all websites. The channel must exist and belong to a website at the time when the component is deployed for the file copy to take place. Otherwise, the component should be deployed when that is done. Additionally, when changes in the website of the channel or in the static directory of the website are made, the component must be deployed and the removal of component files from the previous static directories must be done manually.
For more information about the component definition file, see the technical documentation.