# The kx712.yml file

Source : https://webgune.cloud/en-us/docs/kx712-yml · Mis à jour le 2026-10-27

# The kx712.yml File

`kx712.yml`, placed **at the root of the repository**, drives the CI behavior of your deployments: trigger filters and checks run before each release. It is entirely optional.

## Full example

```yaml
on:
  push:
    branches: [main]        # only react to pushes on main
    paths: [backend/**]     # ignore if no file matches

checks:                     # run BEFORE deployment
  - name: Tests
    run: npm test
  - name: Lint
    run: npm run lint
    image: node:22-alpine   # optional image (default node:22-alpine)
```

> The syntax is inspired by GitHub Actions but is **not compatible**: only the fields documented here exist.

## `on.push`: filtering triggers

| Field | Effect |
|-------|-------|
| `branches` | List of branches: a push elsewhere is ignored |
| `paths` | File patterns (`backend/**`, `*.md`…): if no modified file matches, no build |

These filters apply **only to webhooks** (GitHub push). A manual deployment from the dashboard always ignores them.

## `checks`: blocking a bad deployment

Each check is a command run in the build context, in order. **The first failure stops everything: nothing gets deployed**, the live version stays intact.

| Field | Role |
|-------|------|
| `name` | Label shown in the build logs |
| `run` | The command to run |
| `image` | Container image for the check (default `node:22-alpine`) |

Up to **10 checks** per file. Each check's output appears in the deployment logs.

```yaml
checks:
  - name: Tests Python
    run: pytest
    image: python:3.12-alpine
```

## Good to know

- **Missing or invalid file → ignored**: deployment proceeds normally, without checks (the parsing error is visible on the platform side). Validate your YAML after editing it.
- The file is read **at the deployed commit**: changing the checks in a commit applies starting from that same commit.
- For heavy tests or multi-version matrices, keep your usual CI (GitHub Actions) running in parallel. `kx712.yml` is the **last safety net** before going live, not a general-purpose CI.
