Skip to content

Rollback error hint references a deploy previous-version output that does not exist #350

Description

@aram356

Problem

run_rollback's missing-target error (edgezero-cli/src/lib.rs:517-520 at v0.0.6) tells the operator:

a production rollback requires --rollback-to (the version to re-activate). Fastly exposes no metadata to infer it, so it must be captured before the deploy that superseded it -- use deploy's previous-version output.

No previous-version output exists anywhere in the tree: a production deploy emits only the activated version (log::info!("version={version}"), edgezero-adapter-fastly/src/cli.rs:4811). An operator who follows the hint at the worst possible moment (mid-incident, needing a rollback) finds nothing to use.

The deploy GitHub action already works around this by running active-version before deploying to capture the rollback target.

Proposal

Either:

  1. Emit previous-version=<N> from a production deploy (capture active-version before activation), making the hint true and giving scripts a machine-readable line to capture; or
  2. Reword the hint to match reality: capture the target with active-version before deploying.

Option 1 is strictly better for scripted deploys; option 2 is the one-line fix.

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