2020-01-31 13:33:25 +03:00
|
|
|
COMPANY_NAME ?= ONLYOFFICE
|
2019-10-21 11:51:06 +03:00
|
|
|
GIT_BRANCH ?= develop
|
2020-01-31 13:33:25 +03:00
|
|
|
PRODUCT_NAME ?= DocumentServer
|
2017-05-17 17:43:24 +03:00
|
|
|
PRODUCT_VERSION ?= 0.0.0
|
|
|
|
BUILD_NUMBER ?= 0
|
2019-10-21 11:51:06 +03:00
|
|
|
ONLYOFFICE_VALUE ?= onlyoffice
|
2017-05-17 17:43:24 +03:00
|
|
|
|
2020-01-31 13:33:25 +03:00
|
|
|
COMPANY_NAME_LOW = $(shell echo $(COMPANY_NAME) | tr A-Z a-z)
|
|
|
|
PRODUCT_NAME_LOW = $(shell echo $(PRODUCT_NAME) | tr A-Z a-z)
|
|
|
|
COMPANY_NAME_LOW_ESCAPED = $(subst -,,$(COMPANY_NAME_LOW))
|
|
|
|
|
2016-07-27 15:24:47 +03:00
|
|
|
PACKAGE_VERSION := $(PRODUCT_VERSION)-$(BUILD_NUMBER)
|
2016-07-01 14:59:12 +03:00
|
|
|
|
2020-01-31 17:27:31 +03:00
|
|
|
REPO_URL := "deb [trusted=yes] http://repo-doc-onlyoffice-com.s3.amazonaws.com/ubuntu/trusty/$(COMPANY_NAME_LOW)-$(PRODUCT_NAME_LOW)/$(GIT_BRANCH)/$(PACKAGE_VERSION)/ repo/"
|
2016-08-30 17:06:02 +03:00
|
|
|
|
2016-09-12 19:26:54 +03:00
|
|
|
UPDATE_LATEST := false
|
|
|
|
|
2016-09-12 20:03:05 +03:00
|
|
|
ifneq (,$(findstring develop,$(GIT_BRANCH)))
|
2019-10-21 15:18:04 +03:00
|
|
|
DOCKER_TAG += $(subst -,.,$(PACKAGE_VERSION))
|
2016-07-01 14:59:12 +03:00
|
|
|
DOCKER_TAGS += latest
|
2017-04-04 11:06:22 +03:00
|
|
|
else ifneq (,$(findstring release,$(GIT_BRANCH)))
|
2019-10-21 15:18:04 +03:00
|
|
|
DOCKER_TAG += $(subst -,.,$(PACKAGE_VERSION))
|
2017-04-04 11:06:22 +03:00
|
|
|
else ifneq (,$(findstring hotfix,$(GIT_BRANCH)))
|
2019-10-21 15:18:04 +03:00
|
|
|
DOCKER_TAG += $(subst -,.,$(PACKAGE_VERSION))
|
2016-07-01 14:59:12 +03:00
|
|
|
else
|
2019-10-21 15:18:04 +03:00
|
|
|
DOCKER_TAG += $(subst -,.,$(PACKAGE_VERSION))-$(subst /,-,$(GIT_BRANCH))
|
2016-07-01 14:59:12 +03:00
|
|
|
endif
|
|
|
|
|
2019-10-21 15:18:04 +03:00
|
|
|
DOCKER_TAGS += $(DOCKER_TAG)
|
|
|
|
|
2020-01-31 17:27:31 +03:00
|
|
|
DOCKER_REPO = $(COMPANY_NAME_LOW_ESCAPED)/4testing-$(PRODUCT_NAME_LOW)
|
2016-07-01 14:59:12 +03:00
|
|
|
|
|
|
|
COLON := __colon__
|
|
|
|
DOCKER_TARGETS := $(foreach TAG,$(DOCKER_TAGS),$(DOCKER_REPO)$(COLON)$(TAG))
|
|
|
|
|
2020-01-31 13:33:25 +03:00
|
|
|
DOCKER_ARCH := $(COMPANY_NAME_LOW)-$(PRODUCT_NAME_LOW)_$(PACKAGE_VERSION).tar.gz
|
2019-10-21 15:18:04 +03:00
|
|
|
|
|
|
|
.PHONY: all clean clean-docker deploy docker publish
|
2016-07-01 14:59:12 +03:00
|
|
|
|
|
|
|
$(DOCKER_TARGETS): $(DEB_REPO_DATA)
|
|
|
|
|
2019-10-21 11:51:06 +03:00
|
|
|
docker build \
|
|
|
|
--build-arg REPO_URL=$(REPO_URL) \
|
2020-01-31 13:33:25 +03:00
|
|
|
--build-arg COMPANY_NAME=$(COMPANY_NAME_LOW) \
|
|
|
|
--build-arg PRODUCT_NAME=$(PRODUCT_NAME_LOW) \
|
2019-10-21 11:51:06 +03:00
|
|
|
--build-arg ONLYOFFICE_VALUE=$(ONLYOFFICE_VALUE) \
|
|
|
|
-t $(subst $(COLON),:,$@) . &&\
|
2016-07-01 14:59:12 +03:00
|
|
|
mkdir -p $$(dirname $@) &&\
|
|
|
|
echo "Done" > $@
|
|
|
|
|
2019-10-21 15:18:04 +03:00
|
|
|
$(DOCKER_ARCH): $(DOCKER_TARGETS)
|
|
|
|
docker save $(DOCKER_REPO):$(DOCKER_TAG) | \
|
|
|
|
gzip > $@
|
|
|
|
|
2016-07-01 14:59:12 +03:00
|
|
|
all: $(DOCKER_TARGETS)
|
|
|
|
|
|
|
|
clean:
|
2019-10-21 15:18:04 +03:00
|
|
|
rm -rfv $(DOCKER_TARGETS) $(DOCKER_ARCH)
|
2016-07-01 14:59:12 +03:00
|
|
|
|
|
|
|
clean-docker:
|
2020-01-31 13:33:25 +03:00
|
|
|
docker rmi -f $$(docker images -q $(COMPANY_NAME_LOW)/*) || exit 0
|
2016-07-01 14:59:12 +03:00
|
|
|
|
|
|
|
deploy: $(DOCKER_TARGETS)
|
2019-08-19 14:04:56 +03:00
|
|
|
$(foreach TARGET,$(DOCKER_TARGETS),docker push $(subst $(COLON),:,$(TARGET));)
|
2019-10-21 15:18:04 +03:00
|
|
|
|
|
|
|
publish: $(DOCKER_ARCH)
|
|
|
|
aws s3 cp \
|
|
|
|
$(DOCKER_ARCH) \
|
|
|
|
s3://repo-doc-onlyoffice-com.s3.amazonaws.com/docker/amd64/ \
|
|
|
|
--acl public-read
|