Add .deb packaging, GitHub Actions CI/CD, and release workflows
CI / test (push) Failing after 17m30s

- Makefile: add 'deb' and 'release' targets; fix migrate/create syntax
- scripts/build-deb.sh: build .deb with systemd unit, postinst/prerm/postrm
- .github/workflows/ci.yml: go build, test, lint on PR/push to main
- .github/workflows/release.yml: multi-platform build (linux/darwin/windows
  × amd64/arm64), .deb for Linux, tarballs, draft GitHub Release on tag v*
- README.md: add CI/Release badges, Install section with .deb and binary
  release instructions
This commit is contained in:
2026-07-30 12:42:10 -04:00
parent 4c9ed3c24b
commit f88b8e099b
5 changed files with 367 additions and 11 deletions
+53 -7
View File
@@ -1,5 +1,8 @@
# LlamaLink
[![CI](https://github.com/llamalink/llamalink/actions/workflows/ci.yml/badge.svg)](https://github.com/llamalink/llamalink/actions/workflows/ci)
[![Release](https://img.shields.io/github/v/release/llamalink/llamalink?include_prereleases&label=latest)](https://github.com/llamalink/llamalink/releases/latest)
**API Gateway en Go** para ejecutar modelos de lenguaje (LLMs) de forma local usando **llama.cpp**, con autenticación por API keys, rate limiting, cuotas de uso y panel de administración Vue 3.
## Características
@@ -105,6 +108,46 @@ docker compose -f deploy/docker-compose.yml up -d
ADMIN_TOKEN=mi-token-secreto docker compose -f deploy/docker-compose.yml up -d
```
## Install
### Binary releases (all platforms)
Download pre-built binaries from [GitHub Releases](https://github.com/llamalink/llamalink/releases):
```bash
# Linux/macOS/Windows — pick your arch
curl -L https://github.com/llamalink/llamalink/releases/latest/download/llamalink-linux-amd64.tar.gz | tar -xz
./llamalink
```
### .deb package (Debian/Ubuntu)
```bash
# Download latest .deb
curl -L https://github.com/llamalink/llamalink/releases/latest/download/llamalink_VERSION_amd64.deb \
-o llamalink.deb
# Install
sudo dpkg -i llamalink.deb
# Configure
sudo nano /etc/llamalink/env
sudo systemctl enable llamalink
sudo systemctl start llamalink
```
### Build from source
```bash
git clone https://github.com/llamalink/llamalink.git
cd llamalink
make deps build
# Or with .deb package
make deb
sudo dpkg -i dist/llamalink_*.deb
```
## Admin Panel
Accede a `http://localhost:8000/admin/` para el panel Vue 3:
@@ -139,14 +182,17 @@ Accede a `http://localhost:8000/admin/` para el panel Vue 3:
## Makefile
```bash
make build # Build binario
make run # Build y ejecutar
make dev # go run (desarrollo)
make test # Tests
make lint # golangci-lint
make clean # Limpiar build
make migrate/up # Correr migrations
make build # Build binario
make run # Build y ejecutar
make dev # go run (desarrollo)
make test # Tests
make lint # golangci-lint
make clean # Limpiar build
make migrate/up # Correr migrations
make frontend/build # Build Vue SPA
make deb # Build .deb package (Linux, requires dpkg-deb)
make release # Build .deb + local release artifacts
make docker/build # Build imagen Docker
```
## Arquitectura