From 9e96138916391d3406813ba2cf0c3b9fa775c918 Mon Sep 17 00:00:00 2001 From: Ruben Homs Date: Fri, 6 Nov 2020 14:06:10 +0100 Subject: [PATCH] Add goreleaser for building binaries, docker image & packages --- .gitignore | 3 +-- .goreleaser.yml | 53 +++++++++++++++++++++++++++++++++++++++++++++++++ Makefile | 19 ------------------ 3 files changed, 54 insertions(+), 21 deletions(-) create mode 100644 .goreleaser.yml diff --git a/.gitignore b/.gitignore index 9510d00..26f57f5 100644 --- a/.gitignore +++ b/.gitignore @@ -3,5 +3,4 @@ # Builds opensips_exporter -.build/ -.tarballs/ \ No newline at end of file +dist \ No newline at end of file diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 0000000..a5cf02c --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,53 @@ +project_name: opensips_exporter + +builds: + - id: opensips_exporter + goos: + - linux + goarch: + - amd64 + - arm + - arm64 + - 386 + goarm: + - 5 + - 6 + - 7 + +checksum: + name_template: "{{ .ProjectName }}_sha256sums.txt" + algorithm: sha256 + +dockers: + - goos: linux + goarch: amd64 + binaries: + - opensips_exporter + image_templates: + - "voipgrid/opensips_exporter:{{ .Version }}" + - "voipgrid/opensips_exporter:latest" + skip_push: false + dockerfile: Dockerfile + build_flag_templates: + - "--label=org.label-schema.schema-version=1.0" + - "--label=org.label-schema.version={{.Version}}" + - "--label=org.label-schema.name={{.ProjectName}}" + +nfpms: + - file_name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Arch }}" + bindir: /usr/bin + vendor: VoIPGRID + homepage: https://www.voipgrid.nl + maintainer: VoIPGRID + license: Apache 2.0 + description: Simple server that scrapes OpenSIPS stats and exports them via HTTP for Prometheus consumption + formats: + - apk + - deb + - rpm + +release: + github: + owner: voipgrid + name: opensips_exporter + prerelease: auto diff --git a/Makefile b/Makefile index cb98cf0..3d03ae1 100644 --- a/Makefile +++ b/Makefile @@ -49,18 +49,6 @@ staticcheck: $(STATICCHECK) @echo ">> running staticcheck" @$(STATICCHECK) -ignore "$(STATICCHECK_IGNORE)" $(pkgs) -build: $(PROMU) - @echo ">> building binaries" - @$(PROMU) build --prefix $(PREFIX) - -tarball: $(PROMU) - @echo ">> building release tarball" - @$(PROMU) tarball --prefix $(PREFIX) $(BIN_DIR) - -docker: - @echo ">> building docker image from $(DOCKERFILE)" - @docker build --file $(DOCKERFILE) -t "$(DOCKER_IMAGE_NAME):$(DOCKER_IMAGE_TAG)" . - docker-test-build: docker build \ --tag="opensips/opensips:$(OPENSIPS_DOCKER_TAG)" \ @@ -69,13 +57,6 @@ docker-test-build: docker-test-start: docker run -p 8888:8888 -d --name $(NAME) opensips/opensips:$(OPENSIPS_DOCKER_TAG) - -$(GOPATH)/bin/promtool promtool: - @GOOS= GOARCH= $(GO) get -u github.com/prometheus/prometheus/cmd/promtool - -$(GOPATH)/bin/promu promu: - @GOOS= GOARCH= $(GO) get -u github.com/prometheus/promu - $(GOPATH)/bin/staticcheck: @GOOS= GOARCH= $(GO) get -u honnef.co/go/tools/cmd/staticcheck