diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 00000000..31873174 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "neofs-keywords"] + path = neofs-keywords + url = ssh://git@github.com/nspcc-dev/neofs-keywords.git diff --git a/Makefile b/Makefile index 8e3cb49f..bd9dd61c 100644 --- a/Makefile +++ b/Makefile @@ -23,6 +23,10 @@ venvs: $(foreach venv,$(VENVS),$(eval $(call VENV_template,$(venv)))) +submodules: + @git submodule init + @git submodule update --recursive --remote + clean: rm -rf venv.* diff --git a/build_assets/activate.patch b/build_assets/activate.patch index e2405986..d8c23b41 100644 --- a/build_assets/activate.patch +++ b/build_assets/activate.patch @@ -1,21 +1,26 @@ diff -urN bin.orig/activate bin/activate ---- bin.orig/activate 2018-12-27 14:55:13.916461020 +0900 -+++ bin/activate 2018-12-27 20:38:35.223248728 +0900 -@@ -30,6 +30,10 @@ +--- bin.orig/activate 2018-12-27 14:55:13.916461020 +0900 ++++ bin/activate 2018-12-27 20:38:35.223248728 +0900 +@@ -30,6 +30,15 @@ unset _OLD_VIRTUAL_PS1 fi - -+ # Uset external env variables + ++ # Unset exported dev-env variables ++ pushd ${DEVENV_PATH} > /dev/null ++ unset `make env | awk -F= '{print $1}'` ++ popd > /dev/null ++ ++ # Unset external env variables + declare -f env_deactivate > /dev/null && env_deactivate + declare -f venv_deactivate > /dev/null && venv_deactivate + unset VIRTUAL_ENV if [ ! "${1-}" = "nondestructive" ] ; then # Self destruct! -@@ -47,6 +51,11 @@ +@@ -47,6 +56,11 @@ PATH="$VIRTUAL_ENV/bin:$PATH" export PATH - + +# Set external variables +if [ -f ${VIRTUAL_ENV}/bin/environment.sh ] ; then + . ${VIRTUAL_ENV}/bin/environment.sh diff --git a/neofs-keywords b/neofs-keywords new file mode 160000 index 00000000..2e36e914 --- /dev/null +++ b/neofs-keywords @@ -0,0 +1 @@ +Subproject commit 2e36e9144dcbbaaa0e5add41fcf2307fdfc063fd diff --git a/venv/localtest/environment.sh b/venv/localtest/environment.sh index 12de6c3d..f00c8e49 100644 --- a/venv/localtest/environment.sh +++ b/venv/localtest/environment.sh @@ -1,8 +1,8 @@ # DevEnv variables export NEOFS_MORPH_DISABLE_CACHE=true export DEVENV_PATH="${DEVENV_PATH:-${VIRTUAL_ENV}/../../neofs-dev-env}" -pushd $DEVENV_PATH +pushd $DEVENV_PATH > /dev/null export `make env` -popd +popd > /dev/null -export PYTHONPATH=${PYTHONPATH}:${VIRTUAL_ENV}/neofs-keywords/lib:${VIRTUAL_ENV}/neofs-keywords/robot:${VIRTUAL_ENV}/../robot/resources/lib/python:${VIRTUAL_ENV}/../robot/resources/lib/robot:${VIRTUAL_ENV}/../robot/variables +export PYTHONPATH=${PYTHONPATH}:${VIRTUAL_ENV}/../neofs-keywords/lib:${VIRTUAL_ENV}/../neofs-keywords/robot:${VIRTUAL_ENV}/../robot/resources/lib/python:${VIRTUAL_ENV}/../robot/resources/lib/robot:${VIRTUAL_ENV}/../robot/variables diff --git a/venv_template.mk b/venv_template.mk index 351e32d8..7dabee02 100644 --- a/venv_template.mk +++ b/venv_template.mk @@ -1,15 +1,12 @@ define VENV_template venv.$(1): venv.$(1)/bin/activate venv.$(1)/bin/environment.sh -venv.$(1)/bin/activate: venv/$(1)/requirements.txt +venv.$(1)/bin/activate: venv/$(1)/requirements.txt submodules @echo "Creating $(1) venv in $$@ from $$<" virtualenv --python=python3.8 --prompt="($(1))" venv.$(1) source venv.$(1)/bin/activate && \ - pip3.8 install -Ur venv/$(1)/requirements.txt - @echo "Cloning keywords repo" - git clone $(KEYWORDS_REPO) venv.$(1)/neofs-keywords - source venv.$(1)/bin/activate && \ - pip3.8 install -Ur venv.$(1)/neofs-keywords/requirements.txt + pip3.8 install -Ur venv/$(1)/requirements.txt && \ + pip3.8 install -Ur neofs-keywords/requirements.txt @echo "Applying activate script patch" patch -R --dry-run -p1 -s -f -d venv.$(1)/bin/ < build_assets/activate.patch || \ patch -p1 -d venv.$(1)/bin/ < build_assets/activate.patch