projects-dir[-minimal].mk: Go from PROJECTS_DIR_REMOTE_BASE

Currently, the primary discriminating criterion on how to handle a
set of remote repositories is whether or not JANWARE_USER is defined.
The canonical way to do that is PROJECTS_DIR_REMOTE_BASE, though, so
go from that definition.

Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
Jan Lindemann 2025-11-20 13:52:41 +01:00
commit 7d436f1c76
2 changed files with 21 additions and 10 deletions

View file

@ -20,21 +20,33 @@ PROJECTS_MAKEFILE_NAME := $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)
JWBDIR ?= jw-build
ifeq ($(origin PROJECTS_DIR_REMOTE_BASE),undefined)
PROJECTS_DIR_REMOTE_BASE ?= https://janware.com/code
endif
ifneq ($(findstring ssh://git.janware.com/srv/git,$(PROJECTS_DIR_REMOTE_BASE)),)
$(info Using janware private SSH: $(PROJECTS_DIR_REMOTE_BASE))
PROJECTS_DIR_REMOTE_USER_SUBPATH ?= /proj
else ifneq ($(findstring ssh://git.janware.com,$(PROJECTS_DIR_REMOTE_BASE)),)
$(info Using janware SSH: $(PROJECTS_DIR_REMOTE_BASE))
else ifneq ($(findstring https://,$(PROJECTS_DIR_REMOTE_BASE)),)
$(info Using HTTPS: $(PROJECTS_DIR_REMOTE_BASE))
else
$(error Unsupported PROJECTS_DIR_REMOTE_BASE="$(PROJECTS_DIR_REMOTE_BASE)")
endif
ifeq ($(JANWARE_USER),)
ifneq ($(wildcard $(JWBDIR)),)
JANWARE_USER := $(shell /usr/bin/python3 $(JWBDIR)/scripts/jw-projects.py -p . get-auth-info --username --only-values)
endif
endif
ifeq ($(origin PROJECTS_DIR_REMOTE_BASE),undefined)
ifneq ($(JANWARE_USER),)
CLONE_FROM_USER ?= $(JANWARE_USER)
PROJECTS_DIR_REMOTE_BASE ?= ssh://$(JANWARE_USER)@git.janware.com/srv/git
PROJECTS_DIR_REMOTE_USER_SUBPATH ?= /proj
else
CLONE_FROM_USER ?= janware
PROJECTS_DIR_REMOTE_BASE ?= https://janware.com/code
endif
ifneq ($(JANWARE_USER),)
CLONE_FROM_USER ?= $(JANWARE_USER)
else
CLONE_FROM_USER ?= janware
endif
JWBDIR_GIT_REMOTE ?= $(PROJECTS_DIR_REMOTE_BASE)/$(CLONE_FROM_USER)$(PROJECTS_DIR_REMOTE_USER_SUBPATH)/$(notdir $(JWBDIR))
PROJECTS_DIR_INCLUDE_MK = $(JWBDIR)/make/projects-dir-include.mk

View file

@ -17,7 +17,6 @@
.NOTPARALLEL:
-include local.mk
PROJECTS_MAKEFILE_NAME ?= $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
# -- Find JWBDIR