Module core.backends.orchestrator.gcp.orchestrator_gcp_backend

Orchestrator for simple GCP VM backend

Classes

OrchestratorGCPBackend(project, cloudsql_connection_name, image: str = None, zone: str = 'europe-west1-b', instance_name: str = None, machine_type: str = 'e2-medium', preemptible: bool = True, service_account: str = None, **unused_kwargs) : Orchestrates pipeline in a GCP Compute Instance.

This orchestrator creates a .tar.gz of the current ZenML repository, sends
it over to the artifact store, then launches a VM with the specified image.
After pipeline is done, the VM automatically gets brought down, regardless
of whether the pipeline failed or not. To see logs of the pipeline, use
Logs Explorer <https://console.cloud.google.com/logs/> and filter for
`logName="projects/<project_name>/logs/gcplogs-docker-driver"`. After
running the VM, the launch response is returned as a dict, where the
`targetId` can be used to even further filter for logs.

### Ancestors (in MRO)

* zenml.core.backends.orchestrator.local.orchestrator_local_backend.OrchestratorLocalBackend
* zenml.core.backends.base_backend.BaseBackend

### Class variables

`BACKEND_TYPE`
:

### Methods

`launch_instance(self, config: Dict[str, Any])`
:   This function launches a GCP compute instance.
    
    Args:
        config: a ZenML config dict

`run(self, config: Dict[str, Any])`
:   This run function essentially calls an underlying TFX orchestrator run.
    However it is meant as a higher level abstraction with some
    opinionated decisions taken.
    
    Args:
        config: a ZenML config dict