【问题标题】:Trigger Jenkins job from Airflow从 Airflow 触发 Jenkins 作业
【发布时间】:2020-04-08 16:49:54
【问题描述】:

我正在尝试从 Airflow 触发 Jenkins 工作。我添加了连接详细信息 - 主机为“https://jenkins.optum.com/abc/”。添加了用户名、密码和端口详细信息。连接 ID 是“Airflow_Jenkins”。 Jenkins Multibranch 管道作业名称为“Airflow_Audit”。当我尝试运行以下错误的任务时:

[2020-04-08 11:41:25,535] {logging_mixin.py:95} 信息 - [2020-04-08 11:41:25,535] {jenkins_hook.py:44} 信息 - 试图连接到 @ 987654322@ [2020-04-08 11:41:25,540] {init.py:1580} 错误 - HTTPConnectionPool(host='https', port=80): 使用 url:/jenkins 超出了最大重试次数。 optum.com/abc/:80/crumbIssuer/api/json (Caused by NewConnectionError(': 无法建立新连接: [Errno -2] Name or service not known',))

下面是我的代码:

job_trigger = JenkinsJobTriggerOperator(
  dag=dag,
  task_id="trigger_job",
  job_name="Airflow_Audit",
  #parameters={"first_parameter":"a_value", "second_parameter":"18"},
  #parameters="resources/paremeter.json", You can also pass a path to a json file containing your param
  jenkins_connection_id="Airflow_Jenkins" #The connection must be configured first
)

【问题讨论】:

  • "名称或服务未知" — 看起来像是 DNS 级别的问题。 URL 有一些奇怪的地方:“http\://https\:// ...”看起来很奇怪。而且我看到host='https',大概是这里的根本原因。

标签: jenkins connection airflow


【解决方案1】:

我昨天遇到了这个问题。您必须从主机中删除 https://。它应该是:“jenkins.optum.com/abc/”并且在额外的参数中你必须添加true,这将表明你想根据文档使用https:https://airflow.apache.org/docs/apache-airflow/1.10.8/_modules/airflow/contrib/hooks/jenkins_hook.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多