kaxil commented on code in PR #1247:
URL: https://github.com/apache/airflow-site/pull/1247#discussion_r2430411360


##########
landing-pages/site/content/en/blog/airflowctl-1.0.0/index.md:
##########
@@ -0,0 +1,162 @@
+---
+title: "Apache Airflow CTL aka airflowctl 1.0.0"
+linkTitle: "Apache Airflow CTL aka airflowctl 1.0.0"
+author: "Buğra Öztürk"
+twitter: ""
+github: "bugraoz93"
+linkedin: "bugraozturk93"
+description: "A new way of using API in Airflow. Apache Airflow CTL aka 
airflowctl 1.0.0 is released! Secure way to manage your Apache Airflow 
deployments with ease."
+tags: ["release"]
+date: 2025-10-15
+images: ["/images/blog/airflowctl-1.0.0/airflowctl-cover.png"]
+---
+
+We are thrilled to announce the first major release of **`airflowctl` 1.0.0**, 
the new **secure, API-driven command-line interface (CLI)** for Apache Airflow 
— built under 
[**AIP-81**](https://cwiki.apache.org/confluence/display/AIRFLOW/AIP-81+Enhanced+Security+in+CLI+via+Integration+of+API).
+
+This release marks the beginning of Airflow’s next evolution: replacing the 
legacy direct-database CLI with a **modern, authenticated, and auditable 
interface** that communicates exclusively through the Airflow REST API.
+
+**Details**:
+
+📦 **PyPI:** 
[https://pypi.org/project/apache-airflow-ctl/1.0.0/](https://pypi.org/project/apache-airflow-ctl/1.0.0/)
  \
+📚 **airflowctl Docs:** 
[https://airflow.apache.org/docs/apache-airflow-ctl/stable/](https://airflow.apache.org/docs/apache-airflow-ctl/stable/)
  \
+🛠️ **Release Notes:** 
[https://airflow.apache.org/docs/apache-airflow-ctl/stable/release_notes.html](https://airflow.apache.org/docs/apache-airflow-ctl/stable/release_notes.html)
  \
+🪶 **Source Code:** 
[https://github.com/apache/airflow/tree/main/airflow-ctl](https://github.com/apache/airflow/tree/main/airflow-ctl)
+
+
+## 🔒 Why airflowctl?
+
+Until now, Airflow’s classic CLI connected directly to the **metadata 
database**, bypassing RBAC, authentication, and API logs.
+While convenient, this approach limited **security, auditing, and remote 
management** capabilities — especially for enterprise environments.
+
+**`airflowctl`** changes that by routing every command through the **Airflow 
REST API**, bringing:
+
+* **Authentication & RBAC enforcement**
+* **Centralized logging & audit trail**
+* **Secure credential storage via Keyring**
+* **Remote command execution with zero DB access**
+* **Consistency with Airflow UI and API behaviors**
+
+
+## 🚀 AIP-81: CLI Reimagined Through the API
+
+**AIP-81** (“Enhanced Security in CLI via Integration of API”) defined a clear 
goal:
+> “The CLI must be a first-class, secure client of the Airflow REST API — not 
a privileged database actor.”
+
+`airflowctl` is the direct realization of that vision.
+
+### Core design principles:
+- **All remote commands use the REST API**
+- **RBAC and auth handled consistently via API layer**
+- **Pluggable auth mechanisms** (basic auth, OAuth, token, etc.)
+- **Secure credential persistence** through **system keyring**
+- **Extensible** to new API endpoints as Airflow evolves
+
+
+## ⚙️ Getting Started
+
+```bash
+pip install apache-airflow-ctl

Review Comment:
   Should we also upload it to `airflowctl`?
   
   Or the two way of doing things is bad?
   
   Does ASF mandate `apache` name in the PyPI package @potiuk ? 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to