Skip to content
edgesync Artifact [38a1c52773]
Login

Artifact [38a1c52773]

Artifact 38a1c5277365b0450971d5c6c0a6c7ca4d896e57469e25fb62dd4f9c36c883fb:


# GoReleaser config for edgesync.
# https://goreleaser.com
#
# Cross-compiles edgesync for macOS and Linux on amd64/arm64, archives
# as tarballs, generates checksums, publishes a GitHub release, and
# updates the Homebrew formula in danmestas/homebrew-tap.

version: 2

before:
  hooks:
    - go mod tidy

builds:
  - id: edgesync
    main: ./cmd/edgesync
    binary: edgesync
    env:
      - CGO_ENABLED=0
    flags:
      - -trimpath
      - -buildvcs=false
    ldflags:
      - -s -w
      - -X main.version={{.Version}}
      - -X main.commit={{.ShortCommit}}
      - -X main.date={{.CommitDate}}
    goos:
      - linux
      - darwin
    goarch:
      - amd64
      - arm64

archives:
  - id: edgesync
    formats: [tar.gz]
    name_template: >-
      {{ .ProjectName }}_
      {{- .Version }}_
      {{- .Os }}_
      {{- if eq .Arch "amd64" }}x86_64
      {{- else }}{{ .Arch }}{{ end }}
    files:
      - LICENSE*
      - README*

checksum:
  name_template: 'checksums.txt'
  algorithm: sha256

snapshot:
  version_template: "{{ incpatch .Version }}-next"

changelog:
  sort: asc
  use: github
  filters:
    exclude:
      - '^docs:'
      - '^chore:'
      - '^test:'
      - 'merge conflict'
      - Merge pull request
      - Merge remote-tracking branch
      - Merge branch

release:
  github:
    owner: danmestas
    name: EdgeSync
  draft: false
  prerelease: auto
  name_template: "{{.ProjectName}} v{{.Version}}"
  footer: |
    **Full Changelog**: https://github.com/danmestas/EdgeSync/compare/{{ .PreviousTag }}...{{ .Tag }}

    ## Install

    ### Homebrew (macOS / Linux)
    ```bash
    brew install danmestas/tap/edgesync
    ```

    ### Go
    ```bash
    go install github.com/danmestas/EdgeSync/cmd/edgesync@{{ .Tag }}
    ```

    ### Direct download
    Pick a binary from the assets above for your OS/arch.

brews:
  - name: edgesync
    repository:
      owner: danmestas
      name: homebrew-tap
      token: "{{ .Env.HOMEBREW_PAT_TOKEN }}"
    directory: Formula
    homepage: https://github.com/danmestas/EdgeSync
    description: "Sync engine for distributed teams: NATS messaging or peer-to-peer Fossil sync."
    license: Apache-2.0
    install: |
      bin.install "edgesync"
    test: |
      system "#{bin}/edgesync --version"