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

4.7.8 • Public • Published

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

https://yuml.me/edit/e9dd81eb 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 states

Order process

order states

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,

Readme

Keywords

none

Package Sidebar

Install

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

Weekly Downloads

2

Version

4.7.8

License

LGPL-3.0

Unpacked Size

12.3 MB

Total Files

79

Last publish

Collaborators

  • sidohaakma
  • molgenis-npm
  • connoratrug