def main()

in dockerfiles.py [0:0]


def main() -> None:
    """
    Main entry point: parse arguments, load variants, load templates, and generate Dockerfiles.
    """
    release_dir = parse_args()
    validate_release_dir(release_dir)
    variants = load_variants(release_dir)

    env = create_jinja_environment()

    intellij_template_path = os.path.join(release_dir, "base", "templates", "intellij.Dockerfile.j2")
    thirdparty_template_path = os.path.join(release_dir, "base", "templates", "thirdparty.Dockerfile.j2")
    intellij_template = load_template(env, intellij_template_path)
    thirdparty_template = load_template(env, thirdparty_template_path)

    base_dockerfile_dir = os.path.join(release_dir, "base")

    for variant, data in variants.items():
        dockerfile_content = generate_variant_dockerfile(
            variant,
            data,
            base_dockerfile_dir,
            intellij_template,
            thirdparty_template,
            release_dir
        )
        write_dockerfile(variant, release_dir, dockerfile_content)