exball/xiaomi-firmware-creator
0
Xiaomi Firmware Creator Service
Worker untuk membuat firmware flashable Xiaomi dari base ROM.
Deskripsi
Service ini menerima URL file ROM Xiaomi, mendownloadnya, dan menggunakan xiaomi_flashable_firmware_creator untuk membuat firmware flashable.
Fitur
- Endpoint API mirip dengan worker mirroring
- Progress tracking untuk download
- Job management dengan status monitoring
- Support untuk pembatalan job
- Health check endpoint
Endpoint API
POST /create_fw
Memulai proses pembuatan firmware dari URL ROM.
Request Body:
{
"url": "https://example.com/rom.zip"
}Response:
{
"success": true,
"message": "Firmware Creation Started",
"job_id": "uuid-string",
"status_url": "/status/{job_id}",
"stop_url": "/stop/{job_id}"
}GET /status/<job_id>
Mendapatkan status job tertentu.
Response:
{
"success": true,
"job": {
"job_id": "uuid-string",
"status": "pending|downloading|creating_firmware|completed|failed|cancelled",
"progress": 50.5,
"filename": "rom.zip",
"size_mb": "1024.5",
"speed_mbps": 2.5,
"firmware_filename": "firmware.zip",
"error": null
}
}GET /status/all
Mendapatkan status semua job aktif.
POST /stop/<job_id>
Membatalkan job yang sedang berjalan.
GET /health
Health check endpoint.
Deployment di Hugging Face
- Push kode ke repository Hugging Face
- Konfigurasi environment variables dari
.env.example - Build dan deploy menggunakan Dockerfile
Environment Variables
PORT: Port untuk Flask app (default: 8080)MAX_FILE_SIZE_MB: Maximum file size dalam MB (default: 5000)
File Hasil
File ROM yang didownload dan firmware yang berhasil dibuat akan disimpan di direktori root (/) di Hugging Face runtime, sehingga dapat diakses secara langsung.
