從原始碼安裝

已釋出的軟體包

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

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

下載地址如下:

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

釋出完整性

PGP 簽名 KEYS

您必須使用 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-smtp-2.0.3.tar.gz.asc apache-airflow-providers-smtp-2.0.3.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 匯入它,您就知道這是一個有效的 Key 了。

對於 SHA512 和校驗,下載相關的 sha512 檔案並執行以下命令:

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

檔案的 SHASUM 應與 .sha512 檔案中提供的一致。

示例

shasum -a 512 apache-airflow-providers-smtp-2.0.3.tar.gz  | diff - apache-airflow-providers-smtp-2.0.3.tar.gz.sha512

驗證 PyPI 版本

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

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

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

此條目有幫助嗎?