[FOLIO-1698] determine additional module metadata items Created: 14/Jan/19  Updated: 03/Jun/20  Resolved: 02/Sep/19

Status: Closed
Project: FOLIO
Components: None
Affects versions: None
Fix versions: None

Type: Task Priority: P3
Reporter: David Crossley Assignee: David Crossley
Resolution: Duplicate Votes: 0
Labels: platform-backlog
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original estimate: Not Specified

Issue links:
Blocks
blocks FOLIO-2219 Create script to build Kubernetes dep... Closed
is blocked by OKAPI-732 add a new section for specifying key/... Closed
Relates
relates to FOLIO-2008 Publish a minimal README at Docker Hu... Closed
relates to FOLIO-2185 SPIKE: how to maintain resource deplo... Closed
relates to FOLIO-1696 SPIKE: provide operational "metadata"... Closed
relates to FOLIO-2003 platform-core backend modules metadata Closed
Sprint: CP: sprint 71
Story Points: 3
Development Team: Core: Platform

 Description   

Some information would be be manually maintained. Some may be automatically gathered.
e.g. port is in the MD launchDescriptor and Dockerfile.



 Comments   
Comment by David Crossley [ 08/May/19 ]

Gathered some real examples. This is just a basic initial set, and mostly relate to back-end modules. There will be further items. This information would be utilised differently in different contexts, e.g. added to the Docker description, utilised by CI scripts.

  • containerMemory – Recommended minimum container memory in MB, e.g. 256
  • databaseConnection – This module utilises a database, e.g. true
  • otherConfiguration – URL to documentation of additional environment variables, startup, and configuration options.
Comment by David Crossley [ 08/May/19 ]

mod-notes

containerMemory: 256
databaseConnection: true

edge-rtac

containerMemory: 256
databaseConnection: false
otherConfiguration: https://github.com/folio-org/edge-common#configuration

mod-agreements

containerMemory: 512
databaseConnection: true
otherConfiguration: https://github.com/folio-org/mod-agreements#configuration

Comment by David Crossley [ 08/May/19 ]

Some potential solutions:

As a section in README.
Could be parsed, but cumbersome and fragile.

As "tags" section in the ModuleDescriptor.
This is an existing facility.
It seems to be not yet utilised.
Each tag item is a simple string.
Could use some basic structure in the string, e.g. "name: value"

As a new defined section in the ModuleDescriptor, e.g. "metadata"
More reliable.
Items are optional.
A CI script can validate and correlate. Ensure certain items are present depending on whether a back-end or front-end module.

Comment by mark.stacy [ 15/May/19 ]

David CrossleyI have pulled this information from a python script when working on kubernetes workflows. See below for an example of the metadata files that I use to pull information.
Metadata example q1-2019-release-core :
1. https://raw.githubusercontent.com/folio-org/folio-ansible/q1-2019-release/group_vars/release-core
2. Use the deploy_url to get backend modules
3. The only missing information at this point is the ports to expose. I parse the ModuleDescriptor from okapi registry (registry_module_url = “http://folio-registry.aws.indexdata.com/_/proxy/modules”). If the okapi registry has been updated and the module does not exist use a default port (8081).

This is how I pulled the needed metadata together to get the needed information to deploy without okapi. I have shared this with jroot and believe that he has successfully implemented this script within his workflow. This information would be extremely helpful posted to docker hub as well as a single source or registry for FOLIO releases.

Comment by mark.stacy [ 15/May/19 ]

Current metadata fields from jroot https://github.com/folio-org/folio-install/blob/kube-rancher/alternative-install/kubernetes-rancher/TAMU/module_metadata.md

The only problem is that this metadata is generated from a currently vetted Q release.

Comment by David Crossley [ 02/Sep/19 ]

Superseded by FOLIO-2185 Closed . Closed this FOLIO-1698 Closed as a duplicate.

Generated at Thu Feb 08 23:15:14 UTC 2024 using Jira 1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d.