FAB CLI 命令¶
注意
以下 CLI 命令來源於 Airflow 2.9.0+ 的 FAB 提供者。先前,它們是 Airflow 核心的一部分,因此如果您使用的 Airflow 版本低於 2.9.0,請參閱 Airflow 核心文件以獲取可用 CLI 命令和參數的列表。
Usage: airflow [-h] GROUP_OR_COMMAND ...
位置引數¶
- 群組或命令
可能選項:users、roles、sync-perm、fab-db
子命令¶
users¶
管理使用者
airflow users [-h] COMMAND ...
位置引數¶
- 命令
可能選項:add-role、create、delete、export、import、list、remove-role、reset-password
子命令¶
add-role¶
為使用者新增角色
airflow users add-role [-h] [-e EMAIL] -r ROLE [-u USERNAME] [-v]
命名引數¶
- -e, --email
使用者的電子郵件
- -r, --role
使用者的角色。現有角色包括 Admin、User、Op、Viewer 和 Public
- -u, --username
使用者的使用者名稱
- -v, --verbose
使日誌輸出更詳細
預設值:False
create¶
建立使用者
airflow users create [-h] -e EMAIL -f FIRSTNAME -l LASTNAME [-p PASSWORD] -r
ROLE [--use-random-password] -u USERNAME [-v]
命名引數¶
- -e, --email
使用者的電子郵件
- -f, --firstname
使用者的名字
- -l, --lastname
使用者的姓氏
- -p, --password
使用者的密碼,建立使用者時若不使用 –use-random-password 則為必填項
- -r, --role
使用者的角色。現有角色包括 Admin、User、Op、Viewer 和 Public
- --use-random-password
不提示輸入密碼。改為使用隨機字串。建立使用者時若不使用 –password 則為必填項
預設值:False
- -u, --username
使用者的使用者名稱
- -v, --verbose
使日誌輸出更詳細
預設值:False
範例:若要建立角色為 “Admin” 且使用者名稱等於 “admin” 的使用者,請執行
- $ airflow users create
–username admin –firstname FIRST_NAME –lastname LAST_NAME –role Admin –email admin@example.org
delete¶
刪除使用者
airflow users delete [-h] [-e EMAIL] [-u USERNAME] [-v]
命名引數¶
- -e, --email
使用者的電子郵件
- -u, --username
使用者的使用者名稱
- -v, --verbose
使日誌輸出更詳細
預設值:False
export¶
匯出所有使用者
airflow users export [-h] [-v] FILEPATH
位置引數¶
- 檔案路徑
將所有使用者匯出到 JSON 檔案
命名引數¶
- -v, --verbose
使日誌輸出更詳細
預設值:False
import¶
匯入使用者
airflow users import [-h] [-v] FILEPATH
位置引數¶
- 檔案路徑
從 JSON 檔案匯入使用者。範例格式
[ { "email": "foo@bar.org", "firstname": "Jon", "lastname": "Doe", "roles": ["Public"], "username": "jondoe" } ]
命名引數¶
- -v, --verbose
使日誌輸出更詳細
預設值:False
list¶
列出使用者
airflow users list [-h] [-o table, json, yaml, plain] [-v]
命名引數¶
- -o, --output
可能選項:table、json、yaml、plain
輸出格式。允許的值:json、yaml、plain、table(預設值:table)
預設值:“table”
- -v, --verbose
使日誌輸出更詳細
預設值:False
remove-role¶
從使用者移除角色
airflow users remove-role [-h] [-e EMAIL] -r ROLE [-u USERNAME] [-v]
命名引數¶
- -e, --email
使用者的電子郵件
- -r, --role
使用者的角色。現有角色包括 Admin、User、Op、Viewer 和 Public
- -u, --username
使用者的使用者名稱
- -v, --verbose
使日誌輸出更詳細
預設值:False
reset-password¶
重設使用者的密碼
airflow users reset-password [-h] [-e EMAIL] [-p PASSWORD]
[--use-random-password] [-u USERNAME] [-v]
命名引數¶
- -e, --email
使用者的電子郵件
- -p, --password
使用者的密碼,建立使用者時若不使用 –use-random-password 則為必填項
- --use-random-password
不提示輸入密碼。改為使用隨機字串。建立使用者時若不使用 –password 則為必填項
預設值:False
- -u, --username
使用者的使用者名稱
- -v, --verbose
使日誌輸出更詳細
預設值:False
範例:若要重設使用者名稱等於 “admin” 的使用者密碼,請執行
- $ airflow users reset-password
–username admin
roles¶
管理角色
airflow roles [-h] COMMAND ...
位置引數¶
- 命令
可能選項:add-perms、create、del-perms、delete、export、import、list
子命令¶
add-perms¶
新增角色權限
airflow roles add-perms [-h] -a [ACTION ...] -r [RESOURCE ...] [-v] [role ...]
位置引數¶
- 角色
角色的名稱
命名引數¶
- -a, --action
權限的動作
- -r, --resource
權限的名稱
- -v, --verbose
使日誌輸出更詳細
預設值:False
create¶
建立角色
airflow roles create [-h] [-v] [role ...]
位置引數¶
- 角色
角色的名稱
命名引數¶
- -v, --verbose
使日誌輸出更詳細
預設值:False
del-perms¶
刪除角色權限
airflow roles del-perms [-h] [-a [ACTION ...]] -r [RESOURCE ...] [-v]
[role ...]
位置引數¶
- 角色
角色的名稱
命名引數¶
- -a, --action
權限的動作
- -r, --resource
權限的名稱
- -v, --verbose
使日誌輸出更詳細
預設值:False
delete¶
刪除角色
airflow roles delete [-h] [-v] [role ...]
位置引數¶
- 角色
角色的名稱
命名引數¶
- -v, --verbose
使日誌輸出更詳細
預設值:False
export¶
從資料庫匯出角色(不含權限)到 JSON 檔案
airflow roles export [-h] [-p] [-v] file
位置引數¶
- 檔案
將所有角色匯出到 JSON 檔案
命名引數¶
- -p, --pretty
透過排序角色名稱並縮排 4 個空格來格式化輸出 JSON 檔案
預設值:False
- -v, --verbose
使日誌輸出更詳細
預設值:False
sync-perm¶
更新現有角色的權限,並可選擇性地更新 DAG 的權限
airflow sync-perm [-h] [--include-dags] [-v]
命名引數¶
- --include-dags
如果傳遞此參數,也將同步 DAG 特定權限。
預設值:False
- -v, --verbose
使日誌輸出更詳細
預設值:False
fab-db¶
管理 FAB
airflow fab-db [-h] COMMAND ...
位置引數¶
- 命令
可能選項:downgrade、migrate、reset
子命令¶
downgrade¶
降級 FAB 元數據資料庫的結構描述。您必須提供 –to-revision 或 –to-version。若要列印但不執行命令,請使用選項 –show-sql-only。如果使用選項 –from-revision 或 –from-version,您也必須使用 –show-sql-only,因為如果實際執行遷移,我們應該只從目前的 Alembic 修訂版本遷移。
airflow fab-db downgrade [-h] [--from-revision FROM_REVISION]
[--from-version FROM_VERSION] [-s] [-r TO_REVISION]
[-n TO_VERSION] [-v] [-y]
命名引數¶
- --from-revision
(可選) 如果產生 SQL,可以提供來源 Alembic 修訂版本
- --from-version
(可選) 如果產生 SQL,可以提供來源版本
- -s, --show-sql-only
實際上不執行遷移;僅列印出 SQL 腳本以供離線遷移。如果使用 –from-revision 或 –from-version,則為必填項。
預設值:False
- -r, --to-revision
要降級到的 Alembic 修訂版本。注意:必須提供 –to-revision 或 –to-version。
- -n, --to-version
(可選) 如果提供,則僅執行到此版本的遷移。
- -v, --verbose
使日誌輸出更詳細
預設值:False
- -y, --yes
不提示確認。謹慎使用!
預設值:False
migrate¶
遷移 FAB 元數據資料庫的結構描述。如果資料庫不存在則建立資料庫。若要列印但不執行命令,請使用選項 --show-sql-only
。如果使用選項 --from-revision
或 --from-version
,您也必須使用 --show-sql-only
,因為如果實際執行遷移,我們應該只從目前的 Alembic 修訂版本遷移。
airflow fab-db migrate [-h] [--from-revision FROM_REVISION]
[--from-version FROM_VERSION] [-s] [-r TO_REVISION]
[-n TO_VERSION] [-v]
命名引數¶
- --from-revision
(可選) 如果產生 SQL,可以提供來源 Alembic 修訂版本
- --from-version
(可選) 如果產生 SQL,可以提供來源版本
- -s, --show-sql-only
實際上不執行遷移;僅列印出 SQL 腳本以供離線遷移。如果使用 –from-revision 或 –from-version,則為必填項。
預設值:False
- -r, --to-revision
(可選) 如果提供,則僅執行到包含此 Alembic 修訂版本的遷移。
- -n, --to-version
(可選) 要升級到的 Airflow 版本。注意:必須提供 –to-revision 或 –to-version。
- -v, --verbose
使日誌輸出更詳細
預設值:False