chore(release): standardize enterprise documentation and asset integrity
This commit is contained in:
@@ -1,30 +1,29 @@
|
||||
# 📦 MERICA Pipeline Bundles (Public Open-Source Data Lakehouse Assets)
|
||||
# 📦 MERICA Pipeline Bundles (Data Lakehouse Production Assets)
|
||||
|
||||
> **Repositori Resmi**: **Single Source of Truth (SSOT)** Aset Konfigurasi Pipeline, Model dbt Medallion, Metadata, & Custom Operators untuk **MERICA Data Lakehouse**
|
||||
> **Status**: **General Availability (GA) v1.0 — Production Ready & Open-Source**
|
||||
> **Standar Integrasi**: Apache Airflow 3 Native Git DAG Bundles (`GitDagBundle` AIP-66) & dbt Core
|
||||
> **Status**: **General Availability (GA) v1.0 — Production Ready**
|
||||
> **Integrasi Platform**: Apache Airflow 3 Native Git DAG Bundles (`GitDagBundle` AIP-66) & dbt Core
|
||||
|
||||
---
|
||||
|
||||
## 🏛️ 1. Ikhtisar Repositori
|
||||
|
||||
Repositori **`merica-pipeline`** adalah **Single Source of Truth (SSOT)** publik yang memisahkan seluruh logika bisnis data pipelines dari runtime platform MERICA Studio dan Airflow Engine.
|
||||
Repositori **`merica-pipelines`** adalah **Single Source of Truth (SSOT)** yang mengisolasi seluruh logika bisnis pipeline data dan model analitik dari runtime engine platform MERICA Studio dan Apache Airflow.
|
||||
|
||||
Dengan arsitektur **Git DAG Bundles (AIP-66)** Apache Airflow 3:
|
||||
* **Zero-Credential / Anonymous Clone**: Karena repositori ini bersifat publik/open, Airflow 3 DAG Processor dapat melakukan kloning dan sinkronisasi otomatis tanpa memerlukan username, password, atau personal access token (PAT).
|
||||
* **Hot-Reload Tanpa Restart**: Setiap berkas konfigurasi YAML di repositori ini secara otomatis disinkronkan ke Airflow runtime dalam interval **30 detik** tanpa mematikan atau me-restart scheduler/webserver.
|
||||
* **Canvas Interaktif MERICA Studio**: Konfigurasi YAML di repositori ini langsung dibaca dan divisualisasikan menjadi node-edge pipeline di antarmuka web MERICA Studio Canvas.
|
||||
* **Sinkronisasi Otomatis Tanpa Restart**: Setiap berkas konfigurasi YAML di repositori ini secara otomatis disinkronkan ke Airflow runtime dalam interval **30 detik** tanpa mematikan atau me-restart scheduler/webserver.
|
||||
* **Canvas Interaktif MERICA Studio**: Konfigurasi YAML di repositori ini langsung dibaca dan dirender menjadi node-edge pipeline pada antarmuka visual MERICA Studio Canvas.
|
||||
* **Distribusi Terpusat**: Pengguna appliance MERICA Studio cukup mengarahkan URL repositori ini pada konfigurasi lingkungan untuk mendapatkan katalog pipeline terbaru.
|
||||
|
||||
---
|
||||
|
||||
## 📁 2. Struktur Direktori Repositori
|
||||
|
||||
```text
|
||||
merica-pipeline/
|
||||
├── LICENSE # Lisensi Apache 2.0 Open-Source
|
||||
merica-pipelines/
|
||||
├── README.md # Dokumentasi utama repositori
|
||||
├── RELEASE_NOTES.md # Catatan rilis resmi v1.0 GA
|
||||
├── TESTING.md # Panduan pengujian lokal & CI/CD
|
||||
├── TESTING.md # Panduan audit dan validasi aset pipeline
|
||||
├── requirements.txt # Dependensi testing Python (pytest, ruff)
|
||||
├── configs/ # Konfigurasi pipeline deklaratif (*.yaml)
|
||||
│ ├── example_permits_medallion_dbt_postgres.yaml # Referensi E2E Medallion dbt
|
||||
@@ -53,15 +52,15 @@ merica-pipeline/
|
||||
│ ├── silver/ # Deduplikasi CDC & Data Cleansing
|
||||
│ └── gold/ # Data Mart, ISPU harian, & Agregasi KPI
|
||||
├── metadata/ # Metadata visual posisi node kanvas (*.json)
|
||||
├── samples/ # Dummy sample dataset untuk validasi lokal
|
||||
├── samples/ # Dataset referensi untuk validasi lokal
|
||||
├── schemas/ # Kontrak skema dataset (.gitkeep)
|
||||
├── docs/ # Panduan teknis penulisan pipeline
|
||||
├── docs/ # Panduan teknis spesifikasi pipeline
|
||||
└── tests/ # Automated unit tests untuk seluruh operator
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📋 3. Katalog 4 Pipeline Bawaan (Canonical Use Cases)
|
||||
## 📋 3. Katalog Pipeline Kanonikal
|
||||
|
||||
| Nama Pipeline | Domain | Jadwal | Engine & Alur Medallion |
|
||||
| :--- | :--- | :--- | :--- |
|
||||
@@ -72,48 +71,42 @@ merica-pipeline/
|
||||
|
||||
---
|
||||
|
||||
## ⚙️ 4. Cara Penggunaan Bersama MERICA Standalone Appliance
|
||||
## ⚙️ 4. Cara Penggunaan Bersama MERICA Studio Appliance
|
||||
|
||||
Cukup arahkan variabel lingkungan di `.env` file **MERICA Standalone** ke URL repositori ini:
|
||||
Arahkan variabel lingkungan di `.env` file **MERICA Studio / Standalone** ke URL repositori ini:
|
||||
|
||||
```bash
|
||||
# Di dalam merica-standalone/.env:
|
||||
GIT_PIPELINE_REPO_URL=https://github.com/<your-username-or-org>/merica-pipeline.git
|
||||
# Konfigurasi repositori pipeline di .env:
|
||||
GIT_PIPELINE_REPO_URL=https://repo.sicabe.com/merica-dlh/merica-pipelines.git
|
||||
GIT_PIPELINE_REPO_BRANCH=main
|
||||
GIT_PIPELINE_REPO_SUBDIR=dags
|
||||
|
||||
# Karena repositori ini publik/open, kosongkan kredensial git:
|
||||
# Kredensial repositori git (kosongkan jika repositori dapat diakses tanpa autentikasi):
|
||||
GIT_PIPELINE_REPO_USER=
|
||||
GIT_PIPELINE_REPO_TOKEN=
|
||||
```
|
||||
|
||||
Ketika stack MERICA Standalone dinyalakan (`./scripts/01_install_stack.sh`), Airflow 3 DAG Processor akan otomatis meng-clone repositori ini dan menyajikan seluruh DAG di web UI ([http://localhost:14080](http://localhost:14080)) serta di MERICA Studio Canvas ([http://localhost:14000](http://localhost:14000)).
|
||||
Ketika stack MERICA Studio dijalankan (`./scripts/01_install_stack.sh`), Airflow 3 DAG Processor akan otomatis mengunduh repositori ini dan menyajikan seluruh DAG pada antarmuka web Airflow ([http://localhost:14080](http://localhost:14080)) serta MERICA Studio Canvas ([http://localhost:14000](http://localhost:14000)).
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ 5. Menambahkan Pipeline Baru
|
||||
|
||||
1. **Tambahkan file konfigurasi YAML** di `configs/<nama_pipeline>.yaml`.
|
||||
2. **(Opsional) Tambahkan model dbt** di `dbt/models/silver/` atau `dbt/models/gold/`.
|
||||
1. **Tambahkan berkas konfigurasi YAML** di direktori `configs/<nama_pipeline>.yaml`.
|
||||
2. **(Opsional) Tambahkan model dbt** di direktori `dbt/models/silver/` atau `dbt/models/gold/`.
|
||||
3. **Commit & Push**:
|
||||
```bash
|
||||
git add configs/<nama_pipeline>.yaml
|
||||
git commit -m "feat(pipeline): add new pipeline"
|
||||
git push origin main
|
||||
```
|
||||
4. **Selesai**: Dalam waktu 30 detik, DAG baru langsung aktif dan terdeteksi di Airflow dan MERICA Studio.
|
||||
4. **Verifikasi**: Dalam waktu 30 detik, pipeline baru akan terdeteksi dan aktif secara otomatis di Airflow dan MERICA Studio.
|
||||
|
||||
---
|
||||
|
||||
## 🧪 6. Menjalankan Unit Tests Lokal
|
||||
## 🧪 6. Pengujian Unit Lokal
|
||||
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
pytest tests/ -v
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📄 Lisensi
|
||||
|
||||
Proyek ini dilisensikan di bawah ketentuan [Apache License 2.0](LICENSE).
|
||||
|
||||
Reference in New Issue
Block a user