Skip to content

Commit

Permalink
Merge pull request #7485 from graphcareful/backport-7478
Browse files Browse the repository at this point in the history
[v22.3.x] Backport license upgrade test
  • Loading branch information
jcsp committed Nov 24, 2022
2 parents 1b4dcbe + 060d20f commit b6abea7
Showing 1 changed file with 44 additions and 0 deletions.
44 changes: 44 additions & 0 deletions tests/rptest/tests/license_upgrade_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,3 +108,47 @@ def test_basic_upgrade(self):

# Install license
assert self.admin.put_license(license).status_code == 200


class UpgradeMigratingLicenseVersion(RedpandaTest):
"""
Verify that the cluster can interpret licenses between versions
"""
def __init__(self, test_context):
super(UpgradeMigratingLicenseVersion,
self).__init__(test_context=test_context,
num_brokers=3,
si_settings=SISettings())
self.installer = self.redpanda._installer
self.admin = Admin(self.redpanda)

def setUp(self):
# 22.2.x is when license went live
self.installer.install(self.redpanda.nodes, (22, 2, 7))
super(UpgradeMigratingLicenseVersion, self).setUp()

@cluster(num_nodes=3, log_allow_list=RESTART_LOG_ALLOW_LIST)
def test_license_upgrade(self):
license = sample_license()
if license is None:
self.logger.info(
"Skipping test, REDPANDA_SAMPLE_LICENSE env var not found")
return

# Upload a license
assert self.admin.put_license(license).status_code == 200

# Update all nodes to newest version
self.installer.install(self.redpanda.nodes, RedpandaInstaller.HEAD)
self.redpanda.restart_nodes(self.redpanda.nodes)
_ = wait_for_num_versions(self.redpanda, 1)

# Attempt to read license written by older version
def license_loaded_ok():
license = self.admin.get_license()
return license is not None and license['loaded'] is True

wait_until(license_loaded_ok,
timeout_sec=30,
backoff_sec=1,
err_msg="Timeout waiting for license to exist in cluster")

0 comments on commit b6abea7

Please sign in to comment.