codecrypto-cli 1.0.21 → 1.0.23
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/dist/commands/deploy-mcp.d.ts.map +1 -1
- package/dist/commands/deploy-mcp.js +162 -36
- package/dist/commands/deploy-mcp.js.map +1 -1
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +162 -36
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +199 -14
- package/dist/commands/doctor.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/deploy-mcp.ts +187 -42
- package/src/commands/deploy.ts +187 -42
- package/src/commands/doctor.ts +206 -19
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-mcp.d.ts","sourceRoot":"","sources":["../../src/commands/deploy-mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy-mcp.d.ts","sourceRoot":"","sources":["../../src/commands/deploy-mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,gBAAgB,SAujBzB,CAAC"}
|
|
@@ -40,6 +40,7 @@ exports.deployMcpCommand = void 0;
|
|
|
40
40
|
const commander_1 = require("commander");
|
|
41
41
|
const chalk_1 = __importDefault(require("chalk"));
|
|
42
42
|
const ora_1 = __importDefault(require("ora"));
|
|
43
|
+
const inquirer_1 = __importDefault(require("inquirer"));
|
|
43
44
|
const child_process_1 = require("child_process");
|
|
44
45
|
const fs = __importStar(require("fs"));
|
|
45
46
|
const path = __importStar(require("path"));
|
|
@@ -90,8 +91,8 @@ exports.deployMcpCommand = new commander_1.Command('deploy-mcp')
|
|
|
90
91
|
if (!projectName) {
|
|
91
92
|
projectName = path.basename(resolvedProjectPath).toLowerCase().replace(/[^a-z0-9._-]/g, '-');
|
|
92
93
|
}
|
|
93
|
-
// Obtener el prefijo de imagen desde
|
|
94
|
-
const dockerHubUsername = getDockerHubUsernameFromToken();
|
|
94
|
+
// Obtener el prefijo de imagen desde Docker config o solicitar por teclado
|
|
95
|
+
const dockerHubUsername = await getDockerHubUsernameFromToken();
|
|
95
96
|
const imageBase = `${dockerHubUsername}/${projectName}`;
|
|
96
97
|
const imageName = `${imageBase}:${version}`;
|
|
97
98
|
const imageLatest = `${imageBase}:latest`;
|
|
@@ -475,13 +476,20 @@ echo "✅ Deployment preparation completed inside container"
|
|
|
475
476
|
}
|
|
476
477
|
}
|
|
477
478
|
// Paso 5: Construir y hacer push
|
|
478
|
-
|
|
479
|
+
// Detectar si estamos en Windows (buildx tiene problemas con ARM en Windows)
|
|
480
|
+
const isWindows = os.platform() === 'win32';
|
|
481
|
+
const platform = isWindows ? 'linux/amd64' : 'linux/amd64,linux/arm64';
|
|
482
|
+
const platformDisplay = isWindows ? 'linux/amd64' : 'linux/amd64, linux/arm64';
|
|
483
|
+
const buildSpinnerText = isWindows
|
|
484
|
+
? 'Building Docker image for linux/amd64...'
|
|
485
|
+
: 'Building Docker image for multiple platforms...';
|
|
486
|
+
const buildDockerSpinner = (0, ora_1.default)(buildSpinnerText).start();
|
|
479
487
|
try {
|
|
480
488
|
const tags = shouldPush
|
|
481
489
|
? [`--tag ${imageName}`, `--tag ${imageLatest}`, '--push']
|
|
482
490
|
: [`--tag ${imageName}`, `--tag ${imageLatest}`, '--load'];
|
|
483
491
|
const buildCommand = `docker buildx build \
|
|
484
|
-
--platform
|
|
492
|
+
--platform ${platform} \
|
|
485
493
|
${tags.join(' \\\n ')} \
|
|
486
494
|
--progress=plain \
|
|
487
495
|
.`;
|
|
@@ -490,7 +498,10 @@ echo "✅ Deployment preparation completed inside container"
|
|
|
490
498
|
console.log(chalk_1.default.cyan(buildCommand));
|
|
491
499
|
console.log(chalk_1.default.gray('─'.repeat(60)));
|
|
492
500
|
console.log(chalk_1.default.gray(`\n Working directory: ${chalk_1.default.cyan(resolvedDestFolder)}`));
|
|
493
|
-
console.log(chalk_1.default.gray(` Platforms: ${chalk_1.default.cyan(
|
|
501
|
+
console.log(chalk_1.default.gray(` Platforms: ${chalk_1.default.cyan(platformDisplay)}`));
|
|
502
|
+
if (isWindows) {
|
|
503
|
+
console.log(chalk_1.default.yellow(` Note: Building only for linux/amd64 on Windows (ARM builds are disabled)`));
|
|
504
|
+
}
|
|
494
505
|
console.log(chalk_1.default.gray(` Push to registry: ${shouldPush ? chalk_1.default.green('Yes') : chalk_1.default.yellow('No')}\n`));
|
|
495
506
|
(0, child_process_1.execSync)(buildCommand, {
|
|
496
507
|
cwd: resolvedDestFolder,
|
|
@@ -572,42 +583,157 @@ echo "✅ Deployment preparation completed inside container"
|
|
|
572
583
|
process.exit(1);
|
|
573
584
|
}
|
|
574
585
|
});
|
|
575
|
-
// Función para obtener el username de Docker Hub desde
|
|
576
|
-
function getDockerHubUsernameFromToken() {
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
586
|
+
// Función para obtener el username de Docker Hub desde Docker config o solicitar por teclado
|
|
587
|
+
async function getDockerHubUsernameFromToken() {
|
|
588
|
+
// Obtener el username desde Docker config (requerido para poder hacer push)
|
|
589
|
+
const dockerConfigPath = path.join(os.homedir(), '.docker', 'config.json');
|
|
590
|
+
if (!fs.existsSync(dockerConfigPath)) {
|
|
591
|
+
throw new Error('Docker authentication not found. Please login to Docker first.\n' +
|
|
592
|
+
' Run: docker login\n' +
|
|
593
|
+
' This is required to push images to Docker Hub.');
|
|
580
594
|
}
|
|
581
|
-
let tokenData;
|
|
582
595
|
try {
|
|
583
|
-
|
|
596
|
+
const dockerConfig = JSON.parse(fs.readFileSync(dockerConfigPath, 'utf-8'));
|
|
597
|
+
// Verificar si hay credsStore (las credenciales están en el keychain del sistema)
|
|
598
|
+
const hasCredsStore = dockerConfig.credsStore && dockerConfig.credsStore !== '';
|
|
599
|
+
// Buscar username en Docker Hub auth
|
|
600
|
+
let dockerHubKeys = [];
|
|
601
|
+
if (dockerConfig.auths && Object.keys(dockerConfig.auths).length > 0) {
|
|
602
|
+
dockerHubKeys = Object.keys(dockerConfig.auths).filter(reg => reg.includes('docker.io') ||
|
|
603
|
+
reg.includes('hub.docker.com') ||
|
|
604
|
+
reg === 'https://index.docker.io/v1/');
|
|
605
|
+
// Si hay credsStore, los auths pueden estar vacíos pero las credenciales están en el keychain
|
|
606
|
+
if (hasCredsStore && dockerHubKeys.length > 0) {
|
|
607
|
+
// Intentar obtener username desde docker info
|
|
608
|
+
try {
|
|
609
|
+
const dockerInfo = (0, child_process_1.execSync)('docker info', { encoding: 'utf-8', stdio: 'pipe', timeout: 5000 });
|
|
610
|
+
const usernameMatch = dockerInfo.match(/Username:\s*(.+)/i);
|
|
611
|
+
if (usernameMatch && usernameMatch[1]) {
|
|
612
|
+
let username = usernameMatch[1].trim();
|
|
613
|
+
// Si el username es un email, extraer solo la parte antes del @
|
|
614
|
+
if (username.includes('@')) {
|
|
615
|
+
username = username.split('@')[0];
|
|
616
|
+
}
|
|
617
|
+
// Sanitizar el username para Docker Hub
|
|
618
|
+
username = username.toLowerCase()
|
|
619
|
+
.replace(/[^a-z0-9._-]/g, '-')
|
|
620
|
+
.replace(/^-+|-+$/g, '')
|
|
621
|
+
.replace(/-+/g, '-')
|
|
622
|
+
.replace(/\.+/g, '.')
|
|
623
|
+
.substring(0, 30);
|
|
624
|
+
if (username) {
|
|
625
|
+
return username;
|
|
626
|
+
}
|
|
627
|
+
}
|
|
628
|
+
}
|
|
629
|
+
catch (infoError) {
|
|
630
|
+
// Si docker info falla, continuar con otros métodos
|
|
631
|
+
}
|
|
632
|
+
}
|
|
633
|
+
// Si no hay credsStore, buscar username directamente en auths
|
|
634
|
+
if (!hasCredsStore) {
|
|
635
|
+
for (const key of dockerHubKeys) {
|
|
636
|
+
const authData = dockerConfig.auths[key];
|
|
637
|
+
if (authData && authData.username) {
|
|
638
|
+
let username = authData.username;
|
|
639
|
+
// Si el username es un email, extraer solo la parte antes del @
|
|
640
|
+
if (username.includes('@')) {
|
|
641
|
+
username = username.split('@')[0];
|
|
642
|
+
}
|
|
643
|
+
// Sanitizar el username para Docker Hub
|
|
644
|
+
username = username.toLowerCase()
|
|
645
|
+
.replace(/[^a-z0-9._-]/g, '-')
|
|
646
|
+
.replace(/^-+|-+$/g, '')
|
|
647
|
+
.replace(/-+/g, '-')
|
|
648
|
+
.replace(/\.+/g, '.')
|
|
649
|
+
.substring(0, 30);
|
|
650
|
+
if (username) {
|
|
651
|
+
return username;
|
|
652
|
+
}
|
|
653
|
+
}
|
|
654
|
+
}
|
|
655
|
+
}
|
|
656
|
+
}
|
|
657
|
+
// Si hay credsStore pero no encontramos username, intentar con docker info
|
|
658
|
+
if (hasCredsStore) {
|
|
659
|
+
try {
|
|
660
|
+
const dockerInfo = (0, child_process_1.execSync)('docker info', { encoding: 'utf-8', stdio: 'pipe', timeout: 5000 });
|
|
661
|
+
const usernameMatch = dockerInfo.match(/Username:\s*(.+)/i);
|
|
662
|
+
if (usernameMatch && usernameMatch[1]) {
|
|
663
|
+
let username = usernameMatch[1].trim();
|
|
664
|
+
// Si el username es un email, extraer solo la parte antes del @
|
|
665
|
+
if (username.includes('@')) {
|
|
666
|
+
username = username.split('@')[0];
|
|
667
|
+
}
|
|
668
|
+
// Sanitizar el username para Docker Hub
|
|
669
|
+
username = username.toLowerCase()
|
|
670
|
+
.replace(/[^a-z0-9._-]/g, '-')
|
|
671
|
+
.replace(/^-+|-+$/g, '')
|
|
672
|
+
.replace(/-+/g, '-')
|
|
673
|
+
.replace(/\.+/g, '.')
|
|
674
|
+
.substring(0, 30);
|
|
675
|
+
if (username) {
|
|
676
|
+
return username;
|
|
677
|
+
}
|
|
678
|
+
}
|
|
679
|
+
}
|
|
680
|
+
catch (infoError) {
|
|
681
|
+
// Continuar con el error
|
|
682
|
+
}
|
|
683
|
+
}
|
|
684
|
+
// Si llegamos aquí, no encontramos el username - solicitar por teclado
|
|
685
|
+
console.log(chalk_1.default.yellow('\n⚠️ Could not automatically detect Docker Hub username.'));
|
|
686
|
+
console.log(chalk_1.default.gray(' Please enter your Docker Hub username manually.\n'));
|
|
687
|
+
const answer = await inquirer_1.default.prompt([
|
|
688
|
+
{
|
|
689
|
+
type: 'input',
|
|
690
|
+
name: 'username',
|
|
691
|
+
message: 'Docker Hub username:',
|
|
692
|
+
validate: (input) => {
|
|
693
|
+
if (!input || input.trim().length === 0) {
|
|
694
|
+
return 'Username is required';
|
|
695
|
+
}
|
|
696
|
+
// Validar formato básico de username Docker Hub
|
|
697
|
+
const sanitized = input.toLowerCase().replace(/[^a-z0-9._-]/g, '');
|
|
698
|
+
if (sanitized !== input.toLowerCase()) {
|
|
699
|
+
return 'Username can only contain lowercase letters, numbers, dots, hyphens, and underscores';
|
|
700
|
+
}
|
|
701
|
+
if (input.length > 30) {
|
|
702
|
+
return 'Username must be 30 characters or less';
|
|
703
|
+
}
|
|
704
|
+
return true;
|
|
705
|
+
},
|
|
706
|
+
filter: (input) => {
|
|
707
|
+
// Si el input es un email, extraer solo la parte antes del @
|
|
708
|
+
if (input.includes('@')) {
|
|
709
|
+
return input.split('@')[0].trim();
|
|
710
|
+
}
|
|
711
|
+
return input.trim();
|
|
712
|
+
}
|
|
713
|
+
}
|
|
714
|
+
]);
|
|
715
|
+
let username = answer.username.toLowerCase();
|
|
716
|
+
// Sanitizar el username para Docker Hub
|
|
717
|
+
username = username
|
|
718
|
+
.replace(/[^a-z0-9._-]/g, '-')
|
|
719
|
+
.replace(/^-+|-+$/g, '')
|
|
720
|
+
.replace(/-+/g, '-')
|
|
721
|
+
.replace(/\.+/g, '.')
|
|
722
|
+
.substring(0, 30);
|
|
723
|
+
if (!username) {
|
|
724
|
+
throw new Error('Invalid username provided');
|
|
725
|
+
}
|
|
726
|
+
return username;
|
|
584
727
|
}
|
|
585
728
|
catch (error) {
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
throw new Error(
|
|
592
|
-
|
|
593
|
-
// Extraer el username del email (parte antes del @) y sanitizarlo para Docker Hub
|
|
594
|
-
const emailParts = email.split('@');
|
|
595
|
-
if (emailParts.length < 2) {
|
|
596
|
-
throw new Error(`Invalid email format in token.json: ${email}`);
|
|
597
|
-
}
|
|
598
|
-
let username = emailParts[0].toLowerCase();
|
|
599
|
-
// Sanitizar el username para Docker Hub
|
|
600
|
-
// Docker Hub permite: letras minúsculas, números, guiones, guiones bajos
|
|
601
|
-
username = username
|
|
602
|
-
.replace(/[^a-z0-9._-]/g, '-') // Reemplazar caracteres inválidos con guiones
|
|
603
|
-
.replace(/^-+|-+$/g, '') // Eliminar guiones al inicio y final
|
|
604
|
-
.replace(/-+/g, '-') // Reemplazar múltiples guiones con uno solo
|
|
605
|
-
.replace(/\.+/g, '.') // Reemplazar múltiples puntos con uno solo
|
|
606
|
-
.substring(0, 30); // Limitar longitud (Docker Hub tiene límites)
|
|
607
|
-
if (!username) {
|
|
608
|
-
throw new Error(`Could not extract valid username from email: ${email}`);
|
|
729
|
+
// Si el error ya tiene mensaje, relanzarlo
|
|
730
|
+
if (error.message && (error.message.includes('Docker') || error.message.includes('username'))) {
|
|
731
|
+
throw error;
|
|
732
|
+
}
|
|
733
|
+
// Si hay error leyendo Docker config, lanzar error
|
|
734
|
+
throw new Error(`Failed to read Docker config: ${error.message || String(error)}\n` +
|
|
735
|
+
' Please ensure you are logged in to Docker: docker login');
|
|
609
736
|
}
|
|
610
|
-
return username;
|
|
611
737
|
}
|
|
612
738
|
// Función para leer certificados Docker desde token.json
|
|
613
739
|
function loadDockerCertificatesFromToken() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-mcp.js","sourceRoot":"","sources":["../../src/commands/deploy-mcp.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deploy-mcp.js","sourceRoot":"","sources":["../../src/commands/deploy-mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,aAAa,SAisBtB,CAAC"}
|
package/dist/commands/deploy.js
CHANGED
|
@@ -40,6 +40,7 @@ exports.deployCommand = void 0;
|
|
|
40
40
|
const commander_1 = require("commander");
|
|
41
41
|
const chalk_1 = __importDefault(require("chalk"));
|
|
42
42
|
const ora_1 = __importDefault(require("ora"));
|
|
43
|
+
const inquirer_1 = __importDefault(require("inquirer"));
|
|
43
44
|
const child_process_1 = require("child_process");
|
|
44
45
|
const fs = __importStar(require("fs"));
|
|
45
46
|
const path = __importStar(require("path"));
|
|
@@ -169,8 +170,8 @@ exports.deployCommand = new commander_1.Command('deploy')
|
|
|
169
170
|
if (!projectName) {
|
|
170
171
|
projectName = path.basename(resolvedProjectPath).toLowerCase().replace(/[^a-z0-9._-]/g, '-');
|
|
171
172
|
}
|
|
172
|
-
// Obtener el prefijo de imagen desde
|
|
173
|
-
const dockerHubUsername = getDockerHubUsernameFromToken();
|
|
173
|
+
// Obtener el prefijo de imagen desde Docker config o solicitar por teclado
|
|
174
|
+
const dockerHubUsername = await getDockerHubUsernameFromToken();
|
|
174
175
|
const imageBase = `${dockerHubUsername}/${projectName}`;
|
|
175
176
|
const imageName = `${imageBase}:${version}`;
|
|
176
177
|
const imageLatest = `${imageBase}:latest`;
|
|
@@ -614,13 +615,20 @@ CMD ${JSON.stringify(startCmd)}
|
|
|
614
615
|
}
|
|
615
616
|
}
|
|
616
617
|
// Paso 5: Construir y hacer push
|
|
617
|
-
|
|
618
|
+
// Detectar si estamos en Windows (buildx tiene problemas con ARM en Windows)
|
|
619
|
+
const isWindows = os.platform() === 'win32';
|
|
620
|
+
const platform = isWindows ? 'linux/amd64' : 'linux/amd64,linux/arm64';
|
|
621
|
+
const platformDisplay = isWindows ? 'linux/amd64' : 'linux/amd64, linux/arm64';
|
|
622
|
+
const buildSpinnerText = isWindows
|
|
623
|
+
? 'Building Docker image for linux/amd64...'
|
|
624
|
+
: 'Building Docker image for multiple platforms...';
|
|
625
|
+
const buildDockerSpinner = (0, ora_1.default)(buildSpinnerText).start();
|
|
618
626
|
try {
|
|
619
627
|
const tags = shouldPush
|
|
620
628
|
? [`--tag ${imageName}`, `--tag ${imageLatest}`, '--push']
|
|
621
629
|
: [`--tag ${imageName}`, `--tag ${imageLatest}`, '--load'];
|
|
622
630
|
const buildCommand = `docker buildx build \
|
|
623
|
-
--platform
|
|
631
|
+
--platform ${platform} \
|
|
624
632
|
${tags.join(' \\\n ')} \
|
|
625
633
|
--progress=plain \
|
|
626
634
|
.`;
|
|
@@ -629,7 +637,10 @@ CMD ${JSON.stringify(startCmd)}
|
|
|
629
637
|
console.log(chalk_1.default.cyan(buildCommand));
|
|
630
638
|
console.log(chalk_1.default.gray('─'.repeat(60)));
|
|
631
639
|
console.log(chalk_1.default.gray(`\n Working directory: ${chalk_1.default.cyan(resolvedDestFolder)}`));
|
|
632
|
-
console.log(chalk_1.default.gray(` Platforms: ${chalk_1.default.cyan(
|
|
640
|
+
console.log(chalk_1.default.gray(` Platforms: ${chalk_1.default.cyan(platformDisplay)}`));
|
|
641
|
+
if (isWindows) {
|
|
642
|
+
console.log(chalk_1.default.yellow(` Note: Building only for linux/amd64 on Windows (ARM builds are disabled)`));
|
|
643
|
+
}
|
|
633
644
|
console.log(chalk_1.default.gray(` Push to registry: ${shouldPush ? chalk_1.default.green('Yes') : chalk_1.default.yellow('No')}\n`));
|
|
634
645
|
(0, child_process_1.execSync)(buildCommand, {
|
|
635
646
|
cwd: resolvedDestFolder,
|
|
@@ -694,42 +705,157 @@ CMD ${JSON.stringify(startCmd)}
|
|
|
694
705
|
process.exit(1);
|
|
695
706
|
}
|
|
696
707
|
});
|
|
697
|
-
// Función para obtener el username de Docker Hub desde
|
|
698
|
-
function getDockerHubUsernameFromToken() {
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
708
|
+
// Función para obtener el username de Docker Hub desde Docker config o solicitar por teclado
|
|
709
|
+
async function getDockerHubUsernameFromToken() {
|
|
710
|
+
// Obtener el username desde Docker config (requerido para poder hacer push)
|
|
711
|
+
const dockerConfigPath = path.join(os.homedir(), '.docker', 'config.json');
|
|
712
|
+
if (!fs.existsSync(dockerConfigPath)) {
|
|
713
|
+
throw new Error('Docker authentication not found. Please login to Docker first.\n' +
|
|
714
|
+
' Run: docker login\n' +
|
|
715
|
+
' This is required to push images to Docker Hub.');
|
|
702
716
|
}
|
|
703
|
-
let tokenData;
|
|
704
717
|
try {
|
|
705
|
-
|
|
718
|
+
const dockerConfig = JSON.parse(fs.readFileSync(dockerConfigPath, 'utf-8'));
|
|
719
|
+
// Verificar si hay credsStore (las credenciales están en el keychain del sistema)
|
|
720
|
+
const hasCredsStore = dockerConfig.credsStore && dockerConfig.credsStore !== '';
|
|
721
|
+
// Buscar username en Docker Hub auth
|
|
722
|
+
let dockerHubKeys = [];
|
|
723
|
+
if (dockerConfig.auths && Object.keys(dockerConfig.auths).length > 0) {
|
|
724
|
+
dockerHubKeys = Object.keys(dockerConfig.auths).filter(reg => reg.includes('docker.io') ||
|
|
725
|
+
reg.includes('hub.docker.com') ||
|
|
726
|
+
reg === 'https://index.docker.io/v1/');
|
|
727
|
+
// Si hay credsStore, los auths pueden estar vacíos pero las credenciales están en el keychain
|
|
728
|
+
if (hasCredsStore && dockerHubKeys.length > 0) {
|
|
729
|
+
// Intentar obtener username desde docker info
|
|
730
|
+
try {
|
|
731
|
+
const dockerInfo = (0, child_process_1.execSync)('docker info', { encoding: 'utf-8', stdio: 'pipe', timeout: 5000 });
|
|
732
|
+
const usernameMatch = dockerInfo.match(/Username:\s*(.+)/i);
|
|
733
|
+
if (usernameMatch && usernameMatch[1]) {
|
|
734
|
+
let username = usernameMatch[1].trim();
|
|
735
|
+
// Si el username es un email, extraer solo la parte antes del @
|
|
736
|
+
if (username.includes('@')) {
|
|
737
|
+
username = username.split('@')[0];
|
|
738
|
+
}
|
|
739
|
+
// Sanitizar el username para Docker Hub
|
|
740
|
+
username = username.toLowerCase()
|
|
741
|
+
.replace(/[^a-z0-9._-]/g, '-')
|
|
742
|
+
.replace(/^-+|-+$/g, '')
|
|
743
|
+
.replace(/-+/g, '-')
|
|
744
|
+
.replace(/\.+/g, '.')
|
|
745
|
+
.substring(0, 30);
|
|
746
|
+
if (username) {
|
|
747
|
+
return username;
|
|
748
|
+
}
|
|
749
|
+
}
|
|
750
|
+
}
|
|
751
|
+
catch (infoError) {
|
|
752
|
+
// Si docker info falla, continuar con otros métodos
|
|
753
|
+
}
|
|
754
|
+
}
|
|
755
|
+
// Si no hay credsStore, buscar username directamente en auths
|
|
756
|
+
if (!hasCredsStore) {
|
|
757
|
+
for (const key of dockerHubKeys) {
|
|
758
|
+
const authData = dockerConfig.auths[key];
|
|
759
|
+
if (authData && authData.username) {
|
|
760
|
+
let username = authData.username;
|
|
761
|
+
// Si el username es un email, extraer solo la parte antes del @
|
|
762
|
+
if (username.includes('@')) {
|
|
763
|
+
username = username.split('@')[0];
|
|
764
|
+
}
|
|
765
|
+
// Sanitizar el username para Docker Hub
|
|
766
|
+
username = username.toLowerCase()
|
|
767
|
+
.replace(/[^a-z0-9._-]/g, '-')
|
|
768
|
+
.replace(/^-+|-+$/g, '')
|
|
769
|
+
.replace(/-+/g, '-')
|
|
770
|
+
.replace(/\.+/g, '.')
|
|
771
|
+
.substring(0, 30);
|
|
772
|
+
if (username) {
|
|
773
|
+
return username;
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
}
|
|
779
|
+
// Si hay credsStore pero no encontramos username, intentar con docker info
|
|
780
|
+
if (hasCredsStore) {
|
|
781
|
+
try {
|
|
782
|
+
const dockerInfo = (0, child_process_1.execSync)('docker info', { encoding: 'utf-8', stdio: 'pipe', timeout: 5000 });
|
|
783
|
+
const usernameMatch = dockerInfo.match(/Username:\s*(.+)/i);
|
|
784
|
+
if (usernameMatch && usernameMatch[1]) {
|
|
785
|
+
let username = usernameMatch[1].trim();
|
|
786
|
+
// Si el username es un email, extraer solo la parte antes del @
|
|
787
|
+
if (username.includes('@')) {
|
|
788
|
+
username = username.split('@')[0];
|
|
789
|
+
}
|
|
790
|
+
// Sanitizar el username para Docker Hub
|
|
791
|
+
username = username.toLowerCase()
|
|
792
|
+
.replace(/[^a-z0-9._-]/g, '-')
|
|
793
|
+
.replace(/^-+|-+$/g, '')
|
|
794
|
+
.replace(/-+/g, '-')
|
|
795
|
+
.replace(/\.+/g, '.')
|
|
796
|
+
.substring(0, 30);
|
|
797
|
+
if (username) {
|
|
798
|
+
return username;
|
|
799
|
+
}
|
|
800
|
+
}
|
|
801
|
+
}
|
|
802
|
+
catch (infoError) {
|
|
803
|
+
// Continuar con el error
|
|
804
|
+
}
|
|
805
|
+
}
|
|
806
|
+
// Si llegamos aquí, no encontramos el username - solicitar por teclado
|
|
807
|
+
console.log(chalk_1.default.yellow('\n⚠️ Could not automatically detect Docker Hub username.'));
|
|
808
|
+
console.log(chalk_1.default.gray(' Please enter your Docker Hub username manually.\n'));
|
|
809
|
+
const answer = await inquirer_1.default.prompt([
|
|
810
|
+
{
|
|
811
|
+
type: 'input',
|
|
812
|
+
name: 'username',
|
|
813
|
+
message: 'Docker Hub username:',
|
|
814
|
+
validate: (input) => {
|
|
815
|
+
if (!input || input.trim().length === 0) {
|
|
816
|
+
return 'Username is required';
|
|
817
|
+
}
|
|
818
|
+
// Validar formato básico de username Docker Hub
|
|
819
|
+
const sanitized = input.toLowerCase().replace(/[^a-z0-9._-]/g, '');
|
|
820
|
+
if (sanitized !== input.toLowerCase()) {
|
|
821
|
+
return 'Username can only contain lowercase letters, numbers, dots, hyphens, and underscores';
|
|
822
|
+
}
|
|
823
|
+
if (input.length > 30) {
|
|
824
|
+
return 'Username must be 30 characters or less';
|
|
825
|
+
}
|
|
826
|
+
return true;
|
|
827
|
+
},
|
|
828
|
+
filter: (input) => {
|
|
829
|
+
// Si el input es un email, extraer solo la parte antes del @
|
|
830
|
+
if (input.includes('@')) {
|
|
831
|
+
return input.split('@')[0].trim();
|
|
832
|
+
}
|
|
833
|
+
return input.trim();
|
|
834
|
+
}
|
|
835
|
+
}
|
|
836
|
+
]);
|
|
837
|
+
let username = answer.username.toLowerCase();
|
|
838
|
+
// Sanitizar el username para Docker Hub
|
|
839
|
+
username = username
|
|
840
|
+
.replace(/[^a-z0-9._-]/g, '-')
|
|
841
|
+
.replace(/^-+|-+$/g, '')
|
|
842
|
+
.replace(/-+/g, '-')
|
|
843
|
+
.replace(/\.+/g, '.')
|
|
844
|
+
.substring(0, 30);
|
|
845
|
+
if (!username) {
|
|
846
|
+
throw new Error('Invalid username provided');
|
|
847
|
+
}
|
|
848
|
+
return username;
|
|
706
849
|
}
|
|
707
850
|
catch (error) {
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
throw new Error(
|
|
714
|
-
|
|
715
|
-
// Extraer el username del email (parte antes del @) y sanitizarlo para Docker Hub
|
|
716
|
-
const emailParts = email.split('@');
|
|
717
|
-
if (emailParts.length < 2) {
|
|
718
|
-
throw new Error(`Invalid email format in token.json: ${email}`);
|
|
719
|
-
}
|
|
720
|
-
let username = emailParts[0].toLowerCase();
|
|
721
|
-
// Sanitizar el username para Docker Hub
|
|
722
|
-
// Docker Hub permite: letras minúsculas, números, guiones, guiones bajos
|
|
723
|
-
username = username
|
|
724
|
-
.replace(/[^a-z0-9._-]/g, '-') // Reemplazar caracteres inválidos con guiones
|
|
725
|
-
.replace(/^-+|-+$/g, '') // Eliminar guiones al inicio y final
|
|
726
|
-
.replace(/-+/g, '-') // Reemplazar múltiples guiones con uno solo
|
|
727
|
-
.replace(/\.+/g, '.') // Reemplazar múltiples puntos con uno solo
|
|
728
|
-
.substring(0, 30); // Limitar longitud (Docker Hub tiene límites)
|
|
729
|
-
if (!username) {
|
|
730
|
-
throw new Error(`Could not extract valid username from email: ${email}`);
|
|
851
|
+
// Si el error ya tiene mensaje, relanzarlo
|
|
852
|
+
if (error.message && (error.message.includes('Docker') || error.message.includes('username'))) {
|
|
853
|
+
throw error;
|
|
854
|
+
}
|
|
855
|
+
// Si hay error leyendo Docker config, lanzar error
|
|
856
|
+
throw new Error(`Failed to read Docker config: ${error.message || String(error)}\n` +
|
|
857
|
+
' Please ensure you are logged in to Docker: docker login');
|
|
731
858
|
}
|
|
732
|
-
return username;
|
|
733
859
|
}
|
|
734
860
|
// Función para leer certificados Docker desde token.json
|
|
735
861
|
function loadDockerCertificatesFromToken() {
|