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}"
)