add possiblity to add subpath in compose (when docker-compose file is not in repo root)

This commit is contained in:
Thomas 2025-04-10 15:27:07 +02:00
parent b299948bf8
commit 0071d31d26
1 changed files with 28 additions and 21 deletions

View File

@ -7,12 +7,12 @@ DOCKER_LOGIN = 0
endif endif
pull-compose: pull-compose:
@- echo "\n### pulling image(s)" @echo "\n### pulling image(s)"
@- $(foreach host,$(DEPLOY_HOSTS), \ $(foreach host,$(DEPLOY_HOSTS), \
echo "$(host)"; \ echo "$(host)"; \
if test $(DOCKER_LOGIN) -eq 1 ; \ if test "$(DOCKER_LOGIN)" = "1" ; \
then \ then \
echo "\n#### perfom docker login with user $(DOCKER_USER) on $(DOCKER_REGISTRY)"; \ echo "\n#### perform docker login with user $(DOCKER_USER) on $(DOCKER_REGISTRY)"; \
ssh $(SSH_USER)@$(host) "docker login -u $(DOCKER_USER) -p $(DOCKER_PASS) $(DOCKER_REGISTRY)"; \ ssh $(SSH_USER)@$(host) "docker login -u $(DOCKER_USER) -p $(DOCKER_PASS) $(DOCKER_REGISTRY)"; \
fi; \ fi; \
if test -n "$(DOCKER_IMAGE)" ; \ if test -n "$(DOCKER_IMAGE)" ; \
@ -22,27 +22,34 @@ pull-compose:
) )
start-compose: start-compose:
@- echo "\n### starting service(s)" @echo "\n### starting service(s)"
@- $(foreach host,$(DEPLOY_HOSTS), \ $(foreach host,$(DEPLOY_HOSTS), \
echo "$(host)"; \ echo "$(host)"; \
ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME)$(if$(DEPLOY_SUBPATH),/$(DEPLOY_SUBPATH),); docker-compose up -d"; \ if test -n "$(DEPLOY_SUBPATH)" ; \
then \
ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME)/$(DEPLOY_SUBPATH); docker-compose up -d"; \
else \
ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME); docker-compose up -d"; \
fi; \
sleep $(DEPLOY_START_DELAY); \ sleep $(DEPLOY_START_DELAY); \
) )
stop-compose:
@- echo "\n### stopping service(s)"
@- $(foreach host,$(DEPLOY_HOSTS), \
echo "$(host)"; \
ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME)$(if$(DEPLOY_SUBPATH),/$(DEPLOY_SUBPATH),); docker-compose down"; \
)
logs-compose: logs-compose:
@- echo "\n### logs" @echo "\n### logs"
@- ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME)$(if$(DEPLOY_SUBPATH),/$(DEPLOY_SUBPATH),); docker-compose logs -f $(service)" $(foreach host,$(DEPLOY_HOSTS), \
echo "$(host)"; \
ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME); docker-compose logs -f $(service)"; \
)
restart-compose: restart-compose:
@- $(foreach host,$(DEPLOY_HOSTS), \ @echo "\n### restarting service(s)"
$(foreach host,$(DEPLOY_HOSTS), \
echo "$(host)"; \ echo "$(host)"; \
ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME)$(if$(DEPLOY_SUBPATH),/$(DEPLOY_SUBPATH),); docker-compose restart"; \ if test -n "$(DEPLOY_SUBPATH)" ; \
then \
ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME)/$(DEPLOY_SUBPATH); docker-compose restart"; \
else \
ssh $(SSH_USER)@$(host) "cd $(DEPLOY_PATH)/$(DEPLOY_NAME); docker-compose restart"; \
fi; \
sleep $(DEPLOY_START_DELAY); \ sleep $(DEPLOY_START_DELAY); \
) )