> ## Documentation Index
> Fetch the complete documentation index at: https://docs.prefect.io/llms.txt
> Use this file to discover all available pages before exploring further.

# utilities

# `prefect_gcp.utilities`

## Functions

### `slugify_name` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L10" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
slugify_name(name: str, max_length: int = 30) -> Optional[str]
```

Slugify text for use as a name.

Keeps only alphanumeric characters and dashes, and caps the length
of the slug at 30 chars.

The 30 character length allows room to add a uuid for generating a unique
name for the job while keeping the total length of a name below 63 characters,
which is the limit for Cloud Run job names.

**Args:**

* `name`: The name of the job

**Returns:**

* The slugified job name or None if the slugified name is empty

## Classes

### `Job` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L70" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

Utility class to call GCP `jobs` API and
interact with the returned objects.

**Methods:**

#### `create` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L142" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
create(client: Resource, namespace: str, body: dict)
```

Make a create request to the GCP jobs API.

#### `delete` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L149" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
delete(client: Resource, namespace: str, job_name: str)
```

Make a delete request to the GCP jobs API.

#### `get` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L127" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
get(cls, client: Resource, namespace: str, job_name: str)
```

Make a get request to the GCP jobs API and return a Job instance.

#### `has_execution_in_progress` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L101" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
has_execution_in_progress(self) -> bool
```

See if job has a run in progress.

#### `is_ready` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L95" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
is_ready(self) -> bool
```

Whether a job is finished registering and ready to be executed

#### `run` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L156" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
run(client: Resource, namespace: str, job_name: str)
```

Make a run request to the GCP jobs API.

### `Execution` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L163" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

Utility class to call GCP `executions` API and
interact with the returned objects.

**Methods:**

#### `condition_after_completion` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L180" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
condition_after_completion(self)
```

Returns Execution condition if Execution has completed.

#### `get` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L195" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
get(cls, client: Resource, namespace: str, execution_name: str)
```

Make a get request to the GCP executions API
and return an Execution instance.

#### `is_running` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L176" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
is_running(self) -> bool
```

Returns True if Execution is not completed.

#### `succeeded` <sup><a href="https://github.com/PrefectHQ/prefect/blob/main/src/integrations/prefect-gcp/prefect_gcp/utilities.py#L186" target="_blank"><Icon icon="github" style="width: 14px; height: 14px;" /></a></sup>

```python theme={null}
succeeded(self)
```

Whether or not the Execution completed is a successful state.
