gitarsenal-cli 1.4.8 → 1.4.10

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/bin/gitarsenal.js CHANGED
@@ -225,24 +225,7 @@ async function runContainerCommand(options) {
225
225
  }
226
226
  }
227
227
 
228
- // Show configuration summary
229
- console.log(chalk.bold('\nšŸ“‹ Container Configuration:'));
230
- console.log(chalk.cyan('Repository URL: ') + repoUrl);
231
- console.log(chalk.cyan('GPU Type: ') + gpuType);
232
- console.log(chalk.cyan('Volume: ') + (volumeName || 'None'));
233
-
234
- if (useApi) {
235
- console.log(chalk.cyan('Setup Commands: ') + 'Auto-detect from repository');
236
- } else if (setupCommands.length > 0) {
237
- console.log(chalk.cyan('Setup Commands:'));
238
- setupCommands.forEach((cmd, i) => {
239
- console.log(` ${i + 1}. ${cmd}`);
240
- });
241
- } else {
242
- console.log(chalk.cyan('Setup Commands: ') + 'None');
243
- }
244
-
245
- // Confirm settings
228
+ // Confirm settings (configuration will be shown by Python script after GPU selection)
246
229
  if (!skipConfirmation) {
247
230
  const confirmAnswers = await inquirer.prompt([
248
231
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gitarsenal-cli",
3
- "version": "1.4.8",
3
+ "version": "1.4.10",
4
4
  "description": "CLI tool for creating Modal sandboxes with GitHub repositories",
5
5
  "main": "index.js",
6
6
  "bin": {
@@ -944,8 +944,8 @@ def create_modal_sandbox(gpu_type, repo_url=None, repo_name=None, setup_commands
944
944
  'T4': {'gpu': 'T4', 'memory': 16},
945
945
  'L4': {'gpu': 'L4', 'memory': 24},
946
946
  'A10G': {'gpu': 'A10G', 'memory': 24},
947
- 'A100-40GB': {'gpu': 'A100-SXM4-40GB', 'memory': 40},
948
- 'A100-80GB': {'gpu': 'A100-80GB', 'memory': 80},
947
+ 'A100-40': {'gpu': 'A100-SXM4-40GB', 'memory': 40},
948
+ 'A100-80': {'gpu': 'A100-80', 'memory': 80},
949
949
  'L40S': {'gpu': 'L40S', 'memory': 48},
950
950
  'H100': {'gpu': 'H100', 'memory': 80},
951
951
  'H200': {'gpu': 'H200', 'memory': 141},
@@ -4108,8 +4108,8 @@ def prompt_for_gpu():
4108
4108
  'T4': {'gpu': 'T4', 'memory': '16GB'},
4109
4109
  'L4': {'gpu': 'L4', 'memory': '24GB'},
4110
4110
  'A10G': {'gpu': 'A10G', 'memory': '24GB'},
4111
- 'A100-40GB': {'gpu': 'A100-SXM4-40GB', 'memory': '40GB'},
4112
- 'A100-80GB': {'gpu': 'A100-80GB', 'memory': '80GB'},
4111
+ 'A100-40': {'gpu': 'A100-40GB', 'memory': '40GB'},
4112
+ 'A100-80': {'gpu': 'A100-80GB', 'memory': '80GB'},
4113
4113
  'L40S': {'gpu': 'L40S', 'memory': '48GB'},
4114
4114
  'H100': {'gpu': 'H100', 'memory': '80GB'},
4115
4115
  'H200': {'gpu': 'H200', 'memory': '141GB'},
@@ -4146,9 +4146,9 @@ def prompt_for_gpu():
4146
4146
  def display_menu():
4147
4147
  """Display the GPU selection menu with current selection highlighted."""
4148
4148
  print("\nšŸ“Š Available GPU Options:")
4149
- print("ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”")
4150
- print("│ GPU Type │ Memory │")
4151
- print("ā”œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¤")
4149
+ print("ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¬ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”")
4150
+ print("│ GPU Type │ VRAM │")
4151
+ print("ā”œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¤")
4152
4152
 
4153
4153
  for i, gpu_type in enumerate(options):
4154
4154
  specs = gpu_specs[gpu_type]
@@ -4167,7 +4167,7 @@ def prompt_for_gpu():
4167
4167
 
4168
4168
  print(f"│ {gpu_padded} │ {specs['memory']:<7} │{suffix}")
4169
4169
 
4170
- print("ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜")
4170
+ print("ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜")
4171
4171
  print("Use ↑/↓ arrows to select, Enter to confirm, Ctrl+C to cancel")
4172
4172
 
4173
4173
  # Clear screen and show initial menu
@@ -4287,6 +4287,28 @@ if __name__ == "__main__":
4287
4287
  gpu_type = prompt_for_gpu()
4288
4288
  args.gpu = gpu_type
4289
4289
 
4290
+ # Display configuration after GPU selection
4291
+ print("\nšŸ“‹ Container Configuration:")
4292
+ print(f"Repository URL: {args.repo_url or 'Not specified'}")
4293
+ print(f"GPU Type: {gpu_type}")
4294
+ print(f"Volume: {args.volume_name or 'None'}")
4295
+ if args.use_api:
4296
+ print("Setup Commands: Auto-detect from repository")
4297
+ elif args.setup_commands:
4298
+ print(f"Setup Commands: {len(args.setup_commands)} custom commands")
4299
+ else:
4300
+ print("Setup Commands: Auto-detect from repository")
4301
+
4302
+ # Confirm settings
4303
+ try:
4304
+ proceed = input("Proceed with these settings? (Y/n): ").strip().lower()
4305
+ if proceed in ('n', 'no'):
4306
+ print("šŸ›‘ Operation cancelled by user.")
4307
+ sys.exit(0)
4308
+ except KeyboardInterrupt:
4309
+ print("\nšŸ›‘ Operation cancelled by user.")
4310
+ sys.exit(0)
4311
+
4290
4312
  # Interactive mode or missing required arguments
4291
4313
  if args.interactive or not args.repo_url or not args.volume_name:
4292
4314
  # Get repository URL if not provided