# yaml-language-server: $schema=https://goreleaser.com/static/schema.json # vim: set ts=2 sw=2 tw=0 fo=cnqoj version: 2 project_name: mcp-filepuff # Split CGO builds by full target (GOOS+GOARCH), not just GOOS. # Each release matrix runner builds natively for exactly one target via the # GGOOS/GGOARCH filters set in workflow-prepare.sh. Without `by: target` the # split partitions by GOOS only, so a single linux runner would try to build # both amd64 and arm64 — and native gcc cannot assemble the other arch's CGO # runtime (gcc_arm64.S errors), breaking the release. partial: by: target before: hooks: - go mod tidy - go generate ./... builds: - id: mcp-filepuff-cgo main: ./cmd/mcp-filepuff binary: mcp-filepuff env: - CGO_ENABLED=1 flags: - -trimpath ldflags: - -s -w - -X main.version={{.Version}} - -X main.commit={{.Commit}} - -X main.date={{.Date}} goos: - linux - darwin - windows goarch: - amd64 - arm64 ignore: - goos: windows goarch: arm64 archives: - id: default formats: - tar.gz name_template: >- {{ .ProjectName }}_ {{- .Version }}_ {{- .Os }}_ {{- .Arch }} files: - LICENSE - README.md format_overrides: - goos: windows formats: - zip checksum: name_template: 'checksums.txt' snapshot: version_template: "{{ incpatch .Version }}-next" changelog: sort: asc filters: exclude: - '^docs:' - '^test:' - '^chore:' - Merge pull request - Merge branch release: github: owner: lukaszraczylo name: filepuff-mcp draft: false prerelease: auto name_template: "v{{.Version}}" header: | ## MCP Filepuff v{{.Version}} AST-aware file operations and LSP integration for Claude Code. ### Installation ```bash curl -sSL https://raw.githubusercontent.com/lukaszraczylo/filepuff-mcp/main/scripts/install.sh | bash ``` dockers: - image_templates: - "ghcr.io/lukaszraczylo/filepuff-mcp:{{ .Tag }}" - "ghcr.io/lukaszraczylo/filepuff-mcp:latest" ids: - mcp-filepuff-cgo use: buildx build_flag_templates: - "--platform=linux/amd64" goarch: amd64 goos: linux dockerfile: Dockerfile signs: - cmd: cosign signature: "${artifact}.sigstore.json" args: - sign-blob - "--bundle=${signature}" - "${artifact}" - "--yes" artifacts: checksum output: true docker_signs: - cmd: cosign artifacts: manifests output: true args: - "sign" - "--yes" - "${artifact}"