Publisher configuration examples for each target: - publish-github.yaml - GitHub Releases (foundation) - publish-npm.yaml - npm binary wrapper - publish-homebrew.yaml - Homebrew formula + tap - publish-scoop.yaml - Scoop manifest (Windows) - publish-aur.yaml - AUR PKGBUILD (Arch Linux) - publish-chocolatey.yaml - Chocolatey NuSpec (Windows) - publish-docker.yaml - Multi-arch containers - publish-linuxkit.yaml - Immutable images - publish-all.yaml - All publishers combined Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
68 lines
1.4 KiB
YAML
68 lines
1.4 KiB
YAML
# Example: All Publishers Combined
|
|
# Use in .core/release.yaml publishers array
|
|
|
|
publishers:
|
|
# 1. GitHub - always first (others reference these artifacts)
|
|
- type: github
|
|
prerelease: false
|
|
draft: false
|
|
|
|
# 2. npm - JavaScript ecosystem
|
|
- type: npm
|
|
package: "@myorg/mycli"
|
|
access: public
|
|
|
|
# 3. Homebrew - macOS/Linux
|
|
- type: homebrew
|
|
tap: myorg/homebrew-tap
|
|
official:
|
|
enabled: true
|
|
output: dist/homebrew
|
|
|
|
# 4. Scoop - Windows
|
|
- type: scoop
|
|
bucket: myorg/scoop-bucket
|
|
official:
|
|
enabled: true
|
|
output: dist/scoop
|
|
|
|
# 5. AUR - Arch Linux
|
|
- type: aur
|
|
maintainer: "Your Name <your@email.com>"
|
|
|
|
# 6. Chocolatey - Windows enterprise
|
|
- type: chocolatey
|
|
push: false
|
|
|
|
# 7. Docker - Containers
|
|
- type: docker
|
|
registry: ghcr.io
|
|
image: myorg/mycli
|
|
platforms:
|
|
- linux/amd64
|
|
- linux/arm64
|
|
tags:
|
|
- latest
|
|
- "{{.Version}}"
|
|
|
|
# 8. LinuxKit - Immutable infrastructure
|
|
- type: linuxkit
|
|
config: .core/linuxkit/server.yml
|
|
formats:
|
|
- iso
|
|
- qcow2
|
|
- docker
|
|
platforms:
|
|
- linux/amd64
|
|
- linux/arm64
|
|
|
|
# Required environment variables:
|
|
# GITHUB_TOKEN - via gh CLI auth
|
|
# NPM_TOKEN - npm publish
|
|
# CHOCOLATEY_API_KEY - if push: true
|
|
#
|
|
# Required tools:
|
|
# gh - GitHub CLI
|
|
# npm - Node package manager
|
|
# docker - Docker with buildx
|
|
# linuxkit - LinuxKit CLI
|