@molgenis-experimental/molgenis-app-lifelines-webshop

Install
3,623
Install
npm install @molgenis-experimental/molgenis-app-lifelines-webshop
Latest Version:4.7.8
Vue:2
License:LGPL-3.0
Last Updated:Dec 22, 2023
Links: npm
Maintainer: sidohaakma

Lifelines webshop

Install

cp .lifelinesrc.example .lifelinesrc
yarn install
yarn run serve
  • i18n For development and testing you can add your translations to i18n.schemas.js For production make sure to add the translations to the molgenis entity Localization using lifelines-webshop as a namespace.

    tip: Use i18n.schemas.js to create the Localization entities. For msgid add the schema key (for example: "lifelines-webshop-sidebar-header") The namespace should be lifelines-webshop and than add all of the needed translations.

Common commands

yarn build     # Compile and minify
yarn test      # Run your tests
yarn lint      # Lints and fixes files
yarn test:e2e  # Run your end-to-end tests
yarn test:unit # Run your unit tests

Deployment (Kubernetes)

Ask Ops for help to setup kubectl and Rancher if you don't have them setup yet.

  • Deploy the lifelines-webshop Helm chart on Rancher. Write down the generated Molgenis token in the TRANSFORM section.

  • Install Molgenis commander

  • Add deployment/datasets directory to the dataset_folders section of ~/.mcmd/mcmc.yaml

  • Add deployment/resources folder to the resource_folders section of ~/.mcmd/mcmc.yaml

  • Configure Molgenis commander to run on the lifelines server

    mcmd config add host
    mcmd config set host
    
  • Set the ll_admin password in the lifelines script

    cp ./deployment/lifelines ~/.mcmd/scripts/
    vim ~/.mcmd/scripts/lifelines
    add user ll_admin --set-password *******
    
  • Proxy the Molgenis instance and follow the commander script to setup the server:

    kubectl port-forward svc/molgenis 8080:8080 --namespace lifelines-catalog-test
    mcmd run lifelines -i
    
  • Login as admin to Molgenis and add the TRANSFORM Molgenis token you generated earlier the Helm chart.

  • Go to the Transform pod on Rancher and test the Transform with:

kubectl create job manual-transform --from cronjob/transform --namespace lifelines-catalog-test

Dataflows

To transform the raw data to a format that can be used by this app, use the molgenis-py-lifelines-transform tool.

Workflow of the catalog

Order process

Production settings

A couple of things have to be configured in order to run this app in production:

  • vue.config.js Add a public path to specify the path on which the app is served.

    const packageJson = require('./package.json')
    
    ...
    module.export
      ...
      publicPath: process.env.NODE_ENV === 'production'
        ? packageJson.name + '/dist/'
        : '/',
    
  • package.json Add a scope for the package name to publish to a organisation scope on NPM.

    "name": "*scope*/molgenis-app-lifelines-webshop",
    

    Add the publish config with scope public, otherwise you cannot publish to NPM.

    "publishConfig": {
      "access": "public"
    },
    

    Add a target for webservers to resolve to.

    "main": "dist/index.html",
    

    Add directories to pick up when building for production.

    "files": [
      "dist",
      "src"
    ],
    
  • route.ts Change the default base when you want to serve your app on a path other than /

    export default new Router({
    ...
    base: process.env.NODE_ENV === 'production' ? packageJson.name : process.env.BASE_URL,
    

Related Packages

Version History

Version Released Vue License
4.7.8 ^2.6.10 LGPL-3.0
4.7.7 ^2.6.10 LGPL-3.0
4.7.6 ^2.6.10 LGPL-3.0
4.7.5 ^2.6.10 LGPL-3.0
4.7.4 ^2.6.10 LGPL-3.0