從原始碼安裝

發布的套件

此頁面描述如何下載並驗證 apache-airflow-providers-ftp 提供者版本 3.12.0,使用官方發布的套件。您也可以透過 PyPI 安裝提供者套件,如同大多數 Python 套件一樣。您可以從頁面左上角的下拉選單中選擇不同的版本,來選擇提供者的不同版本。

發布的 sdistwhl 套件是「官方」安裝來源,如果您想要驗證套件的來源,並驗證套件的校驗和與簽名,可以使用這些套件。這些套件可透過 Apache 軟體基金會官方下載 取得

下載位置在

如果您想從原始碼安裝,可以從上面的「sources」連結下載,其中將包含一個 INSTALL 檔案,其中包含有關如何建置和安裝提供者的詳細資訊。

發布完整性

PGP 簽名金鑰

務必使用 PGP 或 SHA 簽名驗證下載檔案的完整性。PGP 簽名可以使用 GPG 或 PGP 驗證。請下載金鑰以及相關發行版本的 asc 簽名檔案。建議從主要發布目錄而不是從鏡像站點取得這些檔案。

gpg -i KEYS

pgpk -a KEYS

pgp -ka KEYS

要驗證二進制檔案/原始碼,您可以從主要發布目錄下載相關的 asc 檔案,並按照以下指南操作。

gpg --verify apache-airflow-providers-********.asc apache-airflow-*********

pgpv apache-airflow-providers-********.asc

pgp apache-airflow-providers-********.asc

範例

$ gpg --verify apache-airflow-providers-ftp-3.12.0.tar.gz.asc apache-airflow-providers-ftp-3.12.0.tar.gz
  gpg: Signature made Sat 11 Sep 12:49:54 2021 BST
  gpg:                using RSA key CDE15C6E4D3A8EC4ECF4BA4B6674E08AD7DE406F
  gpg:                issuer "kaxilnaik@apache.org"
  gpg: Good signature from "Kaxil Naik <kaxilnaik@apache.org>" [unknown]
  gpg:                 aka "Kaxil Naik <kaxilnaik@gmail.com>" [unknown]
  gpg: WARNING: The key's User ID is not certified with a trusted signature!
  gpg:          There is no indication that the signature belongs to the owner.
  Primary key fingerprint: CDE1 5C6E 4D3A 8EC4 ECF4  BA4B 6674 E08A D7DE 406F

「Good signature from …」表示簽名正確。「not certified with a trusted signature」警告請不必擔心。發布管理者使用的大多數憑證都是自簽名的,這就是您收到此警告的原因。透過在上一步中導入伺服器,並透過 KEYS 頁面中的 ID 導入,您就知道這已經是有效的金鑰。

對於 SHA512 總和檢查,請下載相關的 sha512 並執行以下命令

shasum -a 512 apache-airflow-providers-********  | diff - apache-airflow-providers-********.sha512

檔案的 SHASUM 應與 .sha512 檔案中提供的相符。

範例

shasum -a 512 apache-airflow-providers-ftp-3.12.0.tar.gz  | diff - apache-airflow-providers-ftp-3.12.0.tar.gz.sha512

驗證 PyPI 發布

您可以透過從 PyPI 本地下載套件以及簽名和 SHA 總和檔案,使用以下腳本來驗證 Provider .whl 套件

#!/bin/bash
PACKAGE_VERSION=3.12.0
PACKAGE_NAME=apache-airflow-providers-ftp
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_ftp-3.12.0-py3-none-any.whl.asc" \
    -L -o "${provider_download_dir}/apache_airflow_providers_ftp-3.12.0-py3-none-any.whl.asc"
curl "https://downloads.apache.org/airflow/providers/apache_airflow_providers_ftp-3.12.0-py3-none-any.whl.sha512" \
    -L -o "${provider_download_dir}/apache_airflow_providers_ftp-3.12.0-py3-none-any.whl.sha512"
echo
echo "Please verify files downloaded to ${provider_download_dir}"
ls -la "${provider_download_dir}"
echo

一旦您按照上一章的說明驗證了檔案,就可以移除建立的臨時資料夾。

這個條目有幫助嗎?