From 65115ce4c1e3d1cd1d6a101a045ca998bfa511ea Mon Sep 17 00:00:00 2001 From: pberdyuhin <78495377+pberdyuhin@users.noreply.github.com> Date: Fri, 21 May 2021 11:50:40 +0300 Subject: [PATCH] Dev (#23) Based on rhel ubi8-minimal image --- Dockerfile | 21 +++++++++++++++---- Makefile | 13 ++++++++---- README.md | 3 +++ deployment/docker-compose/docker-compose.yaml | 2 +- 4 files changed, 30 insertions(+), 9 deletions(-) diff --git a/Dockerfile b/Dockerfile index 06a9c5f..d0440db 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,21 @@ -FROM alpine:3.7 +FROM registry.access.redhat.com/ubi8/ubi-minimal ENV ANODOT_TAGS="source=prometheus-remote-write" -ADD anodot-prometheus-remote-write /go/bin/anodot-prometheus-remote-write +ARG VERSION=latest + +### Required OpenShift Labels +LABEL name="Anodot Prometheus Remote Write" \ + maintainer="support@anodot.com" \ + vendor="Anodot" \ + version=${VERSION} \ + release="1" \ + summary="https://github.com/anodot/anodot-remote-write" \ + description="Service which receives Prometheus metrics through remote_write, converts metrics and sends them into Anodot" +# Always include a software license in the default location +COPY LICENSE.md /licenses/ + +COPY anodot-prometheus-remote-write /go/bin/anodot-prometheus-remote-write # ln -s required for backward compatibility with older docker images. -RUN apk add --no-cache ca-certificates && ln -s /go/bin/anodot-prometheus-remote-write /go/bin/server +RUN ln -s /go/bin/anodot-prometheus-remote-write /go/bin/server EXPOSE 1234 -ENTRYPOINT ["/go/bin/anodot-prometheus-remote-write"] \ No newline at end of file +ENTRYPOINT ["/go/bin/anodot-prometheus-remote-write"] diff --git a/Makefile b/Makefile index 9a95fb2..4ca4254 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ BUILD_FLAGS = GO111MODULE=on CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) GOFLAGS APPLICATION_NAME := anodot-prometheus-remote-write DOCKER_IMAGE_NAME := anodot/prometheus-remote-write -VERSION := $(shell grep 'VERSION' pkg/version/version.go | awk '{ print $$4 }' | tr -d '"') +VERSION := $(shell git describe --tags --abbrev=0 | cut -c2-) PREVIOUS_VERSION := $(shell git show HEAD:pkg/version/version.go | grep 'VERSION' | awk '{ print $$4 }' | tr -d '"' ) GIT_COMMIT := $(shell git describe --dirty --always) @@ -44,7 +44,7 @@ build: $(BUILD_FLAGS) $(GO) build -ldflags "-s -w -X github.com/anodot/anodot-remote-write/pkg/version.REVISION=$(GIT_COMMIT)" -o $(APPLICATION_NAME) build-container: build - docker build -t $(DOCKER_IMAGE_NAME):$(VERSION) . + docker build -t $(DOCKER_IMAGE_NAME):$(VERSION) --build-arg VERSION=$(VERSION) . @echo ">> created docker image $(DOCKER_IMAGE_NAME):$(VERSION)" test: @@ -65,12 +65,17 @@ e2e: build-container push-container: test-container docker push $(DOCKER_IMAGE_NAME):$(VERSION) +ifeq ($(shell git branch --show-current), master) + docker tag $(DOCKER_IMAGE_NAME):$(VERSION) $(DOCKER_IMAGE_NAME):latest + docker push $(DOCKER_IMAGE_NAME):latest +endif + dockerhub-login: docker login -u $(DOCKER_USERNAME) -p $(DOCKER_PASSWORD) version-set: - @sed -i '' 's#$(DOCKER_IMAGE_NAME):$(PREVIOUS_VERSION)#$(DOCKER_IMAGE_NAME):$(VERSION)#g' deployment/docker-compose/docker-compose.yaml && \ - sed -i '' 's#$(DOCKER_IMAGE_NAME):$(PREVIOUS_VERSION)#$(DOCKER_IMAGE_NAME):$(VERSION)#g' e2e/docker-compose.yaml && \ + @sed -i 's#$(DOCKER_IMAGE_NAME):.*#$(DOCKER_IMAGE_NAME):$(VERSION)#g' deployment/docker-compose/docker-compose.yaml && \ + sed -i 's#$(DOCKER_IMAGE_NAME):.*#$(DOCKER_IMAGE_NAME):$(VERSION)#g' e2e/docker-compose.yaml && \ echo "Version $(VERSION) set in code, deployment, chart" vendor-update: diff --git a/README.md b/README.md index 0bf635a..fd86d7e 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,9 @@ [![Docker pulls](https://img.shields.io/docker/pulls/anodot/prometheus-remote-write.svg)](https://hub.docker.com/r/anodot/prometheus-remote-write) [![codecov](https://codecov.io/gh/anodot/anodot-remote-write/branch/master/graph/badge.svg)](https://codecov.io/gh/anodot/anodot-remote-write) +[Red Hat certified](https://catalog.redhat.com/software/containers/r/anodot/prometheus-remote-write/609e5564ac3db91643d96d76) + + # Anodot Prometheus Remote Write `anodot-prometheus-remote-write` is a service which receives [Prometheus](https://github.com/prometheus) metrics through [`remote_write`](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#remote_write), converts metrics and sends them into [Anodot](https://www.anodot.com). diff --git a/deployment/docker-compose/docker-compose.yaml b/deployment/docker-compose/docker-compose.yaml index 3cce643..efede46 100644 --- a/deployment/docker-compose/docker-compose.yaml +++ b/deployment/docker-compose/docker-compose.yaml @@ -2,7 +2,7 @@ version: '2' services: remote-write: - image: anodot/prometheus-remote-write:2.2.0 + image: anodot/prometheus-remote-write:2.4.7-beta container_name: anodot-prometheus-remote-write restart: unless-stopped environment: