Skip to content

fix(dashboard): keep programmable stage list usable after PaaS publish - #3165

Merged
wklken merged 1 commit into
TencentBlueKing:masterfrom
wklken:fix-programmable-stage-deploy-status-none
Aug 13, 2026
Merged

fix(dashboard): keep programmable stage list usable after PaaS publish#3165
wklken merged 1 commit into
TencentBlueKing:masterfrom
wklken:fix-programmable-stage-deploy-status-none

Conversation

@wklken

@wklken wklken commented Aug 13, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Guard get_stage_deploy_status when a programmable stage has a Release but no ProgrammableGatewayDeployHistory.
  • This happens after a successful publish from the developer center: the gateway records the release, but the code-deploy history is only written when deploying from the gateway UI.

Verification

  • uv run bash -lc 'cd apigateway && set -a && . apigateway/conf/unittest_env && set +a && python -m pytest --nomigrations --ds apigateway.settings -q --tb=short apigateway/tests/biz/programmable/test_releaser.py' — 2 passed
  • uv run make edition-ee && uv run make lint-check — passed

Why this change was needed:
Publishing a programmable gateway from the developer center creates a
Release but no ProgrammableGatewayDeployHistory. The stage overview then
crashed when comparing deploy_history.version.

What changed:
- Treat a missing deploy history as not deploying from the gateway
- Keep empty deploy-history objects so serializers do not receive None
- Add a regression test for the PaaS-only publish path

Problem solved:
The environment overview no longer returns 500, so users can open the
page and publish from the gateway after a developer-center release.

Co-authored-by: Cursor <cursoragent@cursor.com>
@wklken
wklken merged commit d494226 into TencentBlueKing:master Aug 13, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant