從原始碼安裝¶
發布的套件¶
本頁說明如何使用官方發布的套件下載和驗證 Airflow® 版本 2.10.4
。您也可以透過 PyPI 安裝 Apache Airflow
- 就像大多數 Python 套件一樣。您可以從頁面左上方的下拉式選單中選擇不同的 Airflow 版本。
發布的 source
、sdist
和 whl
套件是「官方」安裝來源,如果您想驗證套件的來源,並驗證套件的校驗和與簽章,可以使用這些來源。這些套件可透過 官方 Apache 軟體基金會下載 取得
從 2.8 版本開始,Airflow 遵循 PEP 517/518 標準,並使用 pyproject.toml
檔案來定義建置相依性和建置流程。它需要相對較新版本的封裝工具才能從本機來源或 sdist
套件建置 Airflow,因為 PEP 517 相容的建置鉤子用於確定動態建置相依性。對於 pip
來說,這表示至少需要 22.1.0 版本(於 2022 年初發布)才能從原始碼建置或安裝 Airflow。這不會影響從發布的 wheel 套件安裝 Airflow 的能力。
Airflow® 2.10.4 版本的下載連結如下
如果您想從原始碼安裝,可以從上面的原始碼連結下載,其中將包含一個 INSTALL
檔案,其中包含有關如何建置和安裝 Airflow 的詳細資訊。
發布完整性¶
務必使用 PGP 或 SHA 簽章驗證下載檔案的完整性。PGP 簽章可以使用 GPG 或 PGP 驗證。請下載 KEYS 以及相關發行版本的 asc 簽章檔案。建議從主要發行目錄而不是從鏡像站點取得這些檔案。
gpg -i KEYS
或
pgpk -a KEYS
或
pgp -ka KEYS
若要驗證二進位檔/原始碼,您可以從主要發行目錄下載相關的 asc 檔案,並按照下面的指南進行操作。
gpg --verify apache-airflow-********.asc apache-airflow-*********
或
pgpv apache-airflow-********.asc
或
pgp apache-airflow-********.asc
範例
$ gpg --verify apache-airflow-2.10.4-source.tar.gz.asc apache-airflow-2.10.4-source.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--******** | diff - apache-airflow--********.sha512
檔案的 SHASUM
應與 .sha512
檔案中提供的相符。
範例
shasum -a 512 apache-airflow-2.10.4-source.tar.gz | diff - apache-airflow-2.10.4-source.tar.gz.sha512
驗證 PyPI 發布版本¶
您可以透過使用以下腳本在本機下載套件、簽章和 SHA 總和檔案,來驗證來自 PyPI 的 Airflow .whl
套件
#!/bin/bash
AIRFLOW_VERSION="2.10.4"
airflow_download_dir="$(mktemp -d)"
pip download --no-deps "apache-airflow==${AIRFLOW_VERSION}" --dest "${airflow_download_dir}"
curl "https://downloads.apache.org/airflow/${AIRFLOW_VERSION}/apache_airflow-${AIRFLOW_VERSION}-py3-none-any.whl.asc" \
-L -o "${airflow_download_dir}/apache_airflow-${AIRFLOW_VERSION}-py3-none-any.whl.asc"
curl "https://downloads.apache.org/airflow/${AIRFLOW_VERSION}/apache_airflow-${AIRFLOW_VERSION}-py3-none-any.whl.sha512" \
-L -o "${airflow_download_dir}/apache_airflow-${AIRFLOW_VERSION}-py3-none-any.whl.sha512"
echo
echo "Please verify files downloaded to ${airflow_download_dir}"
ls -la "${airflow_download_dir}"
echo
在按照上一章的說明驗證檔案後,您可以移除建立的暫存資料夾。