Edge-dcb Module submission self-evaluation

Edge-dcb Module submission self-evaluation

 

Comments/ Action Items

Responsible

Evaluation result: 

Evidence:

 

Status:

To Do

In Progress

Done

 

Comments/ Action Items

Responsible

Evaluation result: 

Evidence:

 

Status:

To Do

In Progress

Done

1

 Uses Apache 2.0 license

 

@Kalibek Turgumbayev 

Acceptable

https://github.com/folio-org/edge-dcb/blob/master/LICENSE

Done

2

 Module build MUST produce a valid module descriptor

 

@Kalibek Turgumbayev 

Acceptable

https://github.com/folio-org/edge-dcb/blob/master/descriptors/ModuleDescriptor-template.json

Done

3

 Module descriptor MUST include interface requirements for all consumed APIs

Edge module does not require API list as they are encoded in system user permissions.

@Kalibek Turgumbayev 

Acceptable

 

Done

4

 Third party dependencies use an Apache 2.0 compatible license

Attached is the result of license scan: mvn license:third-party-report

@Kalibek Turgumbayev 

Acceptable

Done

5

 Installation documentation is included

Deployment is described shortly

Jira: EDGEDCB-11: [Prep. for TC module submission] 5. Installation documentation is includedClosed

@Kalibek Turgumbayev 

Acceptable

https://github.com/folio-org/edge-dcb/tree/master?tab=readme-ov-file#installationdeployment

In Progress

6

 Personal data form is completed, accurate, and provided as PERSONAL_DATA_DISCLOSURE.md file

Checked and the file is present with appropriate details.

@Gurleen Kaur1 

Acceptable

https://github.com/folio-org/edge-dcb/blob/master/PERSONAL_DATA_DISCLOSURE.md

Done

7

 Sensitive and environment-specific information is not checked into git repository

 

@Gurleen Kaur1 

Acceptable

 

Done

8

 Module is written in a language and framework from the officially approved technologies page

 

@Gurleen Kaur1 

Acceptable

 

Done

9

 Module only uses FOLIO interfaces already provided by previously accepted modules e.g. a UI module cannot be accepted that relies on an interface only provided by a back end module that hasn't been accepted yet

 

@Gurleen Kaur1 

Acceptable

https://github.com/folio-org/edge-dcb/blob/master/descriptors/ModuleDescriptor-template.json

Done

10

Integration with any third party system (outside of the FOLIO environment) tolerates the absence of configuration / presence of the system gracefully

 

@Gurleen Kaur1 

Acceptable

https://github.com/folio-org/edge-dcb/blob/master/README.md#deployment-information

Done

11

 Sonarqube hasn't identified any security issues, major code smells, or excessive (>3%) duplication

 

@Dmytro Bykov 

ACCEPTABLE

https://sonarcloud.io/summary/new_code?id=org.folio%3Aedge-dcb

DONE

12

 Uses officially supported build tools

 

@Dmytro Bykov 

ACCEPTABLE

https://github.com/folio-org/edge-dcb/blob/master/pom.xml#L25

https://github.com/folio-org/edge-dcb/blob/master/Dockerfile

DONE

13

 Unit tests have 80% coverage or greater and are based on officially approved technologies

 

@Dmytro Bykov 

ACCEPTABLE

https://sonarcloud.io/summary/new_code?id=org.folio%3Aedge-dcb

https://github.com/folio-org/edge-dcb/blob/master/pom.xml#L188

DONE

14

 

@Adesh Singh 

ACCEPTABLE

https://github.com/folio-org/edge-dcb/blob/master/descriptors/ModuleDescriptor-template.json

DONE

15

 Module includes executable implementations of all endpoints in the provides section of the Module Descriptor

 

@Adesh Singh 

INAPPLICABLE

https://github.com/folio-org/edge-dcb/blob/master/descriptors/ModuleDescriptor-template.json

DONE

16

Environment vars are documented in the ModuleDescriptor

 

@Adesh Singh 

INAPPLICABLE

https://github.com/folio-org/edge-dcb/blob/master/descriptors/ModuleDescriptor-template.json

DONE

17

 If a module provides interfaces intended to be consumed by other FOLIO Modules, they must be defined in the Module Descriptor "provides" section

 

@Adesh Singh 

INAPPLICABLE

https://github.com/folio-org/edge-dcb/blob/master/descriptors/ModuleDescriptor-template.json

DONE

18

 All API endpoints are documented in RAML or OpenAPI

 

@Adesh Singh 

ACCEPTABLE

https://github.com/folio-org/edge-dcb/blob/master/src/main/resources/swagger.api/edge-dcb.yaml

DONE

19

 All API endpoints protected with appropriate permissions as per the following guidelines and recommendations, e.g. avoid using *.all permissions, all necessary module permissions are assigned, etc.

 

@Vignesh Kalyanasundaram 

INAPPLICABLE

There are no endpoints defined in module descriptor.

https://github.com/folio-org/edge-dcb/blob/master/descriptors/ModuleDescriptor-template.json

DONE

20

 Module provides reference data (if applicable), e.g. if there is a controlled vocabulary where the module requires at least one value

For edge module, there are no prerequisites data. 

@Vignesh Kalyanasundaram 

INAPPLICABLE

 

 

21

 If provided, integration (API) tests must be written in an officially approved technology

Code needs to be commited

@Vignesh Kalyanasundaram 

ACCEPTABLE

 

In Progress

22

 Data is segregated by tenant at the storage layer

 

@Magzhan Artykov 

INAPPLICABLE

 

 

23

 The module doesn't access data in DB schemas other than its own and public

 

@Magzhan Artykov 

INAPPLICABLE

 

 

24

 The module responds with a tenant's content based on x-okapi-tenant header

For edge module, only apikey is needed.

@Vignesh Kalyanasundaram 

INAPPLICABLE

 

DONE

25

 Standard GET /admin/health endpoint returning a 200 response

Need to check list of endpoints needs to be added in addition to health

exposure:
include:health,info,loggers
System JIRA01505d01-b853-3c2e-90f1-ee9b165564fcEDGEDCB-12

@Vignesh Kalyanasundaram 

ACCEPTABLE

Module have the spring boot actuator dependency and health endpoint is enabled. It is accessible in local but unable to test it in rancher. 

https://github.com/folio-org/edge-dcb/blob/master/src/main/resources/application.yml#L23

https://github.com/folio-org/edge-dcb/blob/master/pom.xml#L100

In Progress

26

 High Availability (HA) compliant

 

@Magzhan Artykov 

 

 

In Progress

27

 Module only uses infrastructure / platform technologies on the officially approved technologies list.

 

@Dmytro Bykov 

ACCEPTABLE

DR-000037 - TESTCONTAINERS_POSTGRES_IMAGE

DONE