Variáveis de Template

BackupAlly suporta variáveis dinâmicas em qualquer campo de configuração.

Sintaxe

${variável}
$variável

Variáveis Disponíveis

Servidor

Variável Descrição Exemplo
$hostname Nome do servidor server-prod-01
$servername Alias de hostname server-prod-01

Task e Target

Variável Descrição Exemplo
$target ID da task mysql-prod
$target_name Nome da task MySQL Production
$database_name Nome do banco atual users_db

Data

Variável Descrição Exemplo
$year Ano (4 dígitos) 2026
$month Mês (2 dígitos) 02
$monthtext Nome do mês February
$monthshort Mês abreviado Feb
$day Dia (2 dígitos) 11
$dayweek Dia da semana (1-7) 3
$daytext Nome do dia Wednesday
$dayshort Dia abreviado Wed
$date Data compacta 20260211
$date_iso Data ISO 2026-02-11

Hora

Variável Descrição Exemplo
$hour Hora (2 dígitos) 15
$minute Minuto (2 dígitos) 30
$second Segundo (2 dígitos) 45
$time Hora compacta 153045
$time_colon Hora formatada 15:30:45

Combinadas

Variável Descrição Exemplo
$datetime Data e hora 20260211_153045
$timestamp Unix timestamp 1739284245
$uuid UUID único 550e8400-e29b-41d4-...

Pattern Resolution

Secrets

Referencia valores do secrets store:

password = "${secret:mysql_password}"
api_key = "${secret:stripe_key}"

Variáveis de Ambiente

Referencia variáveis de ambiente do sistema:

home_dir = "${env:HOME}"
api_url = "${env:API_URL}"

Arquivos

Lê conteúdo de arquivos:

certificate = "${file:/etc/ssl/cert.pem}"

Exemplos de Uso

Path de Storage

[[storage]]
driver = "s3"
path = "backups/${hostname}/${target}/${database_name}/${year}/${month}/${day}"
# Resultado: backups/server-prod-01/mysql-prod/users_db/2026/02/11

Organização por Dia da Semana

[[storage]]
driver = "s3"
path = "weekly/${dayshort}/${target}_${datetime}"
# Resultado: weekly/Wed/mysql-prod_20260211_153045

Nome de Arquivo Único

[[storage]]
path = "backups/${target}_${timestamp}.ally"
# Resultado: backups/mysql-prod_1739284245.ally

Credenciais Seguras

[target]
user = "${secret:db_user}"
password = "${secret:db_password}"

[[storage]]
access_key = "${secret:aws_access_key}"
secret_key = "${secret:aws_secret_key}"

Configuração por Ambiente

[target]
host = "${env:DB_HOST}"
port = "${env:DB_PORT}"
database = "${env:DB_NAME}"

Notas

  • Variáveis não resolvidas causam erro de validação
  • Use backupally task validate para verificar
  • Secrets não aparecem em logs
  • Variáveis são resolvidas no momento da execução
By Borlot.com.br on 11/02/2026