Skip to content

Track exact FC version id during backend production deploy #185

Description

@xiaoland

Context

Backend production deploy currently publishes an FC function version with the commit SHA in the version description, then updates the production alias with --version-id "latest".

Relevant scripts:

  • scripts/ci/fc/publish_function_version.sh
  • scripts/ci/fc/publish_production_alias.sh
  • scripts/ci/fc/deploy_backend.sh

Why this matters

The commit hash is already recorded in the published version description, which is useful for manual traceability. The remaining improvement is to make the deploy pipeline explicitly capture the concrete FC versionId returned by version publish, then use that exact value when publishing the alias.

This would make the rollout chain machine-verifiable:

commit SHA -> FC versionId -> production alias

Proposed work

  • Parse the output of s cli fc3 version publish and capture the published versionId.
  • Pass that explicit version id to alias publication instead of --version-id "latest".
  • After alias publication, query/verify the alias points to the expected version id.
  • Emit a concise deploy summary containing commit SHA, version id, and alias name.
  • Keep current behavior unchanged if Serverless Devs confirms latest maps to the latest numeric published version; this issue is for auditability and race-resistance.

Acceptance criteria

  • Production deploy logs expose the exact FC version id associated with the deployed commit.
  • Alias update uses or verifies the exact version id published in the same deploy run.
  • Failure to verify alias state fails the deploy before backend GitHub Release creation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions