# GitLab CI examples

> Copy-paste RealHW jobs for common hardware targets.

Source: https://docs.realhw.dev/gitlab/gitlab-ci-examples/
Documentation index: https://docs.realhw.dev/llms.txt

## Generic Linux

```yaml
unit-tests:
  stage: test
  tags:
    - saas-linux-medium-amd64
  script:
    - cargo test
```

## ARM64

```yaml
arm64-tests:
  stage: test
  tags:
    - saas-linux-medium-arm64
  script:
    - uname -m
    - ./test-arm64.sh
```

## NVIDIA GPU

```yaml
gpu-tests:
  stage: test
  tags:
    - saas-linux-large-amd64
    - gpu:nvidia
    - gpu:count:1
  script:
    - nvidia-smi
    - ./test-gpu.sh
```

## 25G NIC

```yaml
xdp-tests:
  stage: test
  tags:
    - saas-linux-large-amd64
    - nic:tier:25g
    - nic:driver:mlx5_core
  variables:
    HW_NIC_TIER: "25g"
  script:
    - ./run-xdp-tests.sh
```

## SR-IOV VF

```yaml
sriov-tests:
  stage: test
  tags:
    - saas-linux-large-amd64
    - nic:tier:25g
  variables:
    HW_NIC_TIER: "25g"
    HW_SRIOV_VF_COUNT: "1"
  script:
    - ./run-sriov-tests.sh
```

## Hugepages

```yaml
hugepage-tests:
  stage: test
  tags:
    - saas-linux-large-amd64
  variables:
    HW_HUGEPAGE_BYTES: "1073741824"
    HW_NUMA_POLICY: "single-node"
  script:
    - ./run-hugepage-tests.sh
```
