Scheduled Checks (schedule) #9
GitHub Actions / Repro Test Results
failed
Dec 11, 2024 in 0s
2 fail in 9m 14s
2 tests 0 ✅ 9m 14s ⏱️
1 suites 0 💤
1 files 2 ❌
Results for commit ed1675d.
Annotations
github-actions / Repro Test Results
test_bit_repro_historical (test-venv.lib.python3.10.site-packages.model_config_tests.test_bit_reproducibility.TestBitReproducibility) failed
/opt/testing/checksum/test_report.xml [took 2m 3s]
Raw output
assert False
+ where False = output_exists()
+ where output_exists = <model_config_tests.models.accessom2.AccessOm2 object at 0x7fc4b582fb20>.output_exists
+ where <model_config_tests.models.accessom2.AccessOm2 object at 0x7fc4b582fb20> = <model_config_tests.exp_test_helper.ExpTestHelper object at 0x7fc4b96edcc0>.model
self = <model_config_tests.test_bit_reproducibility.TestBitReproducibility object at 0x7fc4b5eaefe0>
output_path = PosixPath('/scratch/tm70/repro-ci/experiments/access-om2-configs/1a820fef58c5d6bc32c82db7e7901a925a21c5f5')
control_path = PosixPath('/scratch/tm70/repro-ci/experiments/access-om2-configs/1a820fef58c5d6bc32c82db7e7901a925a21c5f5/base-experiment')
checksum_path = PosixPath('/scratch/tm70/repro-ci/experiments/access-om2-configs/1a820fef58c5d6bc32c82db7e7901a925a21c5f5/compared/testing/checksum/historical-3hr-checksum.json')
@pytest.mark.checksum
def test_bit_repro_historical(
self, output_path: Path, control_path: Path, checksum_path: Path
):
"""
Test that a run reproduces historical checksums
"""
# Setup checksum output directory
# NOTE: The checksum output file is used as part of `repro-ci` workflows
output_dir = output_path / "checksum"
output_dir.mkdir(parents=True, exist_ok=True)
checksum_output_file = output_dir / "historical-3hr-checksum.json"
if checksum_output_file.exists():
checksum_output_file.unlink()
# Setup and run experiment
exp = setup_exp(control_path, output_path, "test_bit_repro_historical")
exp.model.set_model_runtime()
exp.setup_and_run()
> assert exp.model.output_exists()
E assert False
E + where False = output_exists()
E + where output_exists = <model_config_tests.models.accessom2.AccessOm2 object at 0x7fc4b582fb20>.output_exists
E + where <model_config_tests.models.accessom2.AccessOm2 object at 0x7fc4b582fb20> = <model_config_tests.exp_test_helper.ExpTestHelper object at 0x7fc4b96edcc0>.model
../test-venv/lib/python3.10/site-packages/model_config_tests/test_bit_reproducibility.py:36: AssertionError
github-actions / Repro Test Results
test_restart_repro (test-venv.lib.python3.10.site-packages.model_config_tests.test_bit_reproducibility.TestBitReproducibility) failed
/opt/testing/checksum/test_report.xml [took 7m 9s]
Raw output
FileNotFoundError: [Errno 2] No such file or directory: '/scratch/tm70/repro-ci/experiments/access-om2-configs/1a820fef58c5d6bc32c82db7e7901a925a21c5f5/lab/archive/test_restart_repro_2x1day/output000/access-om2.out'
self = <model_config_tests.test_bit_reproducibility.TestBitReproducibility object at 0x7fc4b5eaf340>
output_path = PosixPath('/scratch/tm70/repro-ci/experiments/access-om2-configs/1a820fef58c5d6bc32c82db7e7901a925a21c5f5')
control_path = PosixPath('/scratch/tm70/repro-ci/experiments/access-om2-configs/1a820fef58c5d6bc32c82db7e7901a925a21c5f5/base-experiment')
@pytest.mark.checksum
def test_restart_repro(self, output_path: Path, control_path: Path):
"""
Test that a run reproduces across restarts.
"""
# First do two short (1 day) runs.
exp_2x1day = setup_exp(control_path, output_path, "test_restart_repro_2x1day")
# Reconfigure to a 1 day run.
exp_2x1day.model.set_model_runtime(seconds=86400)
# Now run twice.
exp_2x1day.setup_and_run()
exp_2x1day.force_qsub_run()
# Now do a single 2 day run
exp_2day = setup_exp(control_path, output_path, "test_restart_repro_2day")
# Reconfigure
exp_2day.model.set_model_runtime(seconds=172800)
# Run once.
exp_2day.setup_and_run()
# Now compare the output between our two short and one long run.
> checksums_1d_0 = exp_2x1day.extract_checksums()
../test-venv/lib/python3.10/site-packages/model_config_tests/test_bit_reproducibility.py:109:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../test-venv/lib/python3.10/site-packages/model_config_tests/exp_test_helper.py:47: in extract_checksums
return self.model.extract_checksums(output_directory, schema_version)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <model_config_tests.models.accessom2.AccessOm2 object at 0x7fc4b56e7370>
output_directory = None, schema_version = None
def extract_checksums(
self, output_directory: Path = None, schema_version: str = None
) -> dict[str, Any]:
"""Parse output file and create checksum using defined schema"""
if output_directory:
output_filename = output_directory / "access-om2.out"
else:
output_filename = self.output_file
# Regex pattern for checksums in the `<model>.out` file
# Examples:
# [chksum] ht -2390360641069121536
# [chksum] hu 6389284661071183872
# [chksum] htr 928360042410663049
pattern = r"\[chksum\]\s+(.+)\s+(-?\d+)"
# checksums outputted in form:
# {
# "ht": ["-2390360641069121536"],
# "hu": ["6389284661071183872"],
# "htr": ["928360042410663049"]
# }
# with potential for multiple checksums for one key.
output_checksums: dict[str, list[any]] = defaultdict(list)
> with open(output_filename) as f:
E FileNotFoundError: [Errno 2] No such file or directory: '/scratch/tm70/repro-ci/experiments/access-om2-configs/1a820fef58c5d6bc32c82db7e7901a925a21c5f5/lab/archive/test_restart_repro_2x1day/output000/access-om2.out'
../test-venv/lib/python3.10/site-packages/model_config_tests/models/accessom2.py:66: FileNotFoundError
Check notice on line 0 in .github
github-actions / Repro Test Results
2 tests found
There are 2 tests, see "Raw output" for the full list of tests.
Raw output
test-venv.lib.python3.10.site-packages.model_config_tests.test_bit_reproducibility.TestBitReproducibility ‑ test_bit_repro_historical
test-venv.lib.python3.10.site-packages.model_config_tests.test_bit_reproducibility.TestBitReproducibility ‑ test_restart_repro
Loading