CLI araçları koleksiyonu - orak-copy-deps, orak-deploy-ftp, orak-deploy-zip, orak-env-change ve orak-env-dev-change komutları
npm install oraksoft-node-toolsbash
pnpm install -g oraksoft-node-tools
`
$3
`bash
pnpm install oraksoft-node-tools --save-dev
`
Konfigürasyon
Bu araçlar orak-config.json dosyasını kullanarak konfigüre edilir. Bu dosyayı proje kök dizininizde oluşturun:
`json
{
"copyDepsModulesToCopy": [
{
"name": "module-name",
"file": "dist/module.js"
}
],
"copyDepsLibFolder": "lib",
"copyDepsLibFolderEmpty": true,
"zip_package": ["lib/", "bin/"],
"zip_package_out_file": ".orak-dist/deploy1.tar.gz",
"zip_content": ["bin", "lib"],
"zip_content_out_file": ".orak-dist/deploy.tar.gz"
}
`
Komutlar
$3
Node.js bağımlılıklarınızı belirtilen klasöre kopyalar.
`bash
orak-copy-deps
`
Gerekli orak-config.json ayarları:
`json
{
"copyDepsModulesToCopy": [
{
"name": "module-name",
"file": "dist/module.js"
}
],
"copyDepsLibFolder": "lib",
"copyDepsLibFolderEmpty": true
}
`
$3
Belirtilen dosyayı FTP sunucusuna yükler.
`bash
orak-deploy-ftp [--profile ] [--v]
`
Gerekli .env.orakconfig dosyası:
`env
osf_ftp_host=ftp.example.com
osf_ftp_user=username
osf_ftp_password=password
osf_ftp_secure=false
osf_ftp_local_file=deploy.tar.gz
osf_ftp_remote_path=public_html
`
- osf_ftp_host: FTP sunucusunun adresi
- osf_ftp_user: FTP kullanıcı adı
- osf_ftp_password: FTP şifresi
- osf_ftp_secure: true FTPS kullanır, false FTP kullanır (varsayılan: false)
- osf_ftp_local_file: Yüklenmek istenen dosyanın proje köküne göre yolu (uzantılı olarak yazın, ör: deploy.tar.gz)
- osf_ftp_remote_path: Uzak sunucudaki hedef klasör yolu (varsayılan: /)
- Dosya adı otomatik olarak osf_ftp_local_file'ın son bölümünden alınır
Ek opsiyonlar:
- --profile : Belirtilen profil için önce osf_ftp_local_file_ (veya orak-config.json içinde aynı anahtar) aranır. Örnek: --profile test -> osf_ftp_local_file_test. Konsolda: test profil uygulandı.
- --v: Paket sürümünü (package.json içindeki version) dosya adına ekler. Noktalar _ ile değiştirilecek (örn. 1.2.3 -> 1_2_3) ve çok parçalı uzantılar korunacaktır (deploy.tar.gz -> deploy-1_2_3.tar.gz). Konsolda: 📦 Versiyon eklendi: 1_2_3 ve 📄 Güncel dosya adı: ...
❗ Güvenlik Notları:
- .env.orakconfig dosyası zaten .gitignore'da bulunuyor
- Web sunucunuzda .env.orakconfig dosyalarına erişimi engelleyin (.htaccess)
- Dosya izinlerini kısıtlayın: chmod 600 .env.orakconfig
📝 osf_ftp_host, osf_ftp_local_file ve osf_ftp_remote_path değerleri orak-config.json içinde de tanımlanabilir. .env.orakconfig'de yoksa orak-config.json'a bakar. Profil kullanılıyorsa osf_ftp_local_file_ anahtarı da desteklenir.
$3
Belirtilen dosya ve klasörleri tar.gz formatında arşivler.
`bash
orak-zip-content [--profile ] [--v]
`
Gerekli orak-config.json ayarları:
`json
{
"zip_content": ["bin", "lib"],
"zip_content_out_file": ".orak-dist/deploy"
}
`
- zip_content: Arşive dahil edilecek dosya ve klasörler
- zip_content_out_file: Oluşturulacak arşiv dosyasının tam yolu (uzantısız; .tar.gz kod tarafından eklenir)
Ek opsiyonlar:
- --profile : Profil adı verildiğinde zip_content_out_file_ anahtarı tercih edilir (örn: zip_content_out_file_test). Konsolda: test profil uygulandı.
- --v: Paket sürümünü (package.json içindeki version) dosya adına ekler; noktalar _ ile değişir ve dosya uzantısı korunur (örn. .orak-dist/deploy -> .orak-dist/deploy-1_2_3.tar.gz). Konsolda: 📦 Versiyon eklendi: 1_2_3
$3
Belirtilen dosya ve klasörleri tar.gz formatında paket arşivi olarak oluşturur.
`bash
orak-zip-package [--profile ] [--v]
`
Gerekli orak-config.json ayarları:
`json
{
"zip_package": ["lib/", "bin/"],
"zip_package_out_file": ".orak-dist/deploy1"
}
`
- zip_package: Paket arşivine dahil edilecek dosya ve klasörler
- zip_package_out_file: Oluşturulacak paket arşiv dosyasının tam yolu (uzantısız; .tar.gz kod tarafından eklenir)
Ek opsiyonlar:
- --profile : Profil adı verildiğinde zip_package_out_file_ anahtarı tercih edilir (örn: zip_package_out_file_test).
- --v: Paket sürümünü (package.json içindeki version) dosya adına ekler; noktalar _ ile değişir ve dosya uzantısı korunur (örn. .orak-dist/deploy1 -> .orak-dist/deploy1-1_2_3.tar.gz).
$3
Ortam dosyalarını (.env) değiştirir.
`bash
orak-env-change dev
veya
orak-env-change production
`
Opsiyonel orak-config.json ayarları:
`json
{
"fiEnvChangeStatus": "dev"
}
`
Bu durumda parametre vermeden orak-env-change komutunu çalıştırabilirsiniz.
Kullanım Örnekleri
$3
`bash
orak-config.json'da tanımlanan modülleri kopyala
orak-copy-deps
`
$3
`bash
.env.orakconfig dosyası oluşturun ve FTP bilgilerinizi ekleyin
İçerik arşivi oluştur
orak-zip-content
FTP'ye yükle
orak-deploy-ftp
Alternatif olarak paket arşivi oluştur
orak-zip-package
`
$3
`bash
Development ortamına geç
orak-env-change dev
Production ortamına geç
orak-env-change prod
`
Gereksinimler
- Node.js >= 14.0.0
- NPM veya Yarn
Lisans
MIT
Katkıda Bulunma
1. Fork edin
2. Feature branch oluşturun (git checkout -b feature/amazing-feature)
3. Değişikliklerinizi commit edin (git commit -m 'Add amazing feature')
4. Branch'i push edin (git push origin feature/amazing-feature`)