mirror of https://github.com/citusdata/citus.git
Fix citus upgrade local run issues (#5414)
This PR is fixing 2 separate issues related to the local run of citus upgrade tests.pull/5391/headd3e7c825ab
fixes the issue that, with our new testing infrastructure, we moved/renamed some of existing folders. This created a problem for local runs of citus upgrade tests since some paths were sensitive to such changes. This commit tries to make it more generic so that this issue is less likely to happen in the future, while also fixing the current issue.93de6b60c3
we are fixing an issue that a new environment variable was added for citus upgrade tests, which is defined in the CI.0cb51f8c37/.circleci/config.yml (L294)
This environment variable wasn't set in our local runs hence it would create problems. Instead of defining this environment variable in the local run, we change the citus_upgrade run command to use an existing env variable, which is now also set in the CI.
parent
9b784e58bf
commit
19f28eabae
|
@ -291,11 +291,11 @@ jobs:
|
|||
# run make check-citus-upgrade for all citus versions
|
||||
# the image has ${CITUS_VERSIONS} set with all verions it contains the binaries of
|
||||
for citus_version in ${CITUS_VERSIONS}; do \
|
||||
export upgrade_test_old_citus_version="$citus_version"; \
|
||||
gosu circleci \
|
||||
make -C src/test/regress \
|
||||
check-citus-upgrade \
|
||||
bindir=/usr/lib/postgresql/${PG_MAJOR}/bin \
|
||||
citus-old-version=${citus_version} \
|
||||
citus-pre-tar=/install-pg${PG_MAJOR}-citus${citus_version}.tar \
|
||||
citus-post-tar=/home/circleci/project/install-$PG_MAJOR.tar; \
|
||||
done;
|
||||
|
@ -306,6 +306,7 @@ jobs:
|
|||
gosu circleci \
|
||||
make -C src/test/regress \
|
||||
check-citus-upgrade-mixed \
|
||||
citus-old-version=${citus_version} \
|
||||
bindir=/usr/lib/postgresql/${PG_MAJOR}/bin \
|
||||
citus-pre-tar=/install-pg${PG_MAJOR}-citus${citus_version}.tar \
|
||||
citus-post-tar=/home/circleci/project/install-$PG_MAJOR.tar; \
|
||||
|
|
|
@ -28,7 +28,7 @@ pg_regress_multi_check = $(PERL) $(citus_abs_srcdir)/pg_regress_multi.pl --pgxsd
|
|||
MULTI_REGRESS_OPTS = --inputdir=$(citus_abs_srcdir) $(pg_regress_locale_flags) --launcher="$(citus_abs_srcdir)/log_test_times"
|
||||
|
||||
pg_upgrade_check = $(citus_abs_srcdir)/citus_tests/upgrade/pg_upgrade_test.py
|
||||
citus_upgrade_check = $(citus_abs_srcdir)/citus_tests/upgrade/citus_upgrade_test.py
|
||||
citus_upgrade_check =CITUS_OLD_VERSION=$(citus-old-version) $(citus_abs_srcdir)/citus_tests/upgrade/citus_upgrade_test.py
|
||||
arbitrary_config_check = $(citus_abs_srcdir)/citus_tests/arbitrary_configs/citus_arbitrary_configs.py
|
||||
|
||||
template_isolation_files = $(shell find $(citus_abs_srcdir)/spec/ -name '*.spec')
|
||||
|
|
|
@ -188,7 +188,8 @@ def generate_citus_tarballs(citus_version):
|
|||
)
|
||||
|
||||
common.initialize_temp_dir_if_not_exists(tmp_dir)
|
||||
local_script_path = os.path.abspath("upgrade/generate_citus_tarballs.sh")
|
||||
dirpath = os.path.dirname(os.path.realpath(__file__))
|
||||
local_script_path = os.path.join(dirpath, "generate_citus_tarballs.sh")
|
||||
with utils.cd(tmp_dir):
|
||||
subprocess.check_call([local_script_path, citus_version])
|
||||
|
||||
|
|
|
@ -6,56 +6,56 @@ citus_old_version=$1
|
|||
|
||||
base="$(pwd)"
|
||||
|
||||
|
||||
install_citus_and_tar() {
|
||||
# do everything in a subdirectory to avoid clutter in current directory
|
||||
mkdir -p "${builddir}" && cd "${builddir}"
|
||||
# do everything in a subdirectory to avoid clutter in current directory
|
||||
mkdir -p "${builddir}" && cd "${builddir}"
|
||||
|
||||
"${citus_dir}/configure" --without-libcurl
|
||||
"${citus_dir}/configure" --without-libcurl
|
||||
|
||||
installdir="${builddir}/install"
|
||||
make "-j$(nproc)" && mkdir -p "${installdir}" && make DESTDIR="${installdir}" install
|
||||
installdir="${builddir}/install"
|
||||
make "-j$(nproc)" && mkdir -p "${installdir}" && make DESTDIR="${installdir}" install
|
||||
|
||||
cd "${installdir}" && find . -type f -print > "${builddir}/files.lst"
|
||||
cd "${installdir}" && find . -type f -print >"${builddir}/files.lst"
|
||||
|
||||
tar cvf "${basedir}/install-citus${citus_version}.tar" $(cat "${builddir}"/files.lst)
|
||||
mv "${basedir}/install-citus${citus_version}.tar" "${base}/install-citus${citus_version}.tar"
|
||||
tar cvf "${basedir}/install-citus${citus_version}.tar" $(cat "${builddir}"/files.lst)
|
||||
mv "${basedir}/install-citus${citus_version}.tar" "${base}/install-citus${citus_version}.tar"
|
||||
|
||||
cd "${builddir}" && rm -rf install files.lst && make clean
|
||||
cd "${builddir}" && rm -rf install files.lst && make clean
|
||||
}
|
||||
|
||||
build_current() {
|
||||
citus_version="$1"
|
||||
basedir="${base}/${citus_version}"
|
||||
citus_version="$1"
|
||||
basedir="${base}/${citus_version}"
|
||||
|
||||
mkdir -p "${basedir}"
|
||||
citus_repo="${base}/../../../.."
|
||||
mkdir -p "${basedir}"
|
||||
citus_repo=$(git rev-parse --show-toplevel)
|
||||
|
||||
cd "$citus_repo" && cp -R . /tmp/citus_copy
|
||||
mv /tmp/citus_copy "${basedir}/citus_${citus_version}"
|
||||
builddir="${basedir}/build"
|
||||
cd "${basedir}"
|
||||
cd "$citus_repo" && cp -R . /tmp/citus_copy
|
||||
# https://stackoverflow.com/questions/957928/is-there-a-way-to-get-the-git-root-directory-in-one-command
|
||||
mv /tmp/citus_copy "${basedir}/citus_${citus_version}"
|
||||
builddir="${basedir}/build"
|
||||
cd "${basedir}"
|
||||
|
||||
citus_dir=${basedir}/citus_$citus_version
|
||||
citus_dir=${basedir}/citus_$citus_version
|
||||
|
||||
make -C "${citus_dir}" clean
|
||||
cd "${citus_dir}"
|
||||
./configure --without-libcurl
|
||||
make -C "${citus_dir}" clean
|
||||
cd "${citus_dir}"
|
||||
./configure --without-libcurl
|
||||
|
||||
install_citus_and_tar
|
||||
install_citus_and_tar
|
||||
}
|
||||
|
||||
build_ext() {
|
||||
citus_version="$1"
|
||||
basedir="${base}/${citus_version}"
|
||||
citus_version="$1"
|
||||
basedir="${base}/${citus_version}"
|
||||
|
||||
mkdir -p "${basedir}"
|
||||
cd "${basedir}"
|
||||
citus_dir=${basedir}/citus_$citus_version
|
||||
git clone --branch "$citus_version" https://github.com/citusdata/citus.git --depth 1 citus_"$citus_version"
|
||||
builddir="${basedir}/build"
|
||||
mkdir -p "${basedir}"
|
||||
cd "${basedir}"
|
||||
citus_dir=${basedir}/citus_$citus_version
|
||||
git clone --branch "$citus_version" https://github.com/citusdata/citus.git --depth 1 citus_"$citus_version"
|
||||
builddir="${basedir}/build"
|
||||
|
||||
install_citus_and_tar
|
||||
install_citus_and_tar
|
||||
}
|
||||
|
||||
build_current "master"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int >= 10 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int >= 0
|
||||
AS upgrade_test_old_citus_version_ge_10_0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int >= 10 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int >= 0
|
||||
AS upgrade_test_old_citus_version_ge_10_0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int >= 10 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int >= 0
|
||||
AS upgrade_test_old_citus_version_ge_10_0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int >= 10 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int >= 0
|
||||
AS upgrade_test_old_citus_version_ge_10_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int >= 10 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int >= 0
|
||||
AS upgrade_test_old_citus_version_ge_10_0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int >= 10 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int >= 0
|
||||
AS upgrade_test_old_citus_version_ge_10_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
-- run this test only when old citus version is 9.0
|
||||
\set upgrade_test_old_citus_version `echo "$upgrade_test_old_citus_version"`
|
||||
\set upgrade_test_old_citus_version `echo "$CITUS_OLD_VERSION"`
|
||||
SELECT substring(:'upgrade_test_old_citus_version', 'v(\d+)\.\d+\.\d+')::int = 9 AND
|
||||
substring(:'upgrade_test_old_citus_version', 'v\d+\.(\d+)\.\d+')::int = 0
|
||||
AS upgrade_test_old_citus_version_e_9_0;
|
||||
|
|
Loading…
Reference in New Issue