1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-03-21 21:07:19 +02:00
goreleaser/www/docs/ci/codefresh.md
Carlos Alexandro Becker da22bf8eb8
feat: use go 1.15 (#1759)
* Update to Go 1.15 image (#1758)

* feat: use go 1.15

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

* fix: remove darwin_386

Signed-off-by: Carlos Alexandro Becker <caarlos0@gmail.com>

Co-authored-by: Simon Jürgensmeyer <sj14@users.noreply.github.com>
2020-08-16 11:29:44 -03:00

46 lines
1.3 KiB
Markdown

# Codefresh
Codefresh uses Docker based pipelines where all steps must be Docker containers.
Using GoReleaser is very easy via the
[existing Docker image](https://hub.docker.com/r/goreleaser/goreleaser/).
Here is an example pipeline that builds a Go application and then uses
GoReleaser.
```yaml
version: '1.0'
stages:
- prepare
- build
- release
steps:
main_clone:
title: 'Cloning main repository...'
type: git-clone
repo: '${{CF_REPO_OWNER}}/${{CF_REPO_NAME}}'
revision: '${{CF_REVISION}}'
stage: prepare
BuildMyApp:
title: Compiling go code
stage: build
image: 'golang:1.15'
commands:
- go build
ReleaseMyApp:
title: Creating packages
stage: release
image: 'goreleaser/goreleaser'
commands:
- goreleaser --rm-dist
```
You need to pass the variable `GITHUB_TOKEN` in the Codefresh UI that
contains credentials to your Github account or load it from
[shared configuration](https://codefresh.io/docs/docs/configure-ci-cd-pipeline/shared-configuration/).
You should also restrict this pipeline to run only on tags when you add
[git triggers](https://codefresh.io/docs/docs/configure-ci-cd-pipeline/triggers/git-triggers/)
on it.
More details can be found in the
[GoReleaser example page](https://codefresh.io/docs/docs/learn-by-example/golang/goreleaser/).