dayhoff-tools 1.3.19__py3-none-any.whl → 1.3.21__py3-none-any.whl

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.
@@ -365,8 +365,8 @@ def get_ssh_public_key() -> str:
365
365
  )
366
366
 
367
367
 
368
- def update_ssh_config_entry(engine_name: str, instance_id: str, username: str):
369
- """Add or update a single SSH config entry."""
368
+ def update_ssh_config_entry(engine_name: str, instance_id: str, ssh_user: str):
369
+ """Add or update a single SSH config entry for the given SSH user."""
370
370
  config_path = Path.home() / ".ssh" / "config"
371
371
  config_path.parent.mkdir(mode=0o700, exist_ok=True)
372
372
 
@@ -381,7 +381,7 @@ def update_ssh_config_entry(engine_name: str, instance_id: str, username: str):
381
381
  new_entry = f"""
382
382
  Host {engine_name} {SSH_MANAGED_COMMENT}
383
383
  HostName {instance_id}
384
- User {username}
384
+ User {ssh_user}
385
385
  ProxyCommand sh -c "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'"
386
386
  """
387
387
 
@@ -825,9 +825,12 @@ def ssh_engine(
825
825
  console.print(f"[red]❌ Engine is not running (state: {engine['state']})[/red]")
826
826
  raise typer.Exit(1)
827
827
 
828
+ # Determine which SSH user to use (your username for your engines, ec2-user otherwise)
829
+ ssh_user = username if engine["user"] == username else "ec2-user"
830
+
828
831
  # Update SSH config
829
- console.print(f"Updating SSH config for [cyan]{engine['name']}[/cyan]...")
830
- update_ssh_config_entry(engine["name"], engine["instance_id"], username)
832
+ console.print(f"Updating SSH config for [cyan]{engine['name']}[/cyan] (user: {ssh_user})...")
833
+ update_ssh_config_entry(engine["name"], engine["instance_id"], ssh_user)
831
834
 
832
835
  # Connect
833
836
  console.print(f"[green]✓ Connecting to {engine['name']}...[/green]")
@@ -898,12 +901,14 @@ def config_ssh(
898
901
  # Add new entries if not cleaning
899
902
  if not clean:
900
903
  for engine in running_engines:
904
+ # Use engine owner's username when it's your own engine; otherwise default to ec2-user
905
+ ssh_user = engine['user'] if engine['user'] == username else 'ec2-user'
901
906
  new_lines.extend(
902
907
  [
903
908
  "",
904
909
  f"Host {engine['name']} {SSH_MANAGED_COMMENT}",
905
910
  f" HostName {engine['instance_id']}",
906
- f" User {username}",
911
+ f" User {ssh_user}",
907
912
  f" ProxyCommand sh -c \"aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'\"",
908
913
  ]
909
914
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: dayhoff-tools
3
- Version: 1.3.19
3
+ Version: 1.3.21
4
4
  Summary: Common tools for all the repos at Dayhoff Labs
5
5
  Author: Daniel Martin-Alarcon
6
6
  Author-email: dma@dayhofflabs.com
@@ -3,7 +3,7 @@ dayhoff_tools/chemistry/standardizer.py,sha256=uMn7VwHnx02nc404eO6fRuS4rsl4dvSPf
3
3
  dayhoff_tools/chemistry/utils.py,sha256=jt-7JgF-GeeVC421acX-bobKbLU_X94KNOW24p_P-_M,2257
4
4
  dayhoff_tools/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  dayhoff_tools/cli/cloud_commands.py,sha256=33qcWLmq-FwEXMdL3F0OHm-5Stlh2r65CldyEZgQ1no,40904
6
- dayhoff_tools/cli/engine_commands.py,sha256=CZ38jrOpwW7Pch5CMIYZdFDHAncofjfNhqGPNOaQzZg,79379
6
+ dayhoff_tools/cli/engine_commands.py,sha256=LzHTmcUQUOcJJCGHghBMRr8TdQsfb3Fj4s8T575MutM,79766
7
7
  dayhoff_tools/cli/main.py,sha256=rgeEHD9lJ8SBCR34BTLb7gVInHUUdmEBNXAJnq5yEU4,4795
8
8
  dayhoff_tools/cli/swarm_commands.py,sha256=5EyKj8yietvT5lfoz8Zx0iQvVaNgc3SJX1z2zQR6o6M,5614
9
9
  dayhoff_tools/cli/utility_commands.py,sha256=qs8vH9TBFHsOPC3X8cU3qZigM3dDn-2Ytq4o_F2WubU,27874
@@ -27,7 +27,7 @@ dayhoff_tools/intake/uniprot.py,sha256=BZYJQF63OtPcBBnQ7_P9gulxzJtqyorgyuDiPeOJq
27
27
  dayhoff_tools/logs.py,sha256=DKdeP0k0kliRcilwvX0mUB2eipO5BdWUeHwh-VnsICs,838
28
28
  dayhoff_tools/sqlite.py,sha256=jV55ikF8VpTfeQqqlHSbY8OgfyfHj8zgHNpZjBLos_E,18672
29
29
  dayhoff_tools/warehouse.py,sha256=8YbnQ--usrEgDQGfvpV4MrMji55A0rq2hZaOgFGh6ag,15896
30
- dayhoff_tools-1.3.19.dist-info/METADATA,sha256=DDxXzIPCAMsCjkPHNSHI9zu81N8XDS1SwHX9cu_9NmM,2825
31
- dayhoff_tools-1.3.19.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
32
- dayhoff_tools-1.3.19.dist-info/entry_points.txt,sha256=iAf4jteNqW3cJm6CO6czLxjW3vxYKsyGLZ8WGmxamSc,49
33
- dayhoff_tools-1.3.19.dist-info/RECORD,,
30
+ dayhoff_tools-1.3.21.dist-info/METADATA,sha256=Xz7PBOgBq2Wn2Sh1zSAaogaOqyXz6AaYG0YbSD6ONIs,2825
31
+ dayhoff_tools-1.3.21.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
32
+ dayhoff_tools-1.3.21.dist-info/entry_points.txt,sha256=iAf4jteNqW3cJm6CO6czLxjW3vxYKsyGLZ8WGmxamSc,49
33
+ dayhoff_tools-1.3.21.dist-info/RECORD,,