•  
      request #14284 npm lockfiles are not used when building external plugins
    Infos
    #14284
    Thomas Gerbet (tgerbet)
    2019-12-13 11:16
    2019-12-13 09:57
    15547
    Details
    npm lockfiles are not used when building external plugins
    Some external plugins such as the ones related to the Mattermost integration uses the nodejs/npm coming from the EPEL for building the RPM packages. The provided npm is quite old (3.10) and does not know about lockfiles.
    Since the dependencies are not locked the whole dependency tree is recomputed each time and we now get a dependency that is compatible with the version of node being used. This is already quite amazing it has stay functional in this state for this long.

    Short fix: all the concerned build process will me moved to the packages provided by Nodesource with node.js 10.x.

    Longer term fix: this is yet another call for a centralized framework to build external (plugins with code source outside of the main repo) and semi-external (plugins with code source in the main repo but not built with the main packages) plugins to have a consistent and manageable way to build those packages.
    Other
    Empty
    Empty
    • [ ] enhancement
    • [ ] internal improvement
    Empty
    Stage
    Thomas Gerbet (tgerbet)
    Closed
    2019-12-13
    Attachments
    Empty
    References

    Follow-ups

    User avatar
    Thomas Gerbet (tgerbet)2019-12-13 10:09
    BotMattermost plugins seems to be the only ones affected. All other external plugins maintained by Enalean somehow use a version of npm supporting the lockfiles.

    Reviews: gerrit #17118, gerrit #17119 and gerrit #17120.

    • Status changed from Under implementation to Under review