從源安裝

已釋出的包

本頁面介紹如何使用官方釋出的軟體包下載和驗證 apache-airflow-providers-sftp 提供者版本 5.2.1。您也可以透過 PyPI 安裝該提供者包,就像大多數 Python 軟體包一樣。您可以透過頁面左上角的下拉選單選擇提供者的不同版本。

釋出的 sdistwhl 軟體包是“官方”安裝源,如果您想驗證軟體包的來源並驗證軟體包的校驗和與簽名,可以使用這些軟體包。這些軟體包可透過 Apache 軟體基金會官方下載渠道獲取。

下載地址如下:

如果您想從原始碼安裝,可以從上面的原始碼連結下載,其中包含一個 INSTALL 檔案,詳細說明了如何構建和安裝提供者。

釋出完整性

PGP 簽名金鑰

使用 PGP 或 SHA 簽名驗證下載檔案的完整性至關重要。PGP 簽名可以使用 GPG 或 PGP 進行驗證。請下載 KEYS 檔案以及相關分發版本的 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-sftp-5.2.1.tar.gz.asc apache-airflow-providers-sftp-5.2.1.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-sftp-5.2.1.tar.gz  | diff - apache-airflow-providers-sftp-5.2.1.tar.gz.sha512

驗證 PyPI 釋出版本

您可以透過使用以下指令碼本地下載軟體包、簽名檔案和 SHA 校驗檔案來驗證來自 PyPI 的 Provider .whl 軟體包

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

根據前一章節的說明驗證檔案後,您可以刪除建立的臨時資料夾。

此條目有幫助嗎?