Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: databus23/helm-diff
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 05264b7
Choose a base ref
...
head repository: databus23/helm-diff
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: a02da38
Choose a head ref
  • 9 commits
  • 11 files changed
  • 4 contributors

Commits on May 24, 2025

  1. add secret decode diff (#785)

    * add secret decode diff
    
    Signed-off-by: yxxhero <[email protected]>
    yxxhero authored May 24, 2025
    Configuration menu
    Copy the full SHA
    ab6f030 View commit details
    Browse the repository at this point in the history

Commits on May 25, 2025

  1. refactor(diff): extract secret handling to preHandleSecrets (#787)

    * refactor(diff): extract secret handling to preHandleSecrets
    
    Signed-off-by: yxxhero <[email protected]>
    yxxhero authored May 25, 2025
    Configuration menu
    Copy the full SHA
    c69efe6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    71f4a88 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3587c06 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2025

  1. build(deps): bump k8s.io/cli-runtime from 0.33.0 to 0.33.1 (#790)

    Bumps [k8s.io/cli-runtime](https://github.com/kubernetes/cli-runtime) from 0.33.0 to 0.33.1.
    - [Commits](kubernetes/cli-runtime@v0.33.0...v0.33.1)
    
    ---
    updated-dependencies:
    - dependency-name: k8s.io/cli-runtime
      dependency-version: 0.33.1
      dependency-type: direct:production
      update-type: version-update:semver-patch
    ...
    
    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored May 26, 2025
    Configuration menu
    Copy the full SHA
    e924a82 View commit details
    Browse the repository at this point in the history

Commits on May 27, 2025

  1. removing vestigial documentation of HELM_DIFF_USE_INSECURE_SERVER_SID…

    …E_DRY_RUN originally added in #499 (#765)
    jake-dog authored May 27, 2025
    Configuration menu
    Copy the full SHA
    40bb017 View commit details
    Browse the repository at this point in the history
  2. Print error messages to stderr, not stdout (#786)

    * typo: Fix a minor typo
    
    * Print error messages to stderr, not stdout
    
    Messages that help the reader make sense of the output are printed to stdout and not to stderr right
    now. When using the structured output options (such as `--output json`), this causes the output to
    not be valid JSON. It requires the user to filter out the non-JSON lines from the output and then
    pipe the output to programs that expect valid JSON input (such as [`jq`])
    
    We are using the Helm diff plugin when deploying to our production environments, and we need to
    [filter] these lines out from the output. The logic that we have implemented is fragile and we would
    have to keep it in sync with changes in the Helm Diff plugin itself.
    
    A better way to do this would be to print the messages for the reader to standard error, and keep
    the standard output purely output that can be piped into another program without any changes. I
    believe that this is a common pattern for tools that create structured output.
    
    This PR updates the messages that are printed in the helm-diff upgrade command. I have included the
    before and after outputs related to this change. One concern with this change is if plugin users are
    using this line in their scripts to detect something (for example: the line `Release was not
    present` may be used to detect that a new release will be installed into the cluster) If this change
    is accepted, it would be good to add an entry in the changelog or release message about this change
    and how it might affect plugin users.
    
    In order to output the commit that was built in the binary, I used the following command:
    
    ```sh
    $ go build -v -o bin/diff -ldflags="-X github.com/databus23/helm-diff/v3/cmd.Version=$(git rev-parse HEAD)"
    ```
    
    \### Before
    
    ```sh
    $ helm diff version
    05264b7
    
    $ HELM_DIFF_THREE_WAY_MERGE="true" HELM_DIFF_NORMALIZE_MANIFESTS="true" helm diff upgrade --output json --allow-unreleased wait-for-duration ./ | jq .
    jq: parse error: Invalid numeric literal at line 1, column 8
    Error: plugin "diff" exited with error
    ```
    
    \### After
    
    Once the messages are moved to `stderr`, the output can be parsed properly by `jq`. It is also
    possible to pipe these messages to `/dev/null`, if we want to see only the structured output.
    
    ```sh
    $ helm diff version
    447393a3f61b0c7747fa284ef73de91d0ac216bf
    
    $ HELM_DIFF_THREE_WAY_MERGE="true" HELM_DIFF_NORMALIZE_MANIFESTS="true" helm diff upgrade --output json --allow-unreleased wait-for-duration ./ | jq .
    Enabled three way merge via the envvar
    Enabled normalize manifests via the envvar
    ********************
    
                    Release was not present in Helm.  Diff will show entire contents as new.
    
    ********************
    [
      {
        "api": "batch",
        "kind": "Job",
        "namespace": "default",
        "name": "sample-job-testing-blocking",
        "change": "ADD"
      }
    ]
    
    $ HELM_DIFF_THREE_WAY_MERGE="true" HELM_DIFF_NORMALIZE_MANIFESTS="true" helm diff upgrade --output json --allow-unreleased wait-for-duration ./ 2>/dev/null | jq .
    [
      {
        "api": "batch",
        "kind": "Job",
        "namespace": "default",
        "name": "sample-job-testing-blocking",
        "change": "ADD"
      }
    ]
    ```
    
    [`jq`]: https://jqlang.org/
    [filter]: https://gitlab.com/gitlab-com/gl-infra/k8s-workloads/gitlab-com/-/blob/18aa8f083d5e45bc97f7745abda6fb50e45eab6a/bin/k-ctl
    icyflame authored May 27, 2025
    Configuration menu
    Copy the full SHA
    1024c53 View commit details
    Browse the repository at this point in the history

Commits on May 28, 2025

  1. build: update Helm to v3.18.1 in CI and go.mod (#791)

    Signed-off-by: yxxhero <[email protected]>
    yxxhero authored May 28, 2025
    Configuration menu
    Copy the full SHA
    5b1c274 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a02da38 View commit details
    Browse the repository at this point in the history
Loading