从源码安装与校验 Apache Airflow Atlassian Jira Provider(apache-airflow-providers-atlassian-jira)

发布时间:2026/9/14 6:40:45
从源码安装与校验 Apache Airflow Atlassian Jira Provider(apache-airflow-providers-atlassian-jira) 从源码安装与校验 Apache Airflow Atlassian Jira Providerapache-airflow-providers-atlassian-jira【免费下载链接】airflowApache Airflow - A platform to programmatically author, schedule, and monitor workflows项目地址: https://gitcode.com/GitHub_Trending/ai/airflowApache Airflow 的 Provider 机制将第三方系统集成如 Jira与 Airflow 核心解耦Jira 相关的 Hook、Operator、Sensor、通知器都封装在独立的apache-airflow-providers-atlassian-jira分发包中随 Airflow 2.11 以独立版本号发布。本文以 providers/atlassian/jira/docs/installing-providers-from-sources.rst 为骨架完整讲解从 Apache 官方源码包、sdist/whl 构建产物安装 Jira Provider 的步骤以及用 PGP 签名与 SHA512 校验和验证包完整性与来源可信度的全部细节并结合当前仓库源码给出版本、依赖与底层实现的佐证。读完本文你将能够安全地手动下载、验签并安装任意版本的 Jira Provider 分发包。安装方式概览官方源码包与 PyPI 分发包Jira Provider 的官方分发包通过 Apache 软件基金会ASF与 PyPI 两个渠道发布Sources 源码包Source packagesASF 的官方包适合希望自行从源码构建、并确认包来源与仓库源码完全一致、可核验校验和与签名的场景。官方下载站点为https://dlcdn.apache.org/Apache 官方软件下载也可以从https://downloads.apache.org/airflow/providers/直接获取。sdist 与 whl 便利包由同一份源码构建出的发布产物方便 pip 直接安装同时仍然可以通过校验和与签名核验其来源。以当前仓库中 Jira Provider 的发布版本为例版本号取自 providers/atlassian/jira/provider.yaml 与 providers/atlassian/jira/pyproject.toml当前为3.3.5Apache 官方下载目录中提供三类文件每类均附带.ascPGP 签名与.sha512SHA512 校验和文件文件类型文件名示例以 3.3.5 为例附带文件Sources 源码包apache_airflow_providers-release-date-source.tar.gz.asc、.sha512sdist 源码分发包apache_airflow_providers_atlassian_jira-3.3.5.tar.gz.asc、.sha512wheel 二进制分发包apache_airflow_providers_atlassian_jira-3.3.5-py3-none-any.whl.asc、.sha512注意该 Provider 发布为纯 Python 包wheel 文件名中的py3-none-any即表示“任意平台、Python 3 通用”因此同一 wheel 可在所有支持 Python 3.10~3.14 的平台上直接安装无需本地编译。这一信息可以在 providers/atlassian/jira/pyproject.toml 的classifiers与requires-python 3.10中得到印证。下载源码包后包内会包含一份INSTALL文件说明如何构建与安装该 Provider。仓库根目录下的 INSTALL 文件提供了 Apache Airflow 整体的源码安装与开发环境搭建指引包括breeze、prek、hatch等工具的安装方式例如uv tool install -e ./dev/breeze、uv tool install hatch以及pip install -e .[devel]的虚拟环境安装方法可作为从源码构建整个 Airflow 环境的补充参考。版本与依赖安装前需要了解的约束在安装任何版本之前先确认依赖约束。Jira Provider 的依赖关系在 providers/atlassian/jira/pyproject.toml 的dependencies一节中声明与其 providers/atlassian/jira/README.rst 中的 Requirements 表格一致PIP 包版本要求作用apache-airflow2.11.0Airflow 核心的最低版本门槛apache-airflow-providers-common-compat1.10.1提供跨版本兼容的 Hook 基类等通用能力apache-airflow-providers-http无额外限制JiraAsyncHook基于HttpAsyncHook实现异步 HTTP 交互atlassian-python-api3.41.10Atlassian 官方 Python SDKJiraHook是其封装见 hooks/jira.py因此安装 Jira Provider 的前提是已有一个不低于 2.11.0 的 Apache Airflow 环境再执行pip install apache-airflow-providers-atlassian-jira或指定版本号叠加安装。该 Provider 当前状态为ready、生命周期为production见 provider.yaml可直接用于生产环境。发布完整性校验PGP 签名与 SHA512 校验和为什么必须校验官方文档明确强调必须使用 PGP 或 SHA 签名验证下载文件的完整性。PGP 签名用于确认文件确实由 Apache 发布者签发、未被篡改SHA512 校验和用于确认文件内容与官方一致。推荐从主发布目录而非镜像站获取KEYS与.asc签名文件以避免镜像同步延迟或被污染的风险。第一步导入 Apache 发布者公钥KEYS文件https://downloads.apache.org/airflow/KEYS包含所有 Airflow 发布经理的 PGP 公钥。根据本机安装的签名工具任选其一导入# 使用 GnuPGGPG gpg -i KEYS # 或使用 PGP 的 pgpk 工具 pgpk -a KEYS # 或使用 pgp 工具 pgp -ka KEYS第二步用 PGP 验证签名文件下载与分发包对应的.asc签名文件务必从主分发目录获取然后验证gpg --verify apache-airflow-providers-********.asc apache-airflow-*********或使用其他 PGP 工具pgpv apache-airflow-providers-********.asc # 或 pgp apache-airflow-providers-********.asc以 Jira Provider 的 sdist 包为例实际执行的命令形如gpg --verify apache_airflow_providers_atlassian_jira-3.3.5.tar.gz.asc apache_airflow_providers_atlassian_jira-3.3.5.tar.gz验证通过时输出类似gpg: Signature made Sat 11 Sep 12:49:54 2021 BST gpg: using RSA key CDE15C6E4D3A8EC4ECF4BA4B6674E08AD7DE406F gpg: issuer kaxilnaikapache.org gpg: Good signature from Kaxil Naik kaxilnaikapache.org [unknown] gpg: aka Kaxil Naik kaxilnaikgmail.com [unknown] gpg: WARNING: The keys User ID is not certified with a trusted signature! gpg: Primary key fingerprint: CDE1 5C6E 4D3A 8EC4 ECF4 BA4B 6674 E08A D7DE 406F官方文档特别说明输出中的Good signature from ... 即表示签名正确而 not certified with a trusted signature 警告无需担心——多数发布经理使用的证书是自签名的因此会出现该提示。只要公钥 ID 与KEYS页中发布的 ID 一致即可确认这把 Key 有效。第三步用 SHA512 校验和核对内容下载对应的.sha512文件后执行shasum -a 512 apache-airflow-providers-******** | diff - apache-airflow-providers-********.sha512若命令无输出diff无差异说明本地计算出的 SHASUM 与官方.sha512文件一致。以 Jira Provider 的 sdist 包为例shasum -a 512 apache_airflow_providers_atlassian_jira-3.3.5.tar.gz | diff - apache_airflow_providers_atlassian_jira-3.3.5.tar.gz.sha512校验 PyPI 发布的 wheel 包即使通过pip从 PyPI 安装也可以在安装前用官方脚本在本地完成验签与校验和核对。将以下脚本中的版本号与包名替换为实际值Jira Provider 当前为3.3.5与apache-airflow-providers-atlassian-jira后执行#!/bin/bash PACKAGE_VERSION3.3.5 PACKAGE_NAMEapache-airflow-providers-atlassian-jira provider_download_dir$(mktemp -d) pip download --no-deps ${PACKAGE_NAME}${PACKAGE_VERSION} --dest ${provider_download_dir} curl https://downloads.apache.org/airflow/providers/apache_airflow_providers_atlassian_jira-3.3.5-py3-none-any.whl.asc \ -L -o ${provider_download_dir}/apache_airflow_providers_atlassian_jira-3.3.5-py3-none-any.whl.asc curl https://downloads.apache.org/airflow/providers/apache_airflow_providers_atlassian_jira-3.3.5-py3-none-any.whl.sha512 \ -L -o ${provider_download_dir}/apache_airflow_providers_atlassian_jira-3.3.5-py3-none-any.whl.sha512 echo echo Please verify files downloaded to ${provider_download_dir} ls -la ${provider_download_dir} echo脚本逻辑拆解pip download --no-deps从 PyPI 拉取 wheel 包--no-deps表示不解析依赖只取包本身到临时目录curl从 Apache 主分发目录下载对应的.asc与.sha512文件列出临时目录内容供你按上一节的 PGP / SHA512 流程完成验证。验证完成后即可删除该临时目录随后正常执行pip install安装pip install --no-deps后需另行安装依赖或直接pip install apache-airflow-providers-atlassian-jira让 pip 自动解析依赖。结合源码理解安装对象Jira Provider 包含什么从源码安装前理解包内模块结构有助于验证安装结果。根据 provider.yaml 与 get_provider_info.py该文件是pyproject.toml中声明的apache_airflow_providerentry pointAirflow 核心通过它发现 Provider 元数据apache-airflow-providers-atlassian-jira分发包在安装后向 Airflow 注册以下能力能力Python 模块说明Operatorsairflow.providers.atlassian.jira.operators.jira执行 Jira 相关任务的算子Sensorsairflow.providers.atlassian.jira.sensors.jira等待 Jira 状态变化的传感器Hooksairflow.providers.atlassian.jira.hooks.jiraJiraHook同步封装atlassian-python-api的Jira客户端与JiraAsyncHook基于HttpAsyncHook的异步实现Connection typesjira连接类型Hook 类为JiraHook含Verify SSLverify布尔型默认true字段并在 UI 中隐藏schema与extra字段在 Airflow 连接管理界面创建 Jira 连接Notificationsairflow.providers.atlassian.jira.notifications.jira.JiraNotifier用于通知机制从源码结构看JiraHook.get_conn()在创建客户端时会从 Airflow 连接中读取host、login、password并通过extra_dejson读取verify选项默认True传给atlassian库的Jira(url..., username..., password..., verify_ssl..., proxies..., api_version..., api_root...)见 hooks/jira.py。这意味着安装完成后你只需在 Airflow UI 中配置一条jira类型连接即可在 DAG 中通过JiraHook或JiraOperator与 Jira 实例交互。sdist 包的内容由pyproject.toml中[tool.flit.sdist]的include指定包含docs/、provider.yaml、src/airflow/...源码目录与tests/测试目录因此从源码包构建时可以直接运行其中的单元测试验证构建正确性对应测试见 providers/atlassian/jira/tests/unit/atlassian/jira/。常见问题与操作要点镜像站与主站的选择下载分发包本身可从 CDN 镜像dlcdn.apache.org加速但KEYS与.asc/.sha512签名文件建议一律从主分发目录downloads.apache.org获取避免镜像不一致导致验签失败。“not certified with a trusted signature”警告这是自签名证书的常见提示只要显示Good signature且公钥指纹与官方KEYS一致即可放心。版本选择可通过 PyPI 上该包的不同版本下拉选择或在官方下载目录中按版本号定位对应文件当前仓库对应的最新版本号为3.3.5见 provider.yaml 的versions列表。Python 版本兼容该 Provider 支持 Python 3.10 ~ 3.14见 pyproject.toml 的classifiers安装前请确认你的 Airflow 运行环境 Python 版本在此范围内。依赖自动解析直接pip install apache-airflow-providers-atlassian-jira时pip 会依据包元数据自动安装apache-airflow2.11.0、atlassian-python-api3.41.10等依赖若采用pip download --no-deps手动校验的流程则需在安装阶段自行补齐这些依赖。【免费下载链接】airflowApache Airflow - A platform to programmatically author, schedule, and monitor workflows项目地址: https://gitcode.com/GitHub_Trending/ai/airflow创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询