No description
Find a file
Codex e9ac12a412 chore(go-devops): annotate external deps in go.mod per AX-6
Added `// Note:` trailers to all three non-dappco.re direct external
dependencies in go.mod:
- code.gitea.io/sdk/gitea: Gitea SDK for repo/automation API
- github.com/kluctl/go-embed-python: CPython embedding for Ansible
- gopkg.in/yaml.v3: YAML parser for Ansible inventory/playbook

Closes tasks.lthn.sh/view.php?id=755

Co-authored-by: Codex <noreply@openai.com>
2026-04-24 20:12:28 +01:00
.claude-plugin fix(plugin): remove invalid commands schema from plugin.json 2026-03-13 10:54:45 +00:00
.core chore: add .core/ build and release configs 2026-03-06 18:52:36 +00:00
cmd chore(go-devops): migrate module path to dappco.re/go/devops 2026-04-24 20:10:17 +01:00
deploy chore(go-devops): migrate module path to dappco.re/go/devops 2026-04-24 20:10:17 +01:00
devkit fix(go-devops): replace testify with stdlib testing patterns (AX-6) 2026-04-24 18:51:16 +01:00
docs docs: remove completed plan files 2026-03-14 08:20:09 +00:00
locales feat(dev): show workflow templates in list 2026-04-01 09:48:48 +00:00
playbooks feat: add Ansible playbooks and design plans from CLI 2026-02-21 21:16:52 +00:00
snapshot fix(go-devops): replace testify with stdlib testing patterns (AX-6) 2026-04-24 18:51:16 +01:00
.gitignore chore: add .core/ and .idea/ to .gitignore 2026-03-15 10:17:49 +00:00
CLAUDE.md chore: migrate to dappco.re vanity import path 2026-03-22 00:04:10 +00:00
go.mod chore(go-devops): annotate external deps in go.mod per AX-6 2026-04-24 20:12:28 +01:00
go.sum fix: migrate module paths from forge.lthn.ai to dappco.re 2026-04-07 12:46:35 +01:00
README.md docs: add README with quick start and docs links 2026-02-20 15:11:26 +00:00

go-devops

Infrastructure and build automation library for the Lethean ecosystem. Provides a native Go Ansible playbook executor (~30 modules over SSH without shelling out), a multi-target build pipeline with project type auto-detection (Go, Wails, Docker, C++, LinuxKit, Taskfile), code signing (macOS codesign, GPG, Windows signtool), release orchestration with changelog generation and eight publisher backends (GitHub Releases, Docker, Homebrew, npm, AUR, Scoop, Chocolatey, LinuxKit), Hetzner Cloud and Robot API clients, CloudNS DNS management, container/VM management via QEMU and Hyperkit, an OpenAPI SDK generator (TypeScript, Python, Go, PHP), and a developer toolkit with cyclomatic complexity analysis, vulnerability scanning, and coverage trending.

Module: forge.lthn.ai/core/go-devops Licence: EUPL-1.2 Language: Go 1.25

Quick Start

import (
    "forge.lthn.ai/core/go-devops/ansible"
    "forge.lthn.ai/core/go-devops/build"
    "forge.lthn.ai/core/go-devops/release"
)

// Run an Ansible playbook over SSH
pb, _ := ansible.ParsePlaybook("playbooks/deploy.yml")
inv, _ := ansible.ParseInventory("inventory.yml")
pb.Run(ctx, inv)

// Build and release
artifacts, _ := build.Build(ctx, ".")
release.Publish(ctx, releaseCfg, false)

Documentation

  • Architecture — Ansible integration, build pipeline, infrastructure APIs, release workflow, devkit, SDK generation
  • Development Guide — building, testing, coding standards
  • Project History — completed phases and known limitations

Build & Test

go test ./...
go test -race ./...
go vet ./...
go build ./...

Licence

European Union Public Licence 1.2 — see LICENCE for details.