Feature: Support using content of kubeconfig to create KubernetesHook
PR of Use kubeconfig as one of the optional parameters for creating KubernetesHook closes: https://github.com/apache/airflow/issues/39227
When we use KubernetesPodOperator, we need to create KubernetesHook in order to connect to Kubernetes services. There are currently 3 supported methods for creating KubernetesHook:
1、environment variable method,
2、kubeconfig_path method,
3、db connection variable method.
However, these methods are all from the perspective of the airflow system owner. The airflow owner can change the variables of the airflow_worker, create and modify files in the airflow_worker, and operate the airflow_db. However, in many cases, the users of airflow are not The owner of airflow, The user does not have the authority to make changes to the airflow_worker, nor does it have read and write permissions to the db, nor should it see the data stored in the db by other users.
Therefore, it is best for users to manage their own data rather than hosting it on the airflow system, in this case, it is a relatively reasonable choice to add an optional parameter to receive the kubeconfig text.
I believe this is a one time thing, do we need to expose this? kube config text may contain tokens. So, we need to secure them.
It is indeed one-time for the airflow user, but it is continuous for the airflow owner. I now manage an airflow system, and there are many users. For me, configuring the user's kubeconfig is a continuous boring job. Now the latest version of webUI has added permission control to airflow’s dag_code, i think the security of dag_code has been guaranteed.
@amoghrajesh @hussein-awala @jedcunningham Please review this PR
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 5 days if no further activity occurs. Thank you for your contributions.