This repository has been archived on 2026-03-27. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
mcdeploy/CLAUDE.md
Kyle Isom 8cd32cbb1c Initial implementation of mcdeploy deployment tool
Single Go binary with five commands:
- build: podman build locally with registry tags + git version
- push: podman push to MCR
- deploy: SSH pull/stop/rm/run on target node
- cert renew: issue TLS cert from Metacrypt via REST API
- status: show container status on a node

Config-driven via TOML service registry describing images,
Dockerfiles, container configs per node. Shells out to podman
for container operations and ssh for remote access.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 00:01:15 -07:00

801 B

CLAUDE.md

Project Overview

mcdeploy is the Metacircular deployment CLI tool. It builds, pushes, and deploys container images to nodes, manages TLS certificates via Metacrypt, and checks container status.

Build Commands

go build .        # build the binary
go vet ./...      # vet

Architecture

  • Single binary — all code in package main
  • Config — TOML-based (mcdeploy.toml), defines services, images, nodes, and containers
  • Commandsbuild, push, deploy, cert renew, status
  • Exec model — shells out to podman, ssh, scp, and git for all operations
  • No auth — relies on SSH keys and existing podman/registry auth
  • Module path: git.wntrmute.dev/kyle/mcdeploy
  • Dependencies: cobra (CLI), go-toml/v2 (config)