**Description**
Currently, we can only pass custom Image name to  **DataprocClusterCreateOperator(),**
as the custom image expires after 60 days, we either need to update the image or we need to pass the expiration token.

Functionality is already available in **gcloud** and **REST**.

`gcloud dataproc clusters test_cluster ......
--image projects/<custom_image_project_id>/global/images/family/<family_name>
.......
`


**Use case / motivation**
The user should be able to pass either Custom Image or Custom Image family name,
so we don't have to update the image up on expiration or use expiration token.


**Are you willing to submit a PR?**
Yes

**Related Issues**
None
airflow/providers/google/cloud/operators/dataproc.py
if self.zone:
            zone_uri = 'https://www.googleapis.com/compute/v1/projects/{}/zones/{}'.format(
                self.project_id, self.zone
            )
            cluster_data['gce_cluster_config']['zone_uri'] = zone_uri
        if self.metadata:
            cluster_data['gce_cluster_config']['metadata'] = self.metadata
        if self.network_uri:
            cluster_data['gce_cluster_config']['network_uri'] = self.network_uri
        if self.subnetwork_uri:
            cluster_data['gce_cluster_config']['subnetwork_uri'] = self.subnetwork_uri
        if self.internal_ip_only:
            if not self.subnetwork_uri:
                raise AirflowException("Set internal_ip_only to true only when you pass a subnetwork_uri.")
            cluster_data['gce_cluster_config']['internal_ip_only'] = True
        if self.tags:
            cluster_data['gce_cluster_config']['tags'] = self.tags
        if self.service_account:
            cluster_data['gce_cluster_config']['service_account'] = self.service_account
        if self.service_account_scopes:
            cluster_data['gce_cluster_config']['service_account_scopes'] = self.service_account_scopes
        return cluster_data
    def _build_lifecycle_config(self, cluster_data):