Changeset: de2db5c50d6d for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/de2db5c50d6d Modified Files: sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.py sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.py sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.py sql/test/emptydb-previous-upgrade/Tests/upgrade.py sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.py sql/test/emptydb-upgrade-chain/Tests/upgrade.py sql/test/emptydb-upgrade-hge/Tests/upgrade.py sql/test/emptydb-upgrade/Tests/upgrade.py sql/test/testdb-previous-upgrade-chain-hge/Tests/upgrade.py sql/test/testdb-previous-upgrade-chain/Tests/upgrade.py sql/test/testdb-previous-upgrade-hge/Tests/upgrade.py sql/test/testdb-previous-upgrade/Tests/upgrade.py sql/test/testdb-upgrade-chain-hge/Tests/upgrade.py sql/test/testdb-upgrade-chain/Tests/upgrade.py sql/test/testdb-upgrade-hge/Tests/upgrade.py sql/test/testdb-upgrade/Tests/upgrade.py testing/Mtest.py.in Branch: Dec2025 Log Message:
Implemented a relatively easy way to do upgrade testing. Mtest.py has a number of new arguments that can be used to setup upgrade testing. The arguments are: --upgrade-farms=URL --lastrelease=RELEASE-NAME --prevrelease=RELEASE-NAME --testtools=PATH-TO-TESTTOOLS-DIRECTORY The URL for --upgrade-farms is normally https://www.monetdb.org/testweb/dbfarms, but could also be a local copy. If --testtools is given, --lastrelease and --prevrelease are not needed. The release name is either the name of a release (e.g. Dec2025 or Dec2025-SP4), or the tag for the release (e.g. Dec2025_1 or Dec2025_9). The last release should be the actual last released version (currently Dec2025-SP4). The previous release should be the last bug-fix version of the previous major release (currently Mar2025-SP3). diffs (truncated from 781 to 300 lines): diff --git a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.py b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.py --- a/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.py +++ b/sql/test/emptydb-previous-upgrade-chain-hge/Tests/upgrade.py @@ -9,14 +9,38 @@ try: except ImportError: import process -import sys, os, zipfile, platform +import sys +import os +import zipfile +import platform +import urllib.request +import urllib.parse xit = 0 -# find zipped database dbfarm = os.environ['GDK_DBFARM'] db = os.path.join(dbfarm, os.environ['TSTDB']) archive = os.path.join(dbfarm, 'prevhgechainrelempty.zip') + +url = os.environ.get('UPGRADE_DBFARMS') +prevrelease = os.environ.get('PREVRELEASE') +if url is not None and prevrelease is not None: + if sys.byteorder == 'little': + if os.environ.get('TST_BITS', '64bit') == '64bit': + arch = 'x86_64' + else: + arch = 'i386' + else: + arch = 's390x' + u = urllib.parse.urlsplit(url) + url = urllib.parse.urlunsplit((u[0], u[1], + f'{u[2]}/{prevrelease}/{arch}-empty-int128-chain.zip', + '', '')) + with urllib.request.urlopen(url) as r, \ + open(archive, 'wb') as f: + f.write(r.read()) + +# find zipped database if not os.path.exists(archive): print('file "{}" not found'.format(archive), file=sys.stderr) sys.exit(1) diff --git a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.py b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.py --- a/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.py +++ b/sql/test/emptydb-previous-upgrade-chain/Tests/upgrade.py @@ -9,14 +9,38 @@ try: except ImportError: import process -import sys, os, zipfile, platform +import sys +import os +import zipfile +import platform +import urllib.request +import urllib.parse xit = 0 -# find zipped database dbfarm = os.environ['GDK_DBFARM'] db = os.path.join(dbfarm, os.environ['TSTDB']) archive = os.path.join(dbfarm, 'prevchainrelempty.zip') + +url = os.environ.get('UPGRADE_DBFARMS') +prevrelease = os.environ.get('PREVRELEASE') +if url is not None and prevrelease is not None: + if sys.byteorder == 'little': + if os.environ.get('TST_BITS', '64bit') == '64bit': + arch = 'x86_64' + else: + arch = 'i386' + else: + arch = 's390x' + u = urllib.parse.urlsplit(url) + url = urllib.parse.urlunsplit((u[0], u[1], + f'{u[2]}/{prevrelease}/{arch}-empty-chain.zip', + '', '')) + with urllib.request.urlopen(url) as r, \ + open(archive, 'wb') as f: + f.write(r.read()) + +# find zipped database if not os.path.exists(archive): print('file "{}" not found'.format(archive), file=sys.stderr) sys.exit(1) diff --git a/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.py b/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.py --- a/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.py +++ b/sql/test/emptydb-previous-upgrade-hge/Tests/upgrade.py @@ -9,14 +9,38 @@ try: except ImportError: import process -import sys, os, zipfile, platform +import sys +import os +import zipfile +import platform +import urllib.request +import urllib.parse xit = 0 -# find zipped database dbfarm = os.environ['GDK_DBFARM'] db = os.path.join(dbfarm, os.environ['TSTDB']) archive = os.path.join(dbfarm, 'prevhgerelempty.zip') + +url = os.environ.get('UPGRADE_DBFARMS') +prevrelease = os.environ.get('PREVRELEASE') +if url is not None and prevrelease is not None: + if sys.byteorder == 'little': + if os.environ.get('TST_BITS', '64bit') == '64bit': + arch = 'x86_64' + else: + arch = 'i386' + else: + arch = 's390x' + u = urllib.parse.urlsplit(url) + url = urllib.parse.urlunsplit((u[0], u[1], + f'{u[2]}/{prevrelease}/{arch}-empty-int128.zip', + '', '')) + with urllib.request.urlopen(url) as r, \ + open(archive, 'wb') as f: + f.write(r.read()) + +# find zipped database if not os.path.exists(archive): print('file "{}" not found'.format(archive), file=sys.stderr) sys.exit(1) diff --git a/sql/test/emptydb-previous-upgrade/Tests/upgrade.py b/sql/test/emptydb-previous-upgrade/Tests/upgrade.py --- a/sql/test/emptydb-previous-upgrade/Tests/upgrade.py +++ b/sql/test/emptydb-previous-upgrade/Tests/upgrade.py @@ -9,14 +9,38 @@ try: except ImportError: import process -import sys, os, zipfile, platform +import sys +import os +import zipfile +import platform +import urllib.request +import urllib.parse xit = 0 -# find zipped database dbfarm = os.environ['GDK_DBFARM'] db = os.path.join(dbfarm, os.environ['TSTDB']) archive = os.path.join(dbfarm, 'prevrelempty.zip') + +url = os.environ.get('UPGRADE_DBFARMS') +prevrelease = os.environ.get('PREVRELEASE') +if url is not None and prevrelease is not None: + if sys.byteorder == 'little': + if os.environ.get('TST_BITS', '64bit') == '64bit': + arch = 'x86_64' + else: + arch = 'i386' + else: + arch = 's390x' + u = urllib.parse.urlsplit(url) + url = urllib.parse.urlunsplit((u[0], u[1], + f'{u[2]}/{prevrelease}/{arch}-empty.zip', + '', '')) + with urllib.request.urlopen(url) as r, \ + open(archive, 'wb') as f: + f.write(r.read()) + +# find zipped database if not os.path.exists(archive): print('file "{}" not found'.format(archive), file=sys.stderr) sys.exit(1) diff --git a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.py b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.py --- a/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.py +++ b/sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.py @@ -9,14 +9,38 @@ try: except ImportError: import process -import sys, os, zipfile, platform +import sys +import os +import zipfile +import platform +import urllib.request +import urllib.parse xit = 0 -# find zipped database dbfarm = os.environ['GDK_DBFARM'] db = os.path.join(dbfarm, os.environ['TSTDB']) archive = os.path.join(dbfarm, 'lasthgechainrelempty.zip') + +url = os.environ.get('UPGRADE_DBFARMS') +lastrelease = os.environ.get('LASTRELEASE') +if url is not None and lastrelease is not None: + if sys.byteorder == 'little': + if os.environ.get('TST_BITS', '64bit') == '64bit': + arch = 'x86_64' + else: + arch = 'i386' + else: + arch = 's390x' + u = urllib.parse.urlsplit(url) + url = urllib.parse.urlunsplit((u[0], u[1], + f'{u[2]}/{lastrelease}/{arch}-empty-int128-chain.zip', + '', '')) + with urllib.request.urlopen(url) as r, \ + open(archive, 'wb') as f: + f.write(r.read()) + +# find zipped database if not os.path.exists(archive): print('file "{}" not found'.format(archive), file=sys.stderr) sys.exit(1) diff --git a/sql/test/emptydb-upgrade-chain/Tests/upgrade.py b/sql/test/emptydb-upgrade-chain/Tests/upgrade.py --- a/sql/test/emptydb-upgrade-chain/Tests/upgrade.py +++ b/sql/test/emptydb-upgrade-chain/Tests/upgrade.py @@ -9,14 +9,38 @@ try: except ImportError: import process -import sys, os, zipfile, platform +import sys +import os +import zipfile +import platform +import urllib.request +import urllib.parse xit = 0 -# find zipped database dbfarm = os.environ['GDK_DBFARM'] db = os.path.join(dbfarm, os.environ['TSTDB']) archive = os.path.join(dbfarm, 'lastchainrelempty.zip') + +url = os.environ.get('UPGRADE_DBFARMS') +lastrelease = os.environ.get('LASTRELEASE') +if url is not None and lastrelease is not None: + if sys.byteorder == 'little': + if os.environ.get('TST_BITS', '64bit') == '64bit': + arch = 'x86_64' + else: + arch = 'i386' + else: + arch = 's390x' + u = urllib.parse.urlsplit(url) + url = urllib.parse.urlunsplit((u[0], u[1], + f'{u[2]}/{lastrelease}/{arch}-empty-chain.zip', + '', '')) + with urllib.request.urlopen(url) as r, \ + open(archive, 'wb') as f: + f.write(r.read()) + +# find zipped database if not os.path.exists(archive): print('file "{}" not found'.format(archive), file=sys.stderr) sys.exit(1) diff --git a/sql/test/emptydb-upgrade-hge/Tests/upgrade.py b/sql/test/emptydb-upgrade-hge/Tests/upgrade.py --- a/sql/test/emptydb-upgrade-hge/Tests/upgrade.py +++ b/sql/test/emptydb-upgrade-hge/Tests/upgrade.py @@ -9,14 +9,38 @@ try: except ImportError: import process -import sys, os, zipfile, platform +import sys +import os +import zipfile +import platform +import urllib.request +import urllib.parse xit = 0 -# find zipped database dbfarm = os.environ['GDK_DBFARM'] db = os.path.join(dbfarm, os.environ['TSTDB']) archive = os.path.join(dbfarm, 'lasthgerelempty.zip') + +url = os.environ.get('UPGRADE_DBFARMS') +lastrelease = os.environ.get('LASTRELEASE') +if url is not None and lastrelease is not None: + if sys.byteorder == 'little': + if os.environ.get('TST_BITS', '64bit') == '64bit': + arch = 'x86_64' + else: + arch = 'i386' + else: + arch = 's390x' + u = urllib.parse.urlsplit(url) + url = urllib.parse.urlunsplit((u[0], u[1], + f'{u[2]}/{lastrelease}/{arch}-empty-int128.zip', + '', '')) _______________________________________________ checkin-list mailing list -- [email protected] To unsubscribe send an email to [email protected]
