# CI templates for R2DevOps open source catalog

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://lab.frogg.it/dorianturba/r2devops_catalog/-/blob/main/LICENSE)
[![Pipeline](https://lab.frogg.it/dorianturba/r2devops_catalog/badges/main/pipeline.svg)](https://lab.frogg.it/dorianturba/r2devops_catalog/-/pipelines)
[![Markdown: pymarkdown](https://img.shields.io/badge/%20markdown-pymarkdown-%231674b1?style=flat&labelColor=ef8336)](https://github.com/jackdewinter/pymarkdown)
[![Mattermost-R2DevopsCatalog](https://img.shields.io/badge/Mattermost-R2DevopsCatalog-%2379eb00?style=flat&logo=mattermost)](https://chat.froggit.fr/signup_user_complete/?id=e6r8p645fbbut8wubbdph9ot9w&sbr=su)

This repository contains CI templates dedicated to Python software testing for the
R2DevOps open source catalog.

## Purpose

The CI templates in this repository are intended for integrating Python software testing
tools with your GitLab projects. They provide streamlined configurations for tools
like `pytest` and `mypy`.

## Usage

To utilize these templates in your GitLab projects:

1. Navigate to
   the [r2devops template marketplace](https://r2devops.io/dashboard/marketplace?search=r2_metadata),
2. Choose the template you want,
3. Paste the "Quick use" snippet into your GitLab CI configuration (`.gitlab-ci.yml`).

For example, to use the `pytest` template:

```yaml
stages:
    - test

include:
    -   remote: 'https://api.r2devops.io/job/r/gitlab/dorianturba/r2devops_catalog/r2_metadata/pytest@latest.yaml'
```

## Contributions

We welcome contributions from the community! For guidelines on contributing, please
refer to the [CONTRIBUTING.md](CONTRIBUTING.md) file.

## Prerequisites

To use the templates from this repository, ensure that you have at least GitLab
version `15.10.7`.

## Directory Structure

- `r2_metadata` - Contains the R2DevOps metadata files.
- `templates` - Contains the CI templates.
- `test` - Contains test projects used to test each template.