İki operatör komutu bir veritabanına müşteri dışı veri koyar: python -m cluster_erp.server.demo_data bir veritabanını uydurma bir üretim şirketiyle doldurur, python -m cluster_erp.server.staging_fixtures ise tarayıcı bataryasının bir staging düğümünde oturum açtığı hesapları oluşturur. Bu sayfa seçeneklerini, ne oluşturduklarını ve kodlarındaki korumaları listeler. Hesap adları ve parolalar güvenlik açıklama politikası gereği yazılmamıştır.
Kapsam ve kaynak¶
- Tanımlandığı yer:
src/cluster_erp/server/demo_data.py(main,run,seed) vesrc/cluster_erp/server/staging_fixtures.py(main,assert_staging_node,accounts_with_passwords,ensure_accounts). - Sayı:
seediçindeki_phase(...)çağrılarından sayılan on demo aşaması (src/cluster_erp/server/demo_data.py:1176-1187);ACCOUNTSdemetinden sayılan dört staging hesabı (src/cluster_erp/server/staging_fixtures.py:54-59).
Demo şirket tohumlayıcısı¶
Seçenekler¶
| Seçenek | Anlamı | Kaynak |
|---|---|---|
--db-name <name> |
Doldurulacak veritabanı; verilmezse yapılandırılmış veritabanı. | src/cluster_erp/server/demo_data.py:1222 |
--create |
Önce veritabanını oluşturur ve Alembic geçmişini yeniden oynatır. | src/cluster_erp/server/demo_data.py:1223, src/cluster_erp/server/demo_data.py:1201-1203 |
--company <name> |
Demo şirketin görünen adı; varsayılan DEFAULT_COMPANY sabitidir. |
src/cluster_erp/server/demo_data.py:44, src/cluster_erp/server/demo_data.py:1224 |
--license-file <file> |
Tohumlamadan önce kurulacak, satıcı imzalı bir lisans belgesi. | src/cluster_erp/server/demo_data.py:1225-1228 |
Aşamalar¶
Tohumlayıcı gerçek uygulamayı veritabanına karşı açar, ardından her aşamayı modüllerin kendi servis katmanı üzerinden, ilk yöneticiyi eyleyen olarak koşar (src/cluster_erp/server/demo_data.py:6-14, src/cluster_erp/server/demo_data.py:1194-1217). Her aşama kendi başına commit edilir (src/cluster_erp/server/demo_data.py:1110-1121).
| Aşama | İşlev | Kaynak |
|---|---|---|
company |
seed_company |
src/cluster_erp/server/demo_data.py:84 |
partners |
seed_partners |
src/cluster_erp/server/demo_data.py:185 |
products |
seed_products |
src/cluster_erp/server/demo_data.py:313 |
inventory |
seed_inventory |
src/cluster_erp/server/demo_data.py:443 |
engineering |
seed_engineering |
src/cluster_erp/server/demo_data.py:536 |
sales |
seed_sales |
src/cluster_erp/server/demo_data.py:693 |
supply |
seed_supply |
src/cluster_erp/server/demo_data.py:849 |
fleet |
seed_fleet |
src/cluster_erp/server/demo_data.py:966 |
intranet |
seed_intranet |
src/cluster_erp/server/demo_data.py:1033 |
home |
seed_home |
src/cluster_erp/server/demo_data.py:1094 |
Sonunda komut oluşturulan her kayıt türü için bir sayı yazar (src/cluster_erp/server/demo_data.py:1239-1241).
Korumalar¶
| Koruma | Davranış | Kaynak |
|---|---|---|
| Sentetik veri | Modül verinin uydurma olduğunu ve hiçbir zaman bir müşterinin veritabanına karşı çalıştırılmaması gerektiğini belirtir. | src/cluster_erp/server/demo_data.py:4-19 |
| İlk yönetici | İlk yönetici yoksa koşu durur; düğüm bir kez açılmış olmalıdır. | src/cluster_erp/server/demo_data.py:1151-1153 |
| Eş güçlülük | Demo şirketin adını taşıyan canlı bir taraf zaten varsa veritabanına dokunulmaz; yalnız yöneticinin ana ekranı ayarlanır. | src/cluster_erp/server/demo_data.py:75-82, src/cluster_erp/server/demo_data.py:1162-1168 |
| Lisans | Verilen lisans uygulama mağazası servisi üzerinden kurulur; lisanslamanın etkin olduğu bir düğümde lisans verilmezse koşu satılan uygulamaların lisanssız kaldığını yazar. Tohumlayıcı lisans denetimini atlamaz. | src/cluster_erp/server/demo_data.py:1124-1161 |
| Aşama hatası | Önceki aşamalar commit edilmiş kalır; günlük sonraki koşudan önce demo veritabanının düşürülüp yeniden oluşturulmasını ister. | src/cluster_erp/server/demo_data.py:1110-1119 |
Staging test hesapları¶
Davranış¶
| Adım | Davranış | Kaynak |
|---|---|---|
| Rol denetimi | Düğümün rol kaydı tam olarak staging demiyorsa 2 çıkış koduyla reddeder. |
src/cluster_erp/server/staging_fixtures.py:92-105, src/cluster_erp/server/staging_fixtures.py:191-195 |
| Parolalar | Parolaları CLUSTER_STAGING_BOT_PASSWORD ve CLUSTER_STAGING_ADMIN_PASSWORD değişkenlerinden okur; bir değer eksikse veya on iki karakterden kısaysa 3 çıkış koduyla reddeder. |
src/cluster_erp/server/staging_fixtures.py:44-52, src/cluster_erp/server/staging_fixtures.py:66-85, src/cluster_erp/server/staging_fixtures.py:196-200 |
| Veritabanı | --db-name, çok kiracılı bir düğümde komutu bir kiracı veritabanına yönlendirir. |
src/cluster_erp/server/staging_fixtures.py:185-189 |
| Hesaplar | Dört hesabın (bir bot yönetici, bir yönetici, iki operatör) her birini oluşturur veya parolasını ve adlarını sıfırlar. | src/cluster_erp/server/staging_fixtures.py:135-158 |
| Ana ekran | İlk yöneticinin ana ekran düzenini her hesaba kopyalar. | src/cluster_erp/server/staging_fixtures.py:159-172 |
Komut uygulamayı veritabanına karşı açar; bu yüzden ilk yönetici ve roller var olmalıdır (src/cluster_erp/server/staging_fixtures.py:120-138). Batarya aynı parolaları kendi değişkenleri üzerinden okur (src/cluster_erp/server/staging_fixtures.py:44-49).
Kısıtlar ve doğrulama¶
- Staging korumasını
tests/test_staging_fixtures_guard.pysınar (def test_satırları olarak sayılan altı test). - Tohumlayıcıyı uçtan uca
tests/test_demo_data_live.pysınar ve ikinci bir koşunun hiçbir şey değiştirmediğini de denetler (tests/test_demo_data_live.py:1-7). - Düğüm rolünü
install.shilk kurulumda yazar ve rol hiç değişmez (deploy/install.sh:122-128). Bkz. ortamlar ve terfi.
Tanıtılan terimler¶
| Terim | Kod tanımlayıcısı | Tanım | Türkçe terim | Kaynak |
|---|---|---|---|---|
| demo tohumlayıcı | demo_data |
Bir veritabanını modüllerin servisleri üzerinden uydurma bir şirketle dolduran komut. | demo tohumlayıcı | src/cluster_erp/server/demo_data.py:1-19 |
| staging fikstürleri | staging_fixtures |
Staging olarak kaydedilmiş bir düğümde bataryanın oturum açma hesaplarını oluşturan komut. | staging fikstürleri | src/cluster_erp/server/staging_fixtures.py:1-15 |
İlgili sayfalar¶
92f8051 numaralı commit ile 2026-11-13 tarihinde doğrulandı.