我试图使用Gitsync选项来加载带有社区气流Helm图的Dags。它似乎是同步在init容器(dags克隆)中。
I0824 15:21:52.114912 14 main.go:473] "level"=0 "msg"="starting up" "pid"=14 "args"=["/git-sync"]
I0824 15:21:52.115089 14 main.go:923] "level"=0 "msg"="cloning repo" "origin"="git@gitlab.techopscloud.com:gulledc/airflow-helm.git" "path"="/dags"
I0824 15:21:57.442933 14 main.go:737] "level"=0 "msg"="syncing git" "rev"="HEAD" "hash"="5ff4ef7ff5ff337dc45c01b9a53638505bc683d1"
I0824 15:21:57.775800 14 main.go:772] "level"=0 "msg"="adding worktree" "path"="/dags/5ff4ef7ff5ff337dc45c01b9a53638505bc683d1" "branch"="origin/master"
I0824 15:21:57.780648 14 main.go:833] "level"=0 "msg"="reset worktree to hash" "path"="/dags/5ff4ef7ff5ff337dc45c01b9a53638505bc683d1" "hash"="5ff4ef7ff5ff337dc45c01b9a53638505bc683d1"
I0824 15:21:57.780680 14 main.go:838] "level"=0 "msg"="updating submodules"所有的吊舱都在运行,但是当我去检查when服务器时,dags列表是空的。我知道同步可能需要时间,但我已经让吊舱坐了30分钟左右,但没有结果。
我已将id_rsa更新为k8机密,同步容器似乎正常工作,但用于“dag sync”容器的日志如下:
I0824 15:23:21.477543 12 main.go:473] "level"=0 "msg"="starting up" "pid"=12 "args"=["/git-sync"]在克隆了回购程序之后,它是怎么被卡住启动的?我在gitlab文件夹里只有一个测试程序..。
任何帮助都会很好。谢谢
作为参考,我的配置在社区舵图中如下所示:
dags:
## the airflow dags folder
path: /opt/HELM_AIRFLOW/airflow-helm/dags #CHANGE
#not picking up path.. not sure
## configs for the dags PVC
## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/dags/load-dag-definitions.md
persistence:
enabled: false
#storageClassName: aws-efs
## configs for the git-sync sidecar
## [FAQ] https://github.com/airflow-helm/charts/blob/main/charts/airflow/docs/faq/dags/load-dag-definitions.md
gitSync:
enabled: true
repo: "git@gitlab.techopscloud.com:gulledc/airflow-helm.git" #CHANGE, TRYING SSH
branch: "master"
revision: "HEAD"
dest: "git"
depth: 0
maxFailures: 5
#repoSubPath: dags
sshSecret: "ssh-key-secret"
shhSecretKey: "id_rsa"
syncWait: 60 #CHANGE
resources: #CHANGE
requests:
cpu: ".5"
memory: 100Mi发布于 2022-08-24 20:27:23
结果,我需要在操作符中指定DAG()。因此,DAG路径指向null,而不是dag。
豆荚不是通过文件名(我想的那样)而是通过任务名来读取DAG的。
dag = DAG('hello_world', description='Hello World DAG',
schedule_interval='0 12 * * *',
start_date=datetime(2022, 8, 24), catchup=False)
hello_operator = PythonOperator(task_id='hello_task', python_callable=print_hello, dag=dag)
hello_operator在这种情况下,hello_world将是守护进程的名称,而不是文件名。
https://stackoverflow.com/questions/73475932
复制相似问题