diff --git a/.gitignore b/.gitignore index bd3b607..de2890b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ sem bin/ cli +dist diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 0000000..e85c652 --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,39 @@ +project_name: cli +before: + hooks: + - go get ./... +builds: +- env: + - CGO_ENABLED=0 + goos: + - linux + - darwin + goarch: + - 386 + - amd64 +archive: + name_template: '{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}' + replacements: + darwin: Darwin + linux: Linux + 386: i386 + amd64: x86_64 +checksum: + name_template: '{{ .ProjectName }}_checksums.txt' +changelog: + sort: asc + filters: + exclude: + - '^docs:' + - '^test:' + - Merge pull request + - Merge branch +brew: + github: + owner: semaphoreci + name: homebrew-tap + folder: Formula + homepage: https://semaphoreci.com + description: Semaphore 2.0 command line interface. + test: | + system "#{bin}/sem version" diff --git a/.semaphore/brewrelease.yml b/.semaphore/brewrelease.yml new file mode 100644 index 0000000..07c3c48 --- /dev/null +++ b/.semaphore/brewrelease.yml @@ -0,0 +1,24 @@ +version: "v1.0" +name: Release +agent: + machine: + type: e1-standard-2 + os_image: ubuntu1804 +blocks: + - name: "Release" + task: + env_vars: + - name: GO111MODULE + value: "on" + secrets: + - name: sem-robot-ghtoken + prologue: + commands: + - sem-version go 1.11 + - "export GOPATH=~/go" + - "export PATH=/home/semaphore/go/bin:$PATH" + - checkout + jobs: + - name: Sem Cli + commands: + - curl -sL https://git.io/goreleaser | bash -s -- --rm-dist diff --git a/.semaphore/semaphore.yml b/.semaphore/semaphore.yml index 5f8e4b1..e381229 100755 --- a/.semaphore/semaphore.yml +++ b/.semaphore/semaphore.yml @@ -38,3 +38,10 @@ promotions: - name: Release Stable pipeline_file: "stable.yml" + + - name: chmrelease + pipeline_file: brewrelease.yml + auto_promote_on: + - result: passed + branch: + - "^refs/tags/v*"