def cloud_run_local_deploy()

in components/processing/tasks.py [0:0]


def cloud_run_local_deploy(c):
    """Document Processor local deployer (Cloud Run)

    This will deploy a new instance of Cloud Run jobs from the local
    codebase. This will use the local docker and gcloud commands
    to deploy.
    """
    repo = (
        f"{os.getenv('REPOSITORY_REGION')}-docker.pkg.dev/"
        f"{os.getenv('PROJECT_ID')}/{os.getenv('ARTIFACT_REPO_NAME')}"
    )
    job_name = os.getenv("PROCESSING_CLOUD_RUN_JOB_NAME")
    image = f"{repo}/{job_name}:latest"

    with c.cd(BASE_DIR):
        c.run(
            f"docker buildx build "
            "--push "
            f"--build-context libs=libs "
            f"--build-context reqs={ROOT_DIR}/reqs "
            f"-t {image} "
            f"terraform/build",
            pty=True,
        )
        c.run(
            f"gcloud "
            f"--project {os.getenv('PROJECT_ID')} "
            f"run jobs "
            f"--region {os.getenv('REGION')} "
            f"deploy {job_name} "
            f"--task-timeout=60m "
            f"--service-account={os.getenv('SERVICE_ACCOUNT')} "
            f"--image={image}"
        )