Uploaded image for project: 'OpenShift Console'
  1. OpenShift Console
  2. CONSOLE-3666

Validate plugin consumed shared modules when building Console dynamic plugin

    XMLWordPrintable

Details

    • Story
    • Resolution: Done
    • Major
    • None
    • None
    • None
    • None
    • HAC Infra OCP - Sprint 239

    Description

      There are modules shared between the Console application and its dynamic plugins, as configured in

      packages/console-dynamic-plugin-sdk/src/shared-modules.ts
      

      For modules configured as "allowFallback: false" (default setting) we should validate the Console provided version range vs. plugin consumed version at webpack build time.

      This allows us to detect potential compatibility problems in shared modules (i.e. plugin is built against a different version than what is provided by Console at runtime) when building dynamic plugins.

       

      AC: Add validation for our shared modules of dynamic plugins

      • Changes in Console dynamic plugin SDK
        • add optional options argument to ConsoleRemotePlugin constructor
          • control JSON schema validation: validatePackageSchemavalidateExtensionSchema
          • control extension integrity validation (via ExtensionValidator): validateExtensionIntegrity
          • control consumed shared module validation: validateSharedModules
      • Changes in Console dynamic demo plugin
          • update react-router and react-router-dom dependencies to Console provided semver range
          • update typing dependencies for react-router and react-router-dom
          • remove unused dependencies comment-json and read-pkg

      Attachments

        Activity

          People

            vszocs@redhat.com Vojtech Szocs
            vszocs@redhat.com Vojtech Szocs
            Yanping Zhang Yanping Zhang
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: