Plugins

As of SD Elements 2024.2, the container deployment is the only deployment model offered for self managed instances of SD Elements. See the Container Migration Guide for information on migrating your VM instance to a Kubernetes and the Container Deployment section for documentation on installing and maintaining an SD Elements container deployment.

SD Elements can be extended to incorporate custom reporting and project integration plugins. The behaviour of a plugin depends on its implementation.

Application settings

There are three supported plugin types: project reports, business unit reports, and project connections. Plugins are generally Python .py and/or HTML .html files that are stored in specific directories, depending on its type. The location of a plugin type is defined in /docs/sde/local_settings using a certain application setting. The table below outlines each plugin type and its corresponding setting.

Instructions for installing the files on the server are provided below in the section Install a plugin.

Plugin type Setting File

Project report

PROJECT_REPORT_PLUGINS_FOLDER

A .tar.gz archive. Each directory in the archive normally contains a .py and .html file.

Business unit report

BU_REPORT_PLUGINS_FOLDER

A .tar.gz archive. Each directory in the archive normally contains a .py and .html file.

Project connection

PROJECT_CONNECTION_PLUGINS_FOLDER

A .tar.gz archive. Each directory in the archive should contain a .py file.

Install a plugin

Follow the steps below to install a custom plugin on the server. Plugins are generally installed under /docs/sde/plugins/. Consult your SD Elements representative for further details if you want to write your own plugin.

Prerequisites:
  • SSH credentials for sde_admin

  • The custom plugin

    • For example, custom_plugin.tgz

Steps:
  1. Copy the plugin to the server: If the plugin is on another system, secure copy it to the server. For example:

    scp custom_plugin.tgz sde.host.server:/tmp
  2. Login to the server: Access the SD Elements server SSH console as sde_admin.

  3. Unarchive the plugin: On the command line, run

    cd /tmp
    tar zxvf /tmp/custom_plugin.tgz
  4. Create the plugin directory: Create a directory to store the custom plugin - if it doesn’t exist.

    • For example, a custom project report would be stored in custom_project_reports

      cd /docs/sde/plugins/
      umask 0002 && mkdir custom_project_reports
  5. Copy the plugin: Copy the custom plugin files to the plugin directory

    cp -r /tmp/custom_plugin/ /docs/sde/plugins/custom_project_reports/
  6. Apply file permissions: Set the proper file permissions and ownership:

    cd /docs/sde/plugins/
    chmod 755 -R custom_project_reports/
    chown sde_admin:sde -R custom_project_reports/
  7. Set SELinux context: Apply the required SELinux context:

    chcon -Rv --type=httpd_sys_content_t custom_project_reports/
  8. Activate the plugin: Update /docs/sde/local_settings with the location of the plugin. Use the setting name from the table above.

    • For example, project report plugins are activated with setting PROJECT_REPORT_PLUGINS_FOLDER.

      PROJECT_REPORT_PLUGINS_FOLDER = "/docs/sde/plugins/custom_project_reports/"
  9. Clean up: Remove the original copy of the plugin.

    rm -fr /tmp/custom_plugin/
  10. Restart SD Elements:

    sde apache restart

The plugin is activated in the application. Any plugin errors are reported in /docs/sde/log/sdlc.log.

results matching ""

    No results matching ""