9def get_release_setup(logger: Logger, no_setup=False) -> str:
10 """Get release setup."""
11 if no_setup:
12 logger.info("No release information is available when a release is not set-up.\n")
13 return ""
14
15 current_nightly = environ["AtlasBuildStamp"]
16 release_base = environ["AtlasBuildBranch"]
17 release_head = environ["AtlasVersion"]
18 platform = environ["LCG_PLATFORM"]
19 project = environ["AtlasProject"]
20 builds_dir_search_str = f"/cvmfs/atlas-nightlies.cern.ch/repo/sw/{release_base}_{project}_{platform}/[!latest_]*/{project}/{release_head}"
21
22
23 sorted_list = sorted(glob(builds_dir_search_str), key=path.getmtime)
24 latest_nightly = ""
25 for folder in reversed(sorted_list):
26 if not glob(f"{folder}/../../{release_base}__{project}*-opt*.log"):
27 continue
28 latest_nightly = folder.split("/")[-3]
29 break
30
31 if current_nightly != latest_nightly:
32 logger.info(f"Please be aware that you are not testing your tags in the latest available nightly, which is {latest_nightly}")
33
34 setup = "%s,%s,%s,Athena" % (release_base, platform.replace("-", ","), current_nightly)
35
36 logger.info(f"Your tags will be tested in environment {setup}")
37
38 return setup
39
40