CloudRunService

A service hosted on GCP Cloud Run.

Example Usage

Basic Usage

1
import launchflow as lf
2
3
service = lf.gcp.CloudRunService("my-service", cpu=4)

Custom Environment Variables

1
import launchflow as lf
2
3
service = lf.gcp.CloudRunService(
4
"my-service",
5
environment_variables={"MY_ENV_VAR": "my-value"}
6
)

NOTE: This will create the following infrastructure in your GCP project:

initialization

Creates a new Cloud Run service.

Args:

  • name (str): The name of the service.
  • build_directory (str): The directory to build the service from. This should be a relative path from the project root where your launchflow.yaml is defined.
  • build_ignore (List[str]): A list of files to ignore when building the service. This can be in the same syntax you would use for a .gitignore.
  • dockerfile (str): The Dockerfile to use for building the service. This should be a relative path from the build_directory.
  • region (Optional[str]): The region to deploy the service to.
  • cpu (Optional[int]): The number of CPUs to allocate to each instance of the service.
  • memory (Optional[str]): The amount of memory to allocate to each instance of the service.
  • port (Optional[int]): The port the service listens on.
  • publicly_accessible (Optional[bool]): Whether the service is publicly accessible. Defaults to True.
  • min_instance_count (Optional[int]): The minimum number of instances to keep running.
  • max_instance_count (Optional[int]): The maximum number of instances to run.
  • max_instance_request_concurrency (Optional[int]): The maximum number of requests each instance can handle concurrently.
  • invokers (Optional[List[str]]): A list of invokers that can access the service.
  • custom_audiences (Optional[List[str]]): A list of custom audiences that can access the service. See: https://cloud.google.com/run/docs/configuring/custom-audiences.
  • ingress (Optional[Literal["INGRESS_TRAFFIC_ALL", "INGRESS_TRAFFIC_INTERNAL_ONLY", "INGRESS_TRAFFIC_INTERNAL_LOAD_BALANCER"]]): The ingress settings for the service. See: https://cloud.google.com/run/docs/securing/ingress.
  • environment_variables (Optional[Dict[str, str]]): A dictionary of environment variables to set for the service.
  • domain (Optional[str]): The custom domain to map to the service.