generalbots/.forgejo/workflows/botserver-v2.yaml
Rodrigo Rodriguez (Pragmatismo) 741ce488f8
Some checks failed
BotServer CI/CD v2 / build (push) Has been cancelled
Fix: Usa git workspace com submodules (v6)
- Repositório raiz é 'gb' (não 'botserver')
- Usa 'git submodule update --init' para sincronizar submodules
- Build usa 'cargo build -p botserver' (workspace mode)
- Cargo.toml do workspace fica em /opt/gbo/work/botserver/
- Código do botserver fica em /opt/gbo/work/botserver/botserver/
- Adiciona logging para debug do Cargo.toml
- Hash buster v6 força reavaliação completa
2026-04-18 17:09:03 -03:00

75 lines
2.2 KiB
YAML

# HASH-BUSTER-20260418-UNIQUE-ID-v6
# WORKFLOW COM SUBMODULES - Usa git submodule update
name: BotServer CI/CD v2
on:
push:
branches: [main]
pull_request:
branches: [main]
env:
SCCACHE_DIR: /opt/gbo/work/botserver/.sccache
CARGO_TARGET_DIR: /opt/gbo/work/botserver/target
jobs:
build:
runs-on: gbo
steps:
- name: Setup Isolado
run: |
echo "=== Setup Inicial ==="
mkdir -p $SCCACHE_DIR
mkdir -p $CARGO_TARGET_DIR
pkill -9 sccache || true
echo "Setup concluído."
- name: Setup Repository with Submodules
run: |
echo "=== Configurando Repositório com Submodules ==="
# Criar diretório base se não existir
mkdir -p /opt/gbo/work/botserver
# Verificar se já é um repositório git
if [ ! -d /opt/gbo/work/botserver/.git ]; then
echo "Repositório não existe, clonando repositório gb..."
cd /opt/gbo/work/botserver
git init
git remote add origin https://alm.pragmatismo.com.br/GeneralBots/gb.git
git fetch --depth 1 origin main
git reset --hard origin/main
else
echo "Repositório já existe, atualizando..."
cd /opt/gbo/work/botserver
git pull origin main
fi
# Inicializar/atualizar submodules (botserver, botlib, etc)
echo "Atualizando submodules..."
git submodule update --init --recursive --depth 1
echo "Repositório configurado com submodules."
- name: Build Debug
run: |
echo "=== Compilando (Debug) ==="
cd /opt/gbo/work/botserver
# Verificar se Cargo.toml do workspace existe
if [ ! -f Cargo.toml ]; then
echo "ERRO: Cargo.toml não encontrado em $(pwd)"
ls -la
exit 1
fi
echo "Workspace Cargo.toml encontrado em $(pwd)/Cargo.toml"
echo "Conteúdo do Cargo.toml:"
head -20 Cargo.toml
# Build específico para botserver usando workspace
echo "Executando: cargo build -p botserver"
cargo build -p botserver
echo "Build finalizado."
ls -lh target/debug/botserver