def build_shim_and_generate_hashes()

in tools/build-release.py [0:0]


def build_shim_and_generate_hashes(staging_dir, release_name, arch):
    print("generating reproducible build artifacts for yunikorn-k8shim (%s)" % arch)
    path = os.getcwd()
    tmp_dir = os.path.join(staging_dir, "tmp")
    release_dir = os.path.join(tmp_dir, release_name)
    unpack_staging_tarball(staging_dir, tmp_dir, release_name)
    shim_dir = os.path.join(release_dir, "k8shim")
    os.chdir(shim_dir)
    retcode = subprocess.call(['make', 'REPRODUCIBLE_BUILDS=1', 'HOST_ARCH=' + arch, 'scheduler', 'plugin', 'admission'])
    if retcode:
        fail("failed to build yunikorn-k8shim (%s)" % arch)
    adm_hash = get_checksum("build/bin/yunikorn-admission-controller", "yunikorn-admission-controller")
    scheduler_hash = get_checksum("build/bin/yunikorn-scheduler", "yunikorn-scheduler")
    plugin_hash = get_checksum("build/bin/yunikorn-scheduler-plugin", "yunikorn-scheduler-plugin")
    hash = "\n".join([adm_hash, scheduler_hash, plugin_hash])
    os.chdir(staging_dir)
    retcode = subprocess.call(['rm', '-rf', 'tmp'])
    if retcode:
        fail("failed to clean temp dir")
    os.chdir(path)
    return hash