golang 一键跨平台发布-goreleaser

goreleaser

logo
goreleaser 是一个golnag的交叉编译工具、并且支持发布到GitHub、GitLab 和 Gitea、创建 Docker 镜像和清单、创建 Linux 包和 Homebrew Tap git 官网: 官网

使用

1.初始化配置 进入到项目配置文件下执行命令

goreleaser init

命令执行完成后将会在项目下创建 .goreleaser.yml文件
2.设置项目名称
首先打开.goreleaser.yml文件在第一行加入 更多配置请前往:更多配置

# Make sure to check the documentation at http://goreleaser.com
project_name: 项目名称
before:
  hooks:
    # You may remove this if you don't use go modules.
    - go mod tidy
    # you may remove this if you don't need go generate
    - go generate ./...
builds:
  - env:
      - CGO_ENABLED=0
    goos:
      - linux
      - windows
      - darwin
archives:
  - replacements:
      darwin: Darwin
      linux: Linux
      windows: Windows
      386: i386
      amd64: x86_64
checksum:
  name_template: 'checksums.txt'
snapshot:
  name_template: "{{ incpatch .Tag }}-next"
changelog:
  sort: asc
  filters:
    exclude:
      - '^docs:'
      - '^test:'

3.发布项目

goreleaser release --snapshot --skip-publish --rm-dist

命令执行完后将会在项目目录生成dist下生成各个系统下的执行文件

├─Attack
├─Contolr
├─dist
│  ├─cc_darwin_amd64
│  ├─cc_darwin_arm64
│  ├─cc_linux_386
│  ├─cc_linux_amd64
│  ├─cc_linux_arm64
│  ├─cc_windows_386
│  └─cc_windows_amd64
└─Proxy

运行发布后的程序

版权声明:本文为小幻博客「小幻」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://52xhuan.cn/238.html
THE END
分享
二维码
打赏
< <上一篇
下一篇>>