# CI-Services --- This framework provides various services for the GitLab CI regarding to software quality. ## Description This software provides a docker image, which provides various services around software quality. Its goal is to help researchers, developers and [RSEs](https://de-rse.org/en/) develop software with better quality. Currently there are two ways to run the services. Either via the [GitLab CI/CD](https://docs.gitlab.com/ee/ci/) (recommended) or a local run. > **Example:** You can find a full report of all available services [here](meta/ci-services-report.md) **Current available services:** * Programming Language Detection * License Check * Report Generation * List Authors --- ## Requirements The software you want to run the services on **must** be a [git](https://git-scm.com/) repository! **via GitLab CI/CD** * available [GitLab Runner](https://docs.gitlab.com/runner/) with `ci-services` [tag](https://docs.gitlab.com/ee/ci/runners/#using-tags) and the [docker executor](https://docs.gitlab.com/runner/executors/docker.html) **local usage** * [docker](https://www.docker.com/) >= 19.03.1 --- ## Usage Some of the services require a config file. To see which, take a look at the [service description](doc/doc_service_description.md) Running the services via Gitlab CI/CD is the recommended solution. It keeps the report up to date, every time the project is changed. You can read more about how it is set up [here](doc/doc_usage_ci.md). Running it on you local machine is easier to set up. Therefore it must be triggered manually before every release. You can read more about how it is set up [here](doc/doc_usage_local.md). --- ## Service Description You can find a detailed description of all implemented services [here](doc/doc_service_description.md). --- ## Further planned features * license check * R * Java * Fortran * JavaScript * C, C++ * Matlab * license header check * license generation * comment check * check for necessary files * generate necessary files * check if tests exist * credential check * DOI request * curate meta data ---