修改 Airflow Composer 上 bash 文件的权限
Amending permissions to bash files on Airflow Composer
我们在 Google Cloud Composer 上 运行ning Airflow。
我有一个 bash 脚本正在我的 DAG 的 BashOperator 中调用:
split_files = BashOperator(
task_id='split_gcp_files',
bash_command='/home/airflow/gcs/dags/file_splitter.sh ',
xcom_push=True,
depends_on_past=True,
dag=dag
)
当我 运行 然而,我得到以下错误:
[2021-06-17 18:24:13,330] {bash_operator.py:137} INFO - Temporary script location: /tmp/airflowtmp8dsdf38/split_gcp_filesah83sdf
[2021-06-17 18:24:13,330] {bash_operator.py:147} INFO - Running command: /home/airflow/gcs/dags/file_splitter.sh
[2021-06-17 18:24:13,472] {bash_operator.py:154} INFO - Output:
[2021-06-17 18:24:13,475] {bash_operator.py:158} INFO - /tmp/airflowtmp8dsdf38/split_gcp_filesoofibpg7: line 1: /home/airflow/gcs/dags/file_splitter.sh: Permission denied
file_splitter.sh已经复制到一个GCS bucket,但是不知道Airflow修改权限的文件在哪里?例如。我在哪里可以找到“/home/airflow/gcs/dags/”?
我已经尝试通过 SSH 连接到 Kubernetes 节点,但找不到该路径或者我没有权限?
将 bash 命令更改为此有效,知道为什么吗?:
bash_command='bash /home/airflow/gcs/dags/file_splitter.sh '
我们在 Google Cloud Composer 上 运行ning Airflow。
我有一个 bash 脚本正在我的 DAG 的 BashOperator 中调用:
split_files = BashOperator(
task_id='split_gcp_files',
bash_command='/home/airflow/gcs/dags/file_splitter.sh ',
xcom_push=True,
depends_on_past=True,
dag=dag
)
当我 运行 然而,我得到以下错误:
[2021-06-17 18:24:13,330] {bash_operator.py:137} INFO - Temporary script location: /tmp/airflowtmp8dsdf38/split_gcp_filesah83sdf
[2021-06-17 18:24:13,330] {bash_operator.py:147} INFO - Running command: /home/airflow/gcs/dags/file_splitter.sh
[2021-06-17 18:24:13,472] {bash_operator.py:154} INFO - Output:
[2021-06-17 18:24:13,475] {bash_operator.py:158} INFO - /tmp/airflowtmp8dsdf38/split_gcp_filesoofibpg7: line 1: /home/airflow/gcs/dags/file_splitter.sh: Permission denied
file_splitter.sh已经复制到一个GCS bucket,但是不知道Airflow修改权限的文件在哪里?例如。我在哪里可以找到“/home/airflow/gcs/dags/”?
我已经尝试通过 SSH 连接到 Kubernetes 节点,但找不到该路径或者我没有权限?
将 bash 命令更改为此有效,知道为什么吗?:
bash_command='bash /home/airflow/gcs/dags/file_splitter.sh '