從原始碼安裝¶
已釋出的包¶
本頁介紹如何使用官方釋出的軟體包下載並驗證 apache-airflow-providers-apache-spark 提供程式版本 5.2.1。您也可以透過 PyPI 安裝此提供程式包,就像安裝大多數 Python 包一樣。您可以透過頁面左上角的下拉選單選擇不同版本的提供程式。
釋出的 sdist 和 whl 包是“官方”的安裝來源,如果您想驗證包的來源以及驗證包的校驗和和簽名,可以使用它們。這些包可以透過 Apache 軟體基金會官方下載地址 獲取。
下載地址如下:
如果您想從原始碼安裝,可以從上面的原始碼連結下載,其中會包含一個 INSTALL 檔案,詳細說明如何構建和安裝此提供程式。
釋出完整性¶
使用 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-apache-spark-5.2.1.tar.gz.asc apache-airflow-providers-apache-spark-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 匯入它,您就知道這是一個已驗證的 Key 了。
對於 SHA512 校驗和檢查,請下載相關的 sha512 檔案並執行以下命令:
shasum -a 512 apache-airflow-providers-******** | diff - apache-airflow-providers-********.sha512
檔案的 SHASUM 應與 .sha512 檔案中提供的值匹配。
示例
shasum -a 512 apache-airflow-providers-apache-spark-5.2.1.tar.gz | diff - apache-airflow-providers-apache-spark-5.2.1.tar.gz.sha512
驗證 PyPI 釋出包¶
您可以透過在本地下載包及其簽名和 SHA 校驗和檔案,並使用下面的指令碼來驗證從 PyPI 獲取的 Provider .whl 包
#!/bin/bash
PACKAGE_VERSION=5.2.1
PACKAGE_NAME=apache-airflow-providers-apache-spark
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_apache_spark-5.2.1-py3-none-any.whl.asc" \
-L -o "${provider_download_dir}/apache_airflow_providers_apache_spark-5.2.1-py3-none-any.whl.asc"
curl "https://downloads.apache.org/airflow/providers/apache_airflow_providers_apache_spark-5.2.1-py3-none-any.whl.sha512" \
-L -o "${provider_download_dir}/apache_airflow_providers_apache_spark-5.2.1-py3-none-any.whl.sha512"
echo
echo "Please verify files downloaded to ${provider_download_dir}"
ls -la "${provider_download_dir}"
echo
根據上一章節的說明驗證檔案後,您可以刪除建立的臨時資料夾。