devs-cli 2.0.4__tar.gz → 2.0.6__tar.gz

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.
Files changed (31) hide show
  1. {devs_cli-2.0.4/devs_cli.egg-info → devs_cli-2.0.6}/PKG-INFO +1 -1
  2. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs/cli.py +4 -2
  3. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs/config.py +8 -0
  4. {devs_cli-2.0.4 → devs_cli-2.0.6/devs_cli.egg-info}/PKG-INFO +1 -1
  5. {devs_cli-2.0.4 → devs_cli-2.0.6}/pyproject.toml +1 -1
  6. {devs_cli-2.0.4 → devs_cli-2.0.6}/LICENSE +0 -0
  7. {devs_cli-2.0.4 → devs_cli-2.0.6}/README.md +0 -0
  8. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs/__init__.py +0 -0
  9. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs/core/__init__.py +0 -0
  10. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs/core/integration.py +0 -0
  11. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs/exceptions.py +0 -0
  12. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs/utils/__init__.py +0 -0
  13. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs_cli.egg-info/SOURCES.txt +0 -0
  14. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs_cli.egg-info/dependency_links.txt +0 -0
  15. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs_cli.egg-info/entry_points.txt +0 -0
  16. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs_cli.egg-info/requires.txt +0 -0
  17. {devs_cli-2.0.4 → devs_cli-2.0.6}/devs_cli.egg-info/top_level.txt +0 -0
  18. {devs_cli-2.0.4 → devs_cli-2.0.6}/setup.cfg +0 -0
  19. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_cli.py +0 -0
  20. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_cli_clean.py +0 -0
  21. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_cli_misc.py +0 -0
  22. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_cli_start.py +0 -0
  23. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_cli_stop.py +0 -0
  24. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_cli_vscode.py +0 -0
  25. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_container_manager.py +0 -0
  26. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_e2e.py +0 -0
  27. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_error_parsing.py +0 -0
  28. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_integration.py +0 -0
  29. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_live_mode.py +0 -0
  30. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_project.py +0 -0
  31. {devs_cli-2.0.4 → devs_cli-2.0.6}/tests/test_workspace_manager.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devs-cli
3
- Version: 2.0.4
3
+ Version: 2.0.6
4
4
  Summary: DevContainer Management Tool - Manage multiple named devcontainers for any project
5
5
  Author: Dan Lester
6
6
  License-Expression: MIT
@@ -811,7 +811,8 @@ def tunnel(dev_name: str, auth: bool, status: bool, kill_tunnel: bool, live: boo
811
811
  First-time setup requires authentication:
812
812
  devs tunnel <name> --auth
813
813
 
814
- After that, tunnels run in the background automatically.
814
+ Auth is stored in a bind-mounted directory so it persists across
815
+ all containers on this machine.
815
816
 
816
817
  DEV_NAME: Development environment name
817
818
 
@@ -839,7 +840,7 @@ def tunnel(dev_name: str, auth: bool, status: bool, kill_tunnel: bool, live: boo
839
840
  workspace_dir = workspace_manager.create_workspace(dev_name, live=live)
840
841
 
841
842
  if auth:
842
- # Interactive authentication
843
+ # Interactive authentication inside the container
843
844
  container_manager.tunnel_auth(
844
845
  dev_name=dev_name,
845
846
  workspace_dir=workspace_dir,
@@ -890,6 +891,7 @@ def tunnel(dev_name: str, auth: bool, status: bool, kill_tunnel: bool, live: boo
890
891
  sys.exit(1)
891
892
 
892
893
 
894
+
893
895
  @cli.command()
894
896
  @click.option('--all-projects', is_flag=True, help='List containers for all projects')
895
897
  def list(all_projects: bool) -> None:
@@ -16,6 +16,7 @@ class Config(BaseConfig):
16
16
  BRIDGE_DIR = Path.home() / ".devs" / "bridge"
17
17
  CLAUDE_CONFIG_DIR = Path.home() / ".devs" / "claudeconfig"
18
18
  CODEX_CONFIG_DIR = Path.home() / ".devs" / "codexconfig"
19
+ VSCODE_CLI_DIR = Path.home() / ".devs" / "vscode-cli"
19
20
 
20
21
  @property
21
22
  def container_labels(self) -> Dict[str, str]:
@@ -40,6 +41,12 @@ class Config(BaseConfig):
40
41
  self.codex_config_dir = Path(codex_config_env)
41
42
  else:
42
43
  self.codex_config_dir = self.CODEX_CONFIG_DIR
44
+
45
+ vscode_cli_env = os.getenv("DEVS_VSCODE_CLI_DIR")
46
+ if vscode_cli_env:
47
+ self.vscode_cli_dir = Path(vscode_cli_env)
48
+ else:
49
+ self.vscode_cli_dir = self.VSCODE_CLI_DIR
43
50
 
44
51
  def get_default_workspaces_dir(self) -> Path:
45
52
  """Get default workspaces directory for CLI package."""
@@ -58,6 +65,7 @@ class Config(BaseConfig):
58
65
  super().ensure_directories()
59
66
  self.claude_config_dir.mkdir(parents=True, exist_ok=True)
60
67
  self.codex_config_dir.mkdir(parents=True, exist_ok=True)
68
+ self.vscode_cli_dir.mkdir(parents=True, exist_ok=True)
61
69
 
62
70
 
63
71
  # Global config instance
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devs-cli
3
- Version: 2.0.4
3
+ Version: 2.0.6
4
4
  Summary: DevContainer Management Tool - Manage multiple named devcontainers for any project
5
5
  Author: Dan Lester
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "devs-cli"
7
- version = "2.0.4"
7
+ version = "2.0.6"
8
8
  description = "DevContainer Management Tool - Manage multiple named devcontainers for any project"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.8"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes