Table of Contents

Application packages for SRM projects

When you implement an SRM project, we highly recommend that you create a repository containing all custom components deployed on top of the SRM framework (function definitions, service definitions, custom scripts, Visio drawings, etc.). This facilitates the development process and the deployment of the project on any cluster.

This section describes the features that are available with relation to this today and how you can make use of them.

Components

The SRM framework eases the extraction and the deployment of the components listed below associated with a given Booking Manager element. All remaining components must be deployed using custom code.

  • Booking Manager settings (with custom element Visio drawing, alarm template, and trend template).

  • Parent view of the Booking Manager.

  • Custom actions (with associated views and Visio drawing).

  • Custom scripts defined in the Booking Manager.

  • Booking Monitoring element (with alarm template and trend template).

  • Pools without resources.

  • Service definition and associated components:

    • System and protocol function definitions (function, script, profile definition, and parameters).

    • Visio drawing.

    • Custom script (DTR, Created Booking Action, etc.).

    • Inheritance pools and included resources.

    • Custom profile parameters.

Configuration extraction

In case the project is already deployed on a DMA, it is possible to trigger an extraction from the Booking Manager and generate an archive that can serve as a starting point to create the repository:

  1. In the Booking Manager app, go to Config > Backup.

  2. In the Full Configuration Settings section, click Export.

Creating the repositories

Two repositories should be used:

  • A Companion Files repository, which stores all custom SRM components. It can also include extra components; however, deploying those extra items will require custom code in the deployment script.

  • A Package repository, which points to the companion file repository and optionally contains extra items such as protocols.

To create the repositories:

  1. Create a "Companion Files" repository and clone it.

  2. In the repository, add an "SRM" folder (inside a "Content" folder) and include the files from the extracted archive (see Configuration extraction).

  3. Commit and push the repository.

  4. Create a "Package" repository.

  5. In the manifest file of the repository, add the reference to the Companion Files repository.

    For example:

    <!-- ... -->
    <Content>
        <CompanionFiles>
            <CompanionFile>
            <RepoPath>CompanionFiles\Customers\Ziine\Ziine SatUplink</RepoPath>
            <Version>
                <Selection>
                <Range rangeSelection="latestRelease">1.0.0.X</Range>
                </Selection>
            </Version>
            </CompanionFile>
        </CompanionFiles>
    </Content>
    <!-- ... -->
    

    In the example above, you are adding the Ziine SatUplink Companion Files repository for the Ziine customer.

  6. In the "Install" Automation script of the "Package" repository, add the necessary steps to import the SRM configuration:

    1. Add the Skyline.DataMiner.Core.AppPackageInstaller.SRM NuGet package (available on <nuget.org> ) to the "Install" project.

    2. In the code of the "Install" script, reference the Skyline.DataMiner.Srm.AppPackageInstaller namespace.

    3. In the "Install" method, add the following lines:

      var srmInstaller = new SrmInstaller(engine, context);
      srmInstaller.ImportSrm();
      

Installing the package

  1. Make sure the SRM framework package is deployed on the target cluster.

    Important

    We highly recommended installing the same SRM framework version as in the setup where the configuration was exported.

    Note

    Double-check whether the DataMiner version is compliant with the SRM framework version you are about to install.

  2. Open the SLNetCLientTest tool.

    Warning

    Always be extremely careful when using this tool, as it can have far-reaching consequences on the functionality of your DataMiner System.

  3. Go to Advanced > Apps > AppPackages.

  4. Click Upload Package and select the package generated by the CI/CD pipeline.

  5. Select the newly uploaded package in the list and click Install Package.