code: def _build_champaign_cluster_environment(
      anyscale_image: str,
      cluster_env_name: str,
  ) -> None:
      boto = boto3.client("secretsmanager", region_name="us-west-2")
      for secret_name, host in ANYSCALE_SECRETS.items():
          logger.info(
              f"\tUpdating cluster environment for secret: {secret_name}, host: {host}"
          )
          os.environ["ANYSCALE_CLI_TOKEN"] = boto.get_secret_value(
              SecretId=f"{ANYSCALE_SECRET_ARM}/{secret_name}"
          )["SecretString"]
          AnyscaleSDK(host=host).build_cluster_environment(
              create_cluster_environment=CreateClusterEnvironment(
                  name=cluster_env_name,
                  config_json=dict(
                      docker_image=anyscale_image,
                      ray_version="nightly",
                      env_vars={},
                  ),
              ),
          )
  
file_path: ray/release/ray_release/scripts/ray_champagne.py
imports: import click
  import os
  from pathlib import Path
  import boto3
  from anyscale.sdk.anyscale_client.models.create_cluster_environment import CreateClusterEnvironment
  from anyscale.sdk.anyscale_client.sdk import AnyscaleSDK
  from ray_release.bazel import bazel_runfile
  from ray_release.byod.build import build_champagne_image
  from ray_release.logger import logger
  from ray_release.configs.global_config import init_global_config
label_desc: Use image node_id 2 for calling a global function with example usage: _build_champaign_cluster_environment(anyscale_image, cluster_env_name) without return types