Skip to content

Commit 2699a9a

Browse files
committed
fix: resolve_cli/web_image always query remote first for dev/main tags
Previously, --tag dev/main would use the cached local version first and only query the remote if no cached version existed. This caused --update --tag dev to pull stale images when a newer version was already published. Now the remote is always queried first for dev/main tags, with the cached version as a fallback when network is unavailable.
1 parent 45535c1 commit 2699a9a

1 file changed

Lines changed: 17 additions & 9 deletions

File tree

scripts/lpb.py

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -213,15 +213,21 @@ def resolve_cli_image(tag: str) -> str:
213213
return CLI_IMAGE # fallback
214214

215215
if tag == "dev":
216-
version = _load_last_version()
216+
# Always try remote first for dev/main tags (get latest)
217+
version = _get_remote_version("dev")
217218
if not version:
218-
version = _get_remote_version("dev")
219+
version = _load_last_version() # fallback to cached
219220
if not version:
220221
version = "0.0.0-lpb" # last resort
221222
return _resolve_version_image(version if "-dev" in version else version + "-dev", "cli")
222223

223224
if tag == "main" or tag == "latest":
224-
version = _load_last_version() or "0.0.0-lpb"
225+
# Always try remote first for dev/main tags (get latest)
226+
version = _get_remote_version("main")
227+
if not version:
228+
version = _load_last_version() # fallback to cached
229+
if not version:
230+
version = "0.0.0-lpb" # last resort
225231
return _resolve_version_image(version.replace("-dev", ""), "cli")
226232

227233
# Custom/explicit version tag
@@ -237,19 +243,21 @@ def resolve_web_image(tag: str) -> str:
237243
return WEB_IMAGE
238244

239245
if tag == "dev":
240-
version = _load_last_version()
246+
# Always try remote first for dev/main tags (get latest)
247+
version = _get_remote_version("dev")
241248
if not version:
242-
version = _get_remote_version("dev")
249+
version = _load_last_version() # fallback to cached
243250
if not version:
244-
version = "0.0.0-lpb"
251+
version = "0.0.0-lpb" # last resort
245252
return _resolve_version_image(version if "-dev" in version else version + "-dev", "web")
246253

247254
if tag == "main" or tag == "latest":
248-
version = _load_last_version()
255+
# Always try remote first for dev/main tags (get latest)
256+
version = _get_remote_version("main")
249257
if not version:
250-
version = _get_remote_version("main")
258+
version = _load_last_version() # fallback to cached
251259
if not version:
252-
version = "0.0.0-lpb"
260+
version = "0.0.0-lpb" # last resort
253261
return _resolve_version_image(version.replace("-dev", ""), "web")
254262

255263
# Custom/explicit version tag

0 commit comments

Comments
 (0)