Core DTE Modules

SQAaaS GitHub Actions

Description

Trigger SQAaaS quality assessment service from GitHub actions

Integrate interTwin’s GitHub organisation with the SQAaaS platform for software quality (incl. workflow and model code)

Release Notes

The current release includes two GitHub actions (sqaaas-assessment-action and sqaaas-step-action) that enable the automated assessment of source code, including workflow and model code, by triggering the SQAaaS platform. More precisely, the main action (sqaaas-assessment-action) is in charge of interacting with the SQAaaS API, running the appropriate HTTP requests to conduct the source code assessment. As an output of this action, a summary containing the quality criteria being analysed is provided, and, in the event that a certain level of these criteria has been fulfilled, the corresponding digital badge that recognizes those achievements.

As a complement, the step action (sqaaas-step-action) adds the capability to define customised steps as part of the evaluation of a quality criterion within the SQAaaS source code assessment. This is required, for instance, for the testing criteria, where diverse testing frameworks might be used (e.g. Python’s pytest). Additionally, this action serves the purpose of covering pre/post requirements that might be needed as part of the quality criteria validation. An example could be setting up the environment as a ‘pre’ condition before proceeding with the actual testing process (e.g. following the Python example: conda, virtualenv, etc.).

Future Plans

Extend the main GitHub action (sqaaas-assessment-action) to cope with other types of quality assessments currently provided by the SQAaaS platform, in particular the validation of FAIR principles for data.