oraksoft-node-tools 0.0.3 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env +10 -1
- package/.env.example +6 -6
- package/README.md +7 -6
- package/bin/orak-env-dev-change.js +5 -0
- package/lib/copy-deps.js +9 -1
- package/lib/deploy-ftp-secure.js +6 -6
- package/lib/deploy-ftp.js +22 -14
- package/lib/deploy-zip.js +9 -1
- package/lib/env-change.js +9 -1
- package/lib/env-dev-change.js +68 -0
- package/lib/index.js +2 -1
- package/package.json +4 -3
- package/.env.oraksoft +0 -8
package/.env
CHANGED
|
@@ -3,4 +3,13 @@ NODE_ENV=development
|
|
|
3
3
|
API_URL=http://localhost:3000
|
|
4
4
|
DB_HOST=localhost
|
|
5
5
|
DB_NAME=myapp_dev
|
|
6
|
-
DEBUG=true
|
|
6
|
+
DEBUG=true
|
|
7
|
+
|
|
8
|
+
# Oraksoft
|
|
9
|
+
|
|
10
|
+
osf_ftp_host=ftp.example.com
|
|
11
|
+
osf_ftp_user=username
|
|
12
|
+
osf_ftp_password=password
|
|
13
|
+
osf_ftp_secure=false
|
|
14
|
+
osf_local_file=deployphp25.tar.gz
|
|
15
|
+
osf_remote_file=/public_html/deploy.tar.gz
|
package/.env.example
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# FTP Deployment Ayarları
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
osf_ftp_host=ftp.example.com
|
|
3
|
+
osf_ftp_user=username
|
|
4
|
+
osf_ftp_password=password
|
|
5
|
+
osf_ftp_secure=false
|
|
6
|
+
osf_local_file=deployphp25.tar.gz
|
|
7
|
+
osf_remote_file=/public_html/deploy.tar.gz
|
|
8
8
|
|
|
9
9
|
# Bu dosyayı gerçek bilgilerinizle güncelleyin
|
|
10
10
|
# Bu dosya .gitignore'da olduğu için version control'e eklenmeyecek
|
package/README.md
CHANGED
|
@@ -88,13 +88,14 @@ orak-deploy-ftp
|
|
|
88
88
|
```
|
|
89
89
|
|
|
90
90
|
**Gerekli .env dosyası:**
|
|
91
|
+
|
|
91
92
|
```env
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
93
|
+
osf_ftp_host=ftp.example.com
|
|
94
|
+
osf_ftp_user=username
|
|
95
|
+
osf_ftp_password=password
|
|
96
|
+
osf_ftp_secure=false
|
|
97
|
+
osf_local_file=deployphp25.tar.gz
|
|
98
|
+
osf_remote_file=/path/to/remote/file.tar.gz
|
|
98
99
|
```
|
|
99
100
|
|
|
100
101
|
**❗ Güvenlik Notları:**
|
package/lib/copy-deps.js
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
|
|
5
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
6
|
+
const __dirname = path.dirname(__filename);
|
|
3
7
|
|
|
4
8
|
export function copyDeps() {
|
|
5
9
|
// Argüman kontrolü ve yardım mesajı
|
|
6
10
|
if (process.argv.includes('--help') || process.argv.includes('-h')) {
|
|
7
|
-
|
|
11
|
+
// package.json'dan versiyon al
|
|
12
|
+
const packageJsonPath = path.join(__dirname, '..', 'package.json');
|
|
13
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
14
|
+
|
|
15
|
+
console.log(`orak-copy-deps version ${packageJson.version}`);
|
|
8
16
|
console.log('Kullanım: orak-copy-deps');
|
|
9
17
|
console.log('Node.js bağımlılıklarınızı belirtilen klasöre kopyalar.');
|
|
10
18
|
console.log('Konfigürasyon: orak-config.json dosyasında "copyDepsModulesToCopy" ve "copyDepsLibFolder" ayarları gerekli.');
|
package/lib/deploy-ftp-secure.js
CHANGED
|
@@ -21,12 +21,12 @@ export async function deployFtp() {
|
|
|
21
21
|
console.log("⚠️ Environment variables bulunamadı, .env.oraksoft dosyasından okuyorum...");
|
|
22
22
|
const oraksoftJson = JSON.parse(fs.readFileSync(oraksoftJsonPath, 'utf-8'));
|
|
23
23
|
|
|
24
|
-
ftpHost = ftpHost || oraksoftJson.
|
|
25
|
-
ftpUser = ftpUser || oraksoftJson.
|
|
26
|
-
ftpPassword = ftpPassword || oraksoftJson.
|
|
27
|
-
ftpSecure = ftpSecure || oraksoftJson.
|
|
28
|
-
localFilePath = localFilePath || oraksoftJson.
|
|
29
|
-
remoteFilePath = remoteFilePath || oraksoftJson.
|
|
24
|
+
ftpHost = ftpHost || oraksoftJson.osf_ftp_host;
|
|
25
|
+
ftpUser = ftpUser || oraksoftJson.osf_ftp_user;
|
|
26
|
+
ftpPassword = ftpPassword || oraksoftJson.osf_ftp_password;
|
|
27
|
+
ftpSecure = ftpSecure || oraksoftJson.osf_ftp_secure || false;
|
|
28
|
+
localFilePath = localFilePath || oraksoftJson.osf_local_file;
|
|
29
|
+
remoteFilePath = remoteFilePath || oraksoftJson.osf_remote_file;
|
|
30
30
|
}
|
|
31
31
|
} else {
|
|
32
32
|
console.log("✅ Environment variables kullanılıyor (güvenli)");
|
package/lib/deploy-ftp.js
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
import { Client } from "basic-ftp";
|
|
2
2
|
import path from "path";
|
|
3
3
|
import fs from 'fs';
|
|
4
|
+
import { fileURLToPath } from 'url';
|
|
5
|
+
|
|
6
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
7
|
+
const __dirname = path.dirname(__filename);
|
|
4
8
|
|
|
5
9
|
export async function deployFtp() {
|
|
6
10
|
// Argüman kontrolü ve yardım mesajı
|
|
7
11
|
if (process.argv.includes('--help') || process.argv.includes('-h')) {
|
|
8
|
-
|
|
12
|
+
// package.json'dan versiyon al
|
|
13
|
+
const packageJsonPath = path.join(__dirname, '..', 'package.json');
|
|
14
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
15
|
+
|
|
16
|
+
console.log(`orak-deploy-ftp version ${packageJson.version}`);
|
|
9
17
|
console.log('Kullanım: orak-deploy-ftp');
|
|
10
18
|
console.log('Dist klasöründeki dosyaları FTP sunucusuna yükler.');
|
|
11
19
|
console.log('Konfigürasyon: .env dosyasında FTP bilgileri gerekli.');
|
|
@@ -22,12 +30,12 @@ export async function deployFtp() {
|
|
|
22
30
|
❌ .env dosyası bulunamadı!
|
|
23
31
|
|
|
24
32
|
.env dosyası oluşturun ve şu bilgileri ekleyin:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
33
|
+
osf_ftp_host=ftp.example.com
|
|
34
|
+
osf_ftp_user=username
|
|
35
|
+
osf_ftp_password=password
|
|
36
|
+
osf_ftp_secure=false
|
|
37
|
+
osf_local_file=deployphp25.tar.gz
|
|
38
|
+
osf_remote_file=/path/to/remote/file.tar.gz
|
|
31
39
|
`);
|
|
32
40
|
process.exit(1);
|
|
33
41
|
}
|
|
@@ -46,17 +54,17 @@ remote_file=/path/to/remote/file.tar.gz
|
|
|
46
54
|
}
|
|
47
55
|
});
|
|
48
56
|
|
|
49
|
-
const ftpHost = envVars.
|
|
50
|
-
const ftpUser = envVars.
|
|
51
|
-
const ftpPassword = envVars.
|
|
52
|
-
const ftpSecure = envVars.
|
|
53
|
-
const localFileName = envVars.
|
|
54
|
-
const remoteFilePath1 = envVars.
|
|
57
|
+
const ftpHost = envVars.osf_ftp_host;
|
|
58
|
+
const ftpUser = envVars.osf_ftp_user;
|
|
59
|
+
const ftpPassword = envVars.osf_ftp_password;
|
|
60
|
+
const ftpSecure = envVars.osf_ftp_secure === 'true';
|
|
61
|
+
const localFileName = envVars.osf_local_file;
|
|
62
|
+
const remoteFilePath1 = envVars.osf_remote_file;
|
|
55
63
|
|
|
56
64
|
let localFilePath1 = path.join(projectRoot, "dist", localFileName);
|
|
57
65
|
|
|
58
66
|
if (!ftpHost || !ftpUser || !ftpPassword) {
|
|
59
|
-
console.error("Error: FTP bilgileri eksik. .env.oraksoft dosyasında
|
|
67
|
+
console.error("Error: FTP bilgileri eksik. .env.oraksoft dosyasında osf_ftp_host, osf_ftp_user ve osf_ftp_password alanlarını kontrol edin.");
|
|
60
68
|
process.exit(1);
|
|
61
69
|
}
|
|
62
70
|
|
package/lib/deploy-zip.js
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import * as tar from 'tar';
|
|
4
|
+
import { fileURLToPath } from 'url';
|
|
5
|
+
|
|
6
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
7
|
+
const __dirname = path.dirname(__filename);
|
|
4
8
|
|
|
5
9
|
export async function deployZip() {
|
|
6
10
|
// Argüman kontrolü ve yardım mesajı
|
|
7
11
|
if (process.argv.includes('--help') || process.argv.includes('-h')) {
|
|
8
|
-
|
|
12
|
+
// package.json'dan versiyon al
|
|
13
|
+
const packageJsonPath = path.join(__dirname, '..', 'package.json');
|
|
14
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
15
|
+
|
|
16
|
+
console.log(`orak-deploy-zip version ${packageJson.version}`);
|
|
9
17
|
console.log('Kullanım: orak-deploy-zip');
|
|
10
18
|
console.log('Belirtilen dosya ve klasörleri tar.gz formatında arşivler.');
|
|
11
19
|
console.log('Konfigürasyon: orak-config.json dosyasında "fiDeployZipContent" ayarı gerekli.');
|
package/lib/env-change.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
|
|
5
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
6
|
+
const __dirname = path.dirname(__filename);
|
|
3
7
|
|
|
4
8
|
export function envChange() {
|
|
5
9
|
|
|
@@ -11,7 +15,11 @@ export function envChange() {
|
|
|
11
15
|
|
|
12
16
|
// Argüman kontrolü ve yardım mesajı
|
|
13
17
|
if (process.argv.includes('--help') || process.argv.includes('-h')) {
|
|
14
|
-
|
|
18
|
+
// package.json'dan versiyon al
|
|
19
|
+
const packageJsonPath = path.join(__dirname, '..', 'package.json');
|
|
20
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
21
|
+
|
|
22
|
+
console.log(`orak-env-change version ${packageJson.version}`);
|
|
15
23
|
console.log('Kullanım: orak-env-change [ortam_adı]');
|
|
16
24
|
console.log('Örnek: orak-env-change dev');
|
|
17
25
|
console.log('Argüman verilmezse orak-config.json\'daki fiEnvChangeStatus değeri kullanılır.');
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
|
|
5
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
6
|
+
const __dirname = path.dirname(__filename);
|
|
7
|
+
|
|
8
|
+
export function envDevChange() {
|
|
9
|
+
|
|
10
|
+
// Komut satırından argüman alma
|
|
11
|
+
// process.argv[0] = node executable
|
|
12
|
+
// process.argv[1] = script dosyası
|
|
13
|
+
// process.argv[2] = ilk argüman
|
|
14
|
+
const envArgument = process.argv[2];
|
|
15
|
+
|
|
16
|
+
// Argüman kontrolü ve yardım mesajı
|
|
17
|
+
if (process.argv.includes('--help') || process.argv.includes('-h')) {
|
|
18
|
+
// package.json'dan versiyon al
|
|
19
|
+
const packageJsonPath = path.join(__dirname, '..', 'package.json');
|
|
20
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
|
|
21
|
+
|
|
22
|
+
console.log(`orak-env-dev-change version ${packageJson.version}`);
|
|
23
|
+
console.log('Kullanım: orak-env-dev-change [ortam_adı]');
|
|
24
|
+
console.log('Örnek: orak-env-dev-change dev');
|
|
25
|
+
console.log('Argüman verilmezse orak-config.json\'daki fiEnvChangeStatus değeri kullanılır.');
|
|
26
|
+
process.exit(0);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Çalışma dizinini tespit et (komutun çalıştırıldığı yer)
|
|
30
|
+
const projectRoot = process.cwd();
|
|
31
|
+
|
|
32
|
+
// orak-config.json dosyasını oku
|
|
33
|
+
const configPath = path.join(projectRoot, 'orak-config.json');
|
|
34
|
+
|
|
35
|
+
let config = {};
|
|
36
|
+
if (fs.existsSync(configPath)) {
|
|
37
|
+
config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
let txEnv = envArgument || config.fiEnvChangeStatus;
|
|
41
|
+
|
|
42
|
+
if (!txEnv) {
|
|
43
|
+
console.error('❌ Ortam adı belirtilmedi ve orak-config.json\'da fiEnvChangeStatus bulunamadı.');
|
|
44
|
+
console.log('Kullanım: orak-env-change [ortam_adı]');
|
|
45
|
+
console.log('Alternatif: orak-config.json dosyasında "fiEnvChangeStatus" değeri tanımlayın.');
|
|
46
|
+
process.exit(1);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
try {
|
|
50
|
+
// .env dosyasının içeriğini .env.{txEnv} içeriğine eşitle
|
|
51
|
+
const envPath = path.join(projectRoot, '.env.' + txEnv);
|
|
52
|
+
|
|
53
|
+
if (!fs.existsSync(envPath)) {
|
|
54
|
+
console.error(`❌ Ortam dosyası bulunamadı: ${envPath}`);
|
|
55
|
+
process.exit(1);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
const envContent = fs.readFileSync(envPath, 'utf-8');
|
|
59
|
+
fs.writeFileSync(path.join(projectRoot, '.env.development'), envContent);
|
|
60
|
+
|
|
61
|
+
// Başarı mesajı
|
|
62
|
+
console.log(`✅ Ortam dosyası başarıyla değiştirildi: .env.${txEnv} -> .env.development`);
|
|
63
|
+
console.log(`📁 Dosya yolu: ${path.join(projectRoot, '.env.development')}`);
|
|
64
|
+
} catch (error) {
|
|
65
|
+
console.error('❌ Ortam dosyası değiştirme hatası:', error.message);
|
|
66
|
+
process.exit(1);
|
|
67
|
+
}
|
|
68
|
+
}
|
package/lib/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { copyDeps } from './copy-deps.js';
|
|
2
2
|
export { deployFtp } from './deploy-ftp.js';
|
|
3
3
|
export { deployZip } from './deploy-zip.js';
|
|
4
|
-
export { envChange } from './env-change.js';
|
|
4
|
+
export { envChange } from './env-change.js';
|
|
5
|
+
export { envDevChange } from './env-dev-change.js';
|
package/package.json
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "oraksoft-node-tools",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "CLI araçları koleksiyonu - orak-copy-deps, orak-deploy-ftp, orak-deploy-zip ve orak-env-change komutları",
|
|
3
|
+
"version": "0.1.2",
|
|
4
|
+
"description": "CLI araçları koleksiyonu - orak-copy-deps, orak-deploy-ftp, orak-deploy-zip, orak-env-change ve orak-env-dev-change komutları",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"bin": {
|
|
8
8
|
"orak-copy-deps": "./bin/orak-copy-deps.js",
|
|
9
9
|
"orak-deploy-ftp": "./bin/orak-deploy-ftp.js",
|
|
10
10
|
"orak-deploy-zip": "./bin/orak-deploy-zip.js",
|
|
11
|
-
"orak-env-change": "./bin/orak-env-change.js"
|
|
11
|
+
"orak-env-change": "./bin/orak-env-change.js",
|
|
12
|
+
"orak-env-dev-change": "./bin/orak-env-dev-change.js"
|
|
12
13
|
},
|
|
13
14
|
"keywords": [
|
|
14
15
|
"cli",
|