Repository: kubeflow/pipelines

Issue:
[sample] Error running xgboost_training_cm.py
### Environment

*  How did you deploy Kubeflow Pipelines (KFP)?   GCP marketplace
<!-- For more information, see an overview of KFP installation options: https://www.kubeflow.org/docs/pipelines/installation/overview/. -->
*  KFP version:  1.7.1
<!-- Specify the version of Kubeflow Pipelines that you are using. The version number appears in the left side navigation of user interface.
To find the version number, See version number shows on bottom of KFP UI left sidenav. -->
*  KFP SDK version: 
<!-- Specify the output of the following shell command: $pip3 list | grep kfp -->
```
kfp                      1.8.11
kfp-pipeline-spec        0.1.13
kfp-server-api           1.8.1
```

### Steps to reproduce

<!--
Specify how to reproduce the problem. 
This may include information such as: a description of the process, code snippets, log output, or screenshots.
-->
Follow the steps given in the following link to deploy `xgboost_training_cm.py` 
https://github.com/kubeflow/pipelines/tree/master/samples/core/xgboost_training_cm

### Expected result

<!-- What should the correct behavior be? -->
There shows an error with `dataproc-create-cluster` (the second block)
```
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/local/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/ml/kfp_component/launcher/__main__.py", line 45, in <module>
    main()
  File "/ml/kfp_component/launcher/__main__.py", line 42, in main
    launch(args.file_or_module, args.args)
  File "/ml/kfp_component/launcher/launcher.py", line 45, in launch
    return fire.Fire(module, command=args, name=module.__name__)
  File "/usr/local/lib/python3.7/site-packages/fire/core.py", line 127, in Fire
    component_trace = _Fire(component, args, context, name)
  File "/usr/local/lib/python3.7/site-packages/fire/core.py", line 366, in _Fire
    component, remaining_args)
  File "/usr/local/lib/python3.7/site-packages/fire/core.py", line 542, in _CallCallable
    result = fn(*varargs, **kwargs)
  File "/ml/kfp_component/google/dataproc/_create_cluster.py", line 76, in create_cluster
    client = DataprocClient()
  File "/ml/kfp_component/google/common/_utils.py", line 170, in __init__
    self._build_client()
TypeError: _build_client() takes 0 positional arguments but 1 was given
```

### Materials and Reference

<!-- Help us debug this issue by providing resources such as: sample code, background context, or links to references. -->
N/A

---

<!-- Don't delete message below to encourage users to support your issue! -->
Impacted by this bug? Give it a 👍. We prioritise the issues with the most 👍.



Discussion:

Resolving patch:
diff --git a/components/gcp/container/component_sdk/python/kfp_component/google/common/_utils.py b/components/gcp/container/component_sdk/python/kfp_component/google/common/_utils.py
--- a/components/gcp/container/component_sdk/python/kfp_component/google/common/_utils.py
+++ b/components/gcp/container/component_sdk/python/kfp_component/google/common/_utils.py
@@ -173,5 +173,5 @@ def __init__(self):
                 self.__dict__[name] = with_retries(func=member, errors=(BrokenPipeError, IOError), on_error=self._build_client)
 
     @abc.abstractmethod
-    def _build_client():
+    def _build_client(self):
         raise NotImplementedError()


Test patch: