pipe-cd / pipe-cd/pipecd

Plan preview diff is incorrect if manifest gets values dynamically

Open
#4,535 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

kind/bug
Dominant language
Go
Stars
1.4k
Forks
364
Avg merge
1d 4h
Merged PRs (30d)
84

Description

What happened:
When plan preview is executed, "previous" manifests are created on the fly with the last commit of the successful deployment. This process can create different manifests from the actual "previous" manifest if templating tools get values dynamically. e.g. Getting the latest helm charts.

What you expected to happen:

How to reproduce it:

Environment:

  • piped version:
  • control-plane version:
  • Others:

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the plan preview flow that reconstructs the previous manifest from the last successful deployment. Compare that generated manifest with the actual previous manifest when templating tools, such as Helm charts, resolve dynamic values. Done means plan preview diffs use the correct previous state instead of a newly rendered variant.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, helm
Domain
ci-cd, devops, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.