flywheel-bootstrap-staging 0.1.9.202602020818__tar.gz → 0.1.9.202602021008__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 (25) hide show
  1. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/PKG-INFO +1 -1
  2. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/git_ops.py +12 -2
  3. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/pyproject.toml +1 -1
  4. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/tests/test_git_ops.py +5 -0
  5. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/.gitignore +0 -0
  6. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/README.md +0 -0
  7. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/__init__.py +0 -0
  8. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/__main__.py +0 -0
  9. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/artifacts.py +0 -0
  10. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/config_loader.py +0 -0
  11. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/constants.py +0 -0
  12. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/install.py +0 -0
  13. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/orchestrator.py +0 -0
  14. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/payload.py +0 -0
  15. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/prompts.py +0 -0
  16. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/py.typed +0 -0
  17. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/runner.py +0 -0
  18. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap/telemetry.py +0 -0
  19. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/bootstrap.sh +0 -0
  20. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/examples/config.example.toml +0 -0
  21. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/tests/test_artifacts.py +0 -0
  22. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/tests/test_entrypoint.py +0 -0
  23. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/tests/test_orchestrator.py +0 -0
  24. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/tests/test_prompts.py +0 -0
  25. {flywheel_bootstrap_staging-0.1.9.202602020818 → flywheel_bootstrap_staging-0.1.9.202602021008}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flywheel-bootstrap-staging
3
- Version: 0.1.9.202602020818
3
+ Version: 0.1.9.202602021008
4
4
  Summary: Bootstrap runner for Flywheel provisioned GPU instances
5
5
  Project-URL: Homepage, http://paradigma.inc/
6
6
  Author: Paradigma Labs
@@ -200,10 +200,20 @@ def setup_branch(config: GitConfig) -> bool:
200
200
  )
201
201
 
202
202
  if result.returncode == 0 and branch_name in result.stdout:
203
- # Branch exists, check it out
203
+ # Branch exists, fetch it explicitly (single-branch clones don't fetch other heads)
204
204
  config.log("info", f"Checking out existing branch: {branch_name}")
205
+ fetch_result = _run_git(
206
+ ["fetch", "origin", branch_name],
207
+ cwd=workspace,
208
+ )
209
+ if fetch_result.returncode != 0:
210
+ config.log(
211
+ "error", f"Failed to fetch branch {branch_name}: {fetch_result.stderr}"
212
+ )
213
+ return False
214
+
205
215
  result = _run_git(
206
- ["checkout", "-B", branch_name, f"origin/{branch_name}"],
216
+ ["checkout", "-B", branch_name, "FETCH_HEAD"],
207
217
  cwd=workspace,
208
218
  )
209
219
  else:
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "flywheel-bootstrap-staging"
3
- version = "0.1.9.202602020818"
3
+ version = "0.1.9.202602021008"
4
4
  description = "Bootstrap runner for Flywheel provisioned GPU instances"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
@@ -234,12 +234,17 @@ class TestSetupBranch:
234
234
  mock_run_git.side_effect = [
235
235
  MagicMock(returncode=0), # fetch
236
236
  MagicMock(returncode=0, stdout=branch), # ls-remote (branch exists)
237
+ MagicMock(returncode=0), # fetch branch
237
238
  MagicMock(returncode=0), # checkout -B
238
239
  ]
239
240
 
240
241
  result = setup_branch(git_config)
241
242
  assert result is True
242
243
 
244
+ call_args_list = [call.args[0] for call in mock_run_git.call_args_list]
245
+ assert ["fetch", "origin", branch] in call_args_list
246
+ assert ["checkout", "-B", branch, "FETCH_HEAD"] in call_args_list
247
+
243
248
 
244
249
  class TestInitializeRepo:
245
250
  """Tests for initialize_repo (integration)."""