Python support
This MR adds in generic python support for building and running unit tests, as well as support for using FOSSA to generate attributions and scan for license compatibility.
To use this, services should include build/python.yml
instead of build/maven.yml
. For the moment, these choices are mutually exclusive. I won't put any efforts towards making them concurrent until we have a project that really needs it. Small python projects inside otherwise-maven-centric builds tend to work ok -- but they won't execute unit tests or be able to scan multiple requirement files.
Wellbore Domain Services was used as the basis for exercising these pipeline components. See osdu/platform/domain-data-mgmt-services/wellbore/wellbore-domain-services!3 (merged)
The include for the FOSSA scanner now needs to specify maven vs. python. To help ease the transition, the unspecified fossa.yml
file automatically chooses fossa-maven.yml
, but adds in a deprecation warning explaining that the main .gitlab-ci.yml
file should be updated when possible. A branch of Storage demonstrates the deprecation warning. Note: This test branch doesn't exercise the full pipeline, only the basic parts.