.gitops.yml - Referencia
Referencia completa de todos os campos suportados.
Campos de Primeiro Nivel
| Campo | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
version |
string | Nao | Versao do formato (2.0) |
channels |
object | Nao | Canais de distribuicao |
artifacts |
list | Sim | Artefatos para upload |
docs |
list/object | Nao | Documentacao para upload |
storage |
object | Sim | Configuracao do storage |
publish |
object | Nao | Opcoes de publicacao |
github |
object | Nao | Configuracao GitHub |
metadata |
object | Nao | Metadados do projeto |
channels
channels:
stable:
branch: main
tag_pattern: "v[0-9]+.[0-9]+.[0-9]+$"
folder: ""
is_default: true
rc:
branch: dev
tag_pattern: "v[0-9]+.[0-9]+.[0-9]+-rc.[0-9]+$"
folder: "rc"
is_prerelease: true| Campo | Tipo | Descricao |
|---|---|---|
branch |
string | Branch associada |
tag_pattern |
regex | Padrao para detectar tags |
folder |
string | Subpasta no storage |
is_default |
bool | Canal padrao |
is_prerelease |
bool | Marcar como prerelease |
artifacts[]
artifacts:
- source: asset:projeto.zip:binario
destination: "{channel_path}binario"
type: binary
latest: true| Campo | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
source |
string | Sim | Origem do artefato |
destination |
string | Sim | Caminho de destino |
type |
string | Sim | binary ou zip |
latest |
bool | Nao | Atualiza latest |
versioned |
bool | Nao | Cria copia versionada |
Formatos de source
| Formato | Descricao |
|---|---|
path/file |
Arquivo do repositorio na tag |
asset:name |
Asset do GitHub Release |
asset:name.zip:inner |
Extrair de dentro de ZIP |
Placeholders em destination
| Placeholder | Descricao |
|---|---|
{channel_path} |
Pasta do canal ("" ou "rc/") |
{version} |
Versao sem v (ex: 1.2.3) |
Tipo binary
Envia o conteudo como esta, com Content-Type: application/octet-stream.
Tipo zip
Cria um ZIP contendo o artefato de origem e envia com Content-Type: application/zip.
docs[] (v2.0)
docs:
- source: README.md
destination: docs/latest/README.md
latest: true
- source: README.md
destination: docs/{version}/README.md
versioned: true| Campo | Tipo | Descricao |
|---|---|---|
source |
string | Caminho do arquivo no repo |
destination |
string | Caminho de destino |
latest |
bool | Atualiza copia latest |
versioned |
bool | Cria copia versionada |
docs (legacy)
docs:
readme: README.md
manual: MANUAL.md
changelog: CHANGELOG.mdO formato legacy ainda e suportado. O GitOps detecta automaticamente o formato.
storage
storage:
provider: b2
bucket: ccs-systems
folder_name: meu-projeto
delivery_url: https://meu-projeto.ccs.systems| Campo | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
provider |
string | Sim | b2 |
bucket |
string | Sim | Nome do bucket |
folder_name |
string | Sim | Pasta raiz no bucket |
delivery_url |
string | Sim | URL base do CDN |
Aliases: path = folder_name, public_url = delivery_url
Importante: Se folder_name for vazio, usa o nome do repo como fallback. Isso pode causar paths incorretos se o nome do repo nao corresponde a pasta desejada.
publish
publish:
auto_latest: true
preserve_versions: true
max_versions: 10
max_rc_versions: 5| Campo | Tipo | Default | Descricao |
|---|---|---|---|
auto_latest |
bool | true | Atualiza latest |
preserve_versions |
bool | true | Mantem versoes |
max_versions |
int | 10 | Max versoes stable |
max_rc_versions |
int | 5 | Max versoes RC |
upload (legacy)
upload:
versioned_folder: true
docs_folder: "docs/"
versioned_files: ["release_notes"]
latest_files: ["readme", "manual", "changelog"]Usado com o formato legacy de docs. O v2.0 com destinations explicitos nao precisa desta secao.
By Borlot.com.br on 06/03/2026