uranusjr commented on code in PR #31895:
URL: https://github.com/apache/airflow/pull/31895#discussion_r1230667896
##########
airflow/providers/google/cloud/links/dataproc.py:
##########
@@ -20,99 +20,151 @@
from typing import TYPE_CHECKING
-from airflow.models import BaseOperatorLink, XCom
-from airflow.providers.google.cloud.links.base import BASE_LINK
+from airflow.providers.google.cloud.links.base import BASE_LINK, BaseGoogleLink
if TYPE_CHECKING:
from airflow.models import BaseOperator
- from airflow.models.taskinstancekey import TaskInstanceKey
from airflow.utils.context import Context
DATAPROC_BASE_LINK = BASE_LINK + "/dataproc"
-DATAPROC_JOB_LOG_LINK = DATAPROC_BASE_LINK +
"/jobs/{resource}?region={region}&project={project_id}"
+DATAPROC_JOB_LINK = DATAPROC_BASE_LINK +
"/jobs/{job_id}?region={region}&project={project_id}"
+
DATAPROC_CLUSTER_LINK = (
- DATAPROC_BASE_LINK +
"/clusters/{resource}/monitoring?region={region}&project={project_id}"
+ DATAPROC_BASE_LINK +
"/clusters/{cluster_id}/monitoring?region={region}&project={project_id}"
)
+
DATAPROC_WORKFLOW_TEMPLATE_LINK = (
- DATAPROC_BASE_LINK +
"/workflows/templates/{region}/{resource}?project={project_id}"
+ DATAPROC_BASE_LINK +
"/workflows/templates/{region}/{workflow_template_id}?project={project_id}"
+)
+DATAPROC_WORKFLOW_LINK = (
+ DATAPROC_BASE_LINK +
"/workflows/instances/{region}/{workflow_id}?project={project_id}"
)
-DATAPROC_WORKFLOW_LINK = DATAPROC_BASE_LINK +
"/workflows/instances/{region}/{resource}?project={project_id}"
-DATAPROC_BATCH_LINK = DATAPROC_BASE_LINK +
"/batches/{region}/{resource}/monitoring?project={project_id}"
+
+DATAPROC_BATCH_LINK = DATAPROC_BASE_LINK +
"/batches/{region}/{batch_id}/monitoring?project={project_id}"
DATAPROC_BATCHES_LINK = DATAPROC_BASE_LINK + "/batches?project={project_id}"
-class DataprocLink(BaseOperatorLink):
- """Helper class for constructing Dataproc resource link."""
+class DataprocClusterLink(BaseGoogleLink):
+ """Helper class for constructing Dataproc Cluster Link."""
- name = "Dataproc resource"
- key = "conf"
+ name = "Dataproc Cluster"
+ key = "dataproc_cluster"
+ format_str = DATAPROC_CLUSTER_LINK
@staticmethod
def persist(
context: Context,
- task_instance,
- url: str,
- resource: str,
+ operator_instance: BaseOperator,
Review Comment:
Please call this `task` or `operator` instead; the object is too obviously
an instance and the name shouldn’t be lengthened unnecessarily.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]