Only run ledger API test tool compat tests between stable releases (#11954)

We break things way too frequently between releases so the exclusions
are a huge mess with little benefit.

changelog_begin
changelog_end
This commit is contained in:
Moritz Kiefer 2021-12-02 10:34:20 +01:00 committed by GitHub
parent 7ddcc3274a
commit cf110a4bbf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 76 additions and 67 deletions

View File

@ -858,76 +858,78 @@ def sdk_platform_test(sdk_version, platform_version):
platform_version = version_to_name(platform_version),
)
exclusions = ["--exclude=" + test for test in get_excluded_tests(test_tool_version = sdk_version, sandbox_version = platform_version)]
client_server_test(
name = name,
client = ledger_api_test_tool,
client_args = [
"localhost:6865",
] + exclusions + extra_sandbox_next_exclusions,
data = [dar_files],
runner = "@//bazel_tools/client_server:runner",
runner_args = ["6865"],
server = sandbox,
server_args = sandbox_args + extra_sandbox_next_args,
server_files = ["$(rootpaths {dar_files})".format(
dar_files = dar_files,
)],
tags = ["exclusive", sdk_version, platform_version] + extra_tags(sdk_version, platform_version),
)
client_server_test(
name = name + "-classic",
client = ledger_api_test_tool,
client_args = [
"localhost:6865",
"--exclude=ClosedWorldIT",
] + exclusions,
data = [dar_files],
runner = "@//bazel_tools/client_server:runner",
runner_args = ["6865"],
server = sandbox,
server_args = sandbox_classic_args + extra_sandbox_classic_args,
server_files = ["$(rootpaths {dar_files})".format(
dar_files = dar_files,
)],
tags = ["exclusive", sdk_version, platform_version] + extra_tags(sdk_version, platform_version),
)
if versions.is_stable(sdk_version) and versions.is_stable(platform_version):
client_server_test(
name = name,
client = ledger_api_test_tool,
client_args = [
"localhost:6865",
] + exclusions + extra_sandbox_next_exclusions,
data = [dar_files],
runner = "@//bazel_tools/client_server:runner",
runner_args = ["6865"],
server = sandbox,
server_args = sandbox_args + extra_sandbox_next_args,
server_files = ["$(rootpaths {dar_files})".format(
dar_files = dar_files,
)],
tags = ["exclusive", sdk_version, platform_version] + extra_tags(sdk_version, platform_version),
)
client_server_test(
name = name + "-postgresql",
client = ledger_api_test_tool,
client_args = [
"localhost:6865",
] + exclusions + extra_sandbox_next_exclusions,
data = [dar_files],
runner = "@//bazel_tools/client_server:runner",
runner_args = ["6865"],
server = ":sandbox-with-postgres-{}".format(platform_version),
server_args = [platform_version] + sandbox_args + extra_sandbox_next_args,
server_files = ["$(rootpaths {dar_files})".format(
dar_files = dar_files,
)],
tags = ["exclusive"] + extra_tags(sdk_version, platform_version),
) if is_linux else None
client_server_test(
name = name + "-classic",
client = ledger_api_test_tool,
client_args = [
"localhost:6865",
"--exclude=ClosedWorldIT",
] + exclusions,
data = [dar_files],
runner = "@//bazel_tools/client_server:runner",
runner_args = ["6865"],
server = sandbox,
server_args = sandbox_classic_args + extra_sandbox_classic_args,
server_files = ["$(rootpaths {dar_files})".format(
dar_files = dar_files,
)],
tags = ["exclusive", sdk_version, platform_version] + extra_tags(sdk_version, platform_version),
)
client_server_test(
name = name + "-classic-postgresql",
size = "large",
client = ledger_api_test_tool,
client_args = [
"localhost:6865",
"--exclude=ClosedWorldIT",
] + exclusions,
data = [dar_files],
runner = "@//bazel_tools/client_server:runner",
runner_args = ["6865"],
server = ":sandbox-with-postgres-{}".format(platform_version),
server_args = [platform_version] + sandbox_classic_args + extra_sandbox_classic_args,
server_files = ["$(rootpaths {dar_files})".format(
dar_files = dar_files,
)],
tags = ["exclusive"] + extra_tags(sdk_version, platform_version),
) if is_linux else None
client_server_test(
name = name + "-postgresql",
client = ledger_api_test_tool,
client_args = [
"localhost:6865",
] + exclusions + extra_sandbox_next_exclusions,
data = [dar_files],
runner = "@//bazel_tools/client_server:runner",
runner_args = ["6865"],
server = ":sandbox-with-postgres-{}".format(platform_version),
server_args = [platform_version] + sandbox_args + extra_sandbox_next_args,
server_files = ["$(rootpaths {dar_files})".format(
dar_files = dar_files,
)],
tags = ["exclusive"] + extra_tags(sdk_version, platform_version),
) if is_linux else None
client_server_test(
name = name + "-classic-postgresql",
size = "large",
client = ledger_api_test_tool,
client_args = [
"localhost:6865",
"--exclude=ClosedWorldIT",
] + exclusions,
data = [dar_files],
runner = "@//bazel_tools/client_server:runner",
runner_args = ["6865"],
server = ":sandbox-with-postgres-{}".format(platform_version),
server_args = [platform_version] + sandbox_classic_args + extra_sandbox_classic_args,
server_files = ["$(rootpaths {dar_files})".format(
dar_files = dar_files,
)],
tags = ["exclusive"] + extra_tags(sdk_version, platform_version),
) if is_linux else None
# daml-ledger test-cases
name = "daml-ledger-{sdk_version}-platform-{platform_version}".format(

View File

@ -157,7 +157,14 @@ def _is_at_most(threshold, version):
"""
return _cmp_version(version, threshold) <= 0
def _is_stable(version):
"""Check that a version is a stable version, i.e., of the form major.minor.patch.
Note that HEAD has version 0.0.0 so it is considered stable"""
(core, prerelease, build) = _semver_components(version)
return not prerelease and not build
versions = struct(
is_at_most = _is_at_most,
is_at_least = _is_at_least,
is_stable = _is_stable,
)