Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package helmfile for openSUSE:Factory checked in at 2024-01-25 18:40:53 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/helmfile (Old) and /work/SRC/openSUSE:Factory/.helmfile.new.1815 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "helmfile" Thu Jan 25 18:40:53 2024 rev:50 rq:1141198 version:0.161.0 Changes: -------- --- /work/SRC/openSUSE:Factory/helmfile/helmfile.changes 2023-12-28 23:02:18.096280505 +0100 +++ /work/SRC/openSUSE:Factory/.helmfile.new.1815/helmfile.changes 2024-01-25 18:40:56.194081890 +0100 @@ -1,0 +2,75 @@ +Wed Jan 24 09:22:29 UTC 2024 - Manfred Hollstein <manfre...@gmx.net> + +- Update to version 0.161.0: + What's Changed + * build(deps): bump github.com/helmfile/vals from 0.31.0 to + 0.32.0 by @dependabot in #1250 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.8 to + 1.49.9 by @dependabot in #1251 + * feat: respect helmfile.lock with ad-hoc kustimzation by + @vlpav030 in #1244 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.9 to + 1.49.10 by @dependabot in #1257 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.10 to + 1.49.11 by @dependabot in #1259 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.11 to + 1.49.12 by @dependabot in #1260 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.12 to + 1.49.13 by @dependabot in #1263 + * fix: prevent preparing chart for disabled releases by + @mighty1231 in #1210 + * add support for HELMFILE_FILE_PATH envvar to set -f by + @sstarcher in #1255 + * fix checker error message by @petelock in #1266 + * build(deps): bump golang.org/x/term from 0.15.0 to 0.16.0 + by @dependabot in #1267 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.13 to + 1.49.14 by @dependabot in #1269 + * build(deps): bump golang.org/x/sync from 0.5.0 to 0.6.0 by + @dependabot in #1268 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.14 to + 1.49.15 by @dependabot in #1270 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.15 to + 1.49.16 by @dependabot in #1272 + * build(deps): bump github.com/cloudflare/circl from 1.3.3 to + 1.3.7 by @dependabot in #1273 + * feat: include func support more template functions by + @yxxhero in #1277 + * chore: add zhihu to list of helmfile users by @zhaogaolong + in #1278 + * Bugfix: do not print registry password to stdout when running + by @ennekein in #1275 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.16 to + 1.49.17 by @dependabot in #1279 + * build(deps): bump gitpython from 3.1.37 to 3.1.41 in /docs + by @dependabot in #1280 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.17 to + 1.49.18 by @dependabot in #1283 + * build(deps): bump jinja2 from 3.1.1 to 3.1.3 in /docs by + @dependabot in #1284 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.18 to + 1.49.19 by @dependabot in #1285 + * feat: bump helm-diff to v3.9.1 by @yxxhero in #1286 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.19 to + 1.49.21 by @dependabot in #1287 + * Bump helm diff to 3.9.2 by @kxkcx in #1291 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.21 to + 1.49.22 by @dependabot in #1292 + * fix: issue with pre-release Helm version by @yxxhero in #1293 + * build(deps): bump k8s.io/apimachinery from 0.29.0 to 0.29.1 + by @dependabot in #1298 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.22 to + 1.49.23 by @dependabot in #1296 + * Bump helm diff to 3.9.2 by @kxkcx in #1299 + * feat: bump helm to 3.14.0 by @yxxhero in #1295 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.23 to + 1.49.24 by @dependabot in #1300 + * feat: bump vals to 0.33.0 by @yxxhero in #1302 + * build(deps): bump github.com/aws/aws-sdk-go from 1.49.24 to + 1.50.0 by @dependabot in #1303 + * build(deps): bump github.com/aws/aws-sdk-go from 1.50.0 to + 1.50.1 by @dependabot in #1305 + * Fix the password display problem when passing the chart link + by @NavesEdu in #1281 + +------------------------------------------------------------------- Old: ---- helmfile-0.160.0.tar.gz New: ---- helmfile-0.161.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ helmfile.spec ++++++ --- /var/tmp/diff_new_pack.INvSRo/_old 2024-01-25 18:40:57.938144114 +0100 +++ /var/tmp/diff_new_pack.INvSRo/_new 2024-01-25 18:40:57.938144114 +0100 @@ -1,8 +1,8 @@ # # spec file for package helmfile # -# Copyright (c) 2023 SUSE LLC -# 2021 Manfred Hollstein <manfre...@gmx.net> +# Copyright (c) 2024 SUSE LLC +# 2021-2024 Manfred Hollstein <manfre...@gmx.net> # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,9 +17,9 @@ # -%define git_commit e9cb5a05fe38eeaceb89e6b268882140f83e76af +%define git_commit 430677d43cf4e591aa86a6c24268d02f15f7162a Name: helmfile -Version: 0.160.0 +Version: 0.161.0 Release: 0 Summary: Deploy Kubernetes Helm Charts License: MIT @@ -27,8 +27,8 @@ URL: https://github.com/helmfile/helmfile Source: %{name}-%{version}.tar.gz Source1: vendor.tar.gz -Requires: helm >= 3.11.1 -Recommends: helm >= 3.13.1 +Requires: helm >= 3.13.1 +Recommends: helm >= 3.14.0 BuildRequires: golang-packaging BuildRequires: xz BuildRequires: golang(API) >= 1.21 ++++++ _service ++++++ --- /var/tmp/diff_new_pack.INvSRo/_old 2024-01-25 18:40:57.974145399 +0100 +++ /var/tmp/diff_new_pack.INvSRo/_new 2024-01-25 18:40:57.978145541 +0100 @@ -5,7 +5,7 @@ <param name="exclude">.git</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">v(.*)</param> - <param name="revision">v0.160.0</param> + <param name="revision">v0.161.0</param> <param name="changesgenerate">enable</param> </service> <service name="recompress" mode="manual"> ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.INvSRo/_old 2024-01-25 18:40:58.002146398 +0100 +++ /var/tmp/diff_new_pack.INvSRo/_new 2024-01-25 18:40:58.006146540 +0100 @@ -1,5 +1,5 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/helmfile/helmfile.git</param> - <param name="changesrevision">e9cb5a05fe38eeaceb89e6b268882140f83e76af</param></service></servicedata> + <param name="changesrevision">430677d43cf4e591aa86a6c24268d02f15f7162a</param></service></servicedata> ++++++ helmfile-0.160.0.tar.gz -> helmfile-0.161.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/.github/workflows/ci.yaml new/helmfile-0.161.0/.github/workflows/ci.yaml --- old/helmfile-0.160.0/.github/workflows/ci.yaml 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/.github/workflows/ci.yaml 2024-01-24 02:01:04.000000000 +0100 @@ -54,13 +54,13 @@ # Helm maintains the latest minor version only and therefore each Helmfile version supports 2 Helm minor versions. # That's why we cover only 2 Helm minor versions in this matrix. # See https://github.com/helmfile/helmfile/pull/286#issuecomment-1250161182 for more context. - - helm-version: v3.12.3 + - helm-version: v3.13.3 kustomize-version: v4.5.7 plugin-secrets-version: 3.15.0 - plugin-diff-version: 3.7.0 + plugin-diff-version: 3.8.1 extra-helmfile-flags: '' v1mode: '' - - helm-version: v3.12.3 + - helm-version: v3.13.3 kustomize-version: v5.2.1 # We assume that the helm-secrets plugin is supposed to # work with the two most recent helm minor versions. @@ -68,34 +68,34 @@ # we will mark this combination as failable, # and instruct users to upgrade helm and helm-secrets at once. plugin-secrets-version: 4.5.1 - plugin-diff-version: 3.8.1 + plugin-diff-version: 3.9.2 extra-helmfile-flags: '' v1mode: '' - - helm-version: v3.13.3 + - helm-version: v3.14.0 kustomize-version: v4.5.7 plugin-secrets-version: 3.15.0 - plugin-diff-version: 3.7.0 + plugin-diff-version: 3.8.1 extra-helmfile-flags: '' v1mode: '' - - helm-version: v3.13.3 + - helm-version: v3.14.0 kustomize-version: v5.2.1 plugin-secrets-version: 4.5.1 - plugin-diff-version: 3.8.1 + plugin-diff-version: 3.9.2 extra-helmfile-flags: '' v1mode: '' # Helmfile v1 - - helm-version: v3.13.3 + - helm-version: v3.14.0 kustomize-version: v5.2.1 plugin-secrets-version: 4.5.1 - plugin-diff-version: 3.8.1 + plugin-diff-version: 3.9.2 extra-helmfile-flags: '' v1mode: 'true' # In case you need to test some optional helmfile features, # enable it via extra-helmfile-flags below. - - helm-version: v3.13.3 + - helm-version: v3.14.0 kustomize-version: v5.2.1 plugin-secrets-version: 4.5.1 - plugin-diff-version: 3.8.1 + plugin-diff-version: 3.9.2 extra-helmfile-flags: '--enable-live-output' v1mode: '' steps: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/Dockerfile new/helmfile-0.161.0/Dockerfile --- old/helmfile-0.160.0/Dockerfile 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/Dockerfile 2024-01-24 02:01:04.000000000 +0100 @@ -30,7 +30,7 @@ ARG HELM_DATA_HOME="${HOME}/.local/share/helm" ENV HELM_DATA_HOME="${HELM_DATA_HOME}" -ARG HELM_VERSION="v3.13.3" +ARG HELM_VERSION="v3.14.0" ENV HELM_VERSION="${HELM_VERSION}" ARG HELM_LOCATION="https://get.helm.sh" ARG HELM_FILENAME="helm-${HELM_VERSION}-${TARGETOS}-${TARGETARCH}.tar.gz" @@ -38,8 +38,8 @@ curl --retry 5 --retry-connrefused -LO "${HELM_LOCATION}/${HELM_FILENAME}" && \ echo Verifying ${HELM_FILENAME}... && \ case ${TARGETPLATFORM} in \ - "linux/amd64") HELM_SHA256="bbb6e7c6201458b235f335280f35493950dcd856825ddcfd1d3b40ae757d5c7d" ;; \ - "linux/arm64") HELM_SHA256="44aaa094ae24d01e8c36e327e1837fd3377a0f9152626da088384c5bc6d94562" ;; \ + "linux/amd64") HELM_SHA256="f43e1c3387de24547506ab05d24e5309c0ce0b228c23bd8aa64e9ec4b8206651" ;; \ + "linux/arm64") HELM_SHA256="b29e61674731b15f6ad3d1a3118a99d3cc2ab25a911aad1b8ac8c72d5a9d2952" ;; \ esac && \ echo "${HELM_SHA256} ${HELM_FILENAME}" | sha256sum -c && \ echo Extracting ${HELM_FILENAME}... && \ @@ -94,7 +94,7 @@ [ "$(age --version)" = "${AGE_VERSION}" ] && \ [ "$(age-keygen --version)" = "${AGE_VERSION}" ] -RUN helm plugin install https://github.com/databus23/helm-diff --version v3.8.1 && \ +RUN helm plugin install https://github.com/databus23/helm-diff --version v3.9.2 && \ helm plugin install https://github.com/jkroepke/helm-secrets --version v4.5.1 && \ helm plugin install https://github.com/hypnoglow/helm-s3.git --version v0.15.1 && \ helm plugin install https://github.com/aslafy-z/helm-git.git --version v0.15.1 && \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/Dockerfile.debian-stable-slim new/helmfile-0.161.0/Dockerfile.debian-stable-slim --- old/helmfile-0.160.0/Dockerfile.debian-stable-slim 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/Dockerfile.debian-stable-slim 2024-01-24 02:01:04.000000000 +0100 @@ -35,7 +35,7 @@ ARG HELM_DATA_HOME="${HOME}/.local/share/helm" ENV HELM_DATA_HOME="${HELM_DATA_HOME}" -ARG HELM_VERSION="v3.13.3" +ARG HELM_VERSION="v3.14.0" ENV HELM_VERSION="${HELM_VERSION}" ARG HELM_LOCATION="https://get.helm.sh" ARG HELM_FILENAME="helm-${HELM_VERSION}-${TARGETOS}-${TARGETARCH}.tar.gz" @@ -43,8 +43,8 @@ curl --retry 5 --retry-connrefused -LO "${HELM_LOCATION}/${HELM_FILENAME}" && \ echo Verifying ${HELM_FILENAME}... && \ case ${TARGETPLATFORM} in \ - "linux/amd64") HELM_SHA256="bbb6e7c6201458b235f335280f35493950dcd856825ddcfd1d3b40ae757d5c7d" ;; \ - "linux/arm64") HELM_SHA256="44aaa094ae24d01e8c36e327e1837fd3377a0f9152626da088384c5bc6d94562" ;; \ + "linux/amd64") HELM_SHA256="f43e1c3387de24547506ab05d24e5309c0ce0b228c23bd8aa64e9ec4b8206651" ;; \ + "linux/arm64") HELM_SHA256="b29e61674731b15f6ad3d1a3118a99d3cc2ab25a911aad1b8ac8c72d5a9d2952" ;; \ esac && \ echo "${HELM_SHA256} ${HELM_FILENAME}" | sha256sum -c && \ echo Extracting ${HELM_FILENAME}... && \ @@ -99,7 +99,7 @@ [ "$(age --version)" = "${AGE_VERSION}" ] && \ [ "$(age-keygen --version)" = "${AGE_VERSION}" ] -RUN helm plugin install https://github.com/databus23/helm-diff --version v3.8.1 && \ +RUN helm plugin install https://github.com/databus23/helm-diff --version v3.9.2 && \ helm plugin install https://github.com/jkroepke/helm-secrets --version v4.5.1 && \ helm plugin install https://github.com/hypnoglow/helm-s3.git --version v0.15.1 && \ helm plugin install https://github.com/aslafy-z/helm-git.git --version v0.15.1 && \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/Dockerfile.ubuntu new/helmfile-0.161.0/Dockerfile.ubuntu --- old/helmfile-0.160.0/Dockerfile.ubuntu 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/Dockerfile.ubuntu 2024-01-24 02:01:04.000000000 +0100 @@ -35,7 +35,7 @@ ARG HELM_DATA_HOME="${HOME}/.local/share/helm" ENV HELM_DATA_HOME="${HELM_DATA_HOME}" -ARG HELM_VERSION="v3.13.3" +ARG HELM_VERSION="v3.14.0" ENV HELM_VERSION="${HELM_VERSION}" ARG HELM_LOCATION="https://get.helm.sh" ARG HELM_FILENAME="helm-${HELM_VERSION}-${TARGETOS}-${TARGETARCH}.tar.gz" @@ -43,8 +43,8 @@ curl --retry 5 --retry-connrefused -LO "${HELM_LOCATION}/${HELM_FILENAME}" && \ echo Verifying ${HELM_FILENAME}... && \ case ${TARGETPLATFORM} in \ - "linux/amd64") HELM_SHA256="bbb6e7c6201458b235f335280f35493950dcd856825ddcfd1d3b40ae757d5c7d" ;; \ - "linux/arm64") HELM_SHA256="44aaa094ae24d01e8c36e327e1837fd3377a0f9152626da088384c5bc6d94562" ;; \ + "linux/amd64") HELM_SHA256="f43e1c3387de24547506ab05d24e5309c0ce0b228c23bd8aa64e9ec4b8206651" ;; \ + "linux/arm64") HELM_SHA256="b29e61674731b15f6ad3d1a3118a99d3cc2ab25a911aad1b8ac8c72d5a9d2952" ;; \ esac && \ echo "${HELM_SHA256} ${HELM_FILENAME}" | sha256sum -c && \ echo Extracting ${HELM_FILENAME}... && \ @@ -99,7 +99,7 @@ [ "$(age --version)" = "${AGE_VERSION}" ] && \ [ "$(age-keygen --version)" = "${AGE_VERSION}" ] -RUN helm plugin install https://github.com/databus23/helm-diff --version v3.8.1 && \ +RUN helm plugin install https://github.com/databus23/helm-diff --version v3.9.2 && \ helm plugin install https://github.com/jkroepke/helm-secrets --version v4.5.1 && \ helm plugin install https://github.com/hypnoglow/helm-s3.git --version v0.15.1 && \ helm plugin install https://github.com/aslafy-z/helm-git.git --version v0.15.1 && \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/USERS.md new/helmfile-0.161.0/USERS.md --- old/helmfile-0.160.0/USERS.md 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/USERS.md 2024-01-24 02:01:04.000000000 +0100 @@ -37,4 +37,5 @@ | [Norddeutscher Rundfunk](https://www.ndr.de) | production | Using Helmfile since 2020 to deploy workloads to several similar clusters (dev, qa, prod, test, etc.) for sites tagesschau.de and sportschau.de. Thank you so much for your awesome work! | Hamburg, Germany | August 2022 | | [Dealhub](https://dealhub.io/) | production | Helmfile was an essential part of our k8s migration. Keep up the good work! | Holon, Israel | January 2023 | | [BlueLabs](https://bluelabs.eu/) | production | Helmfile is the cornerstone of our lightweight, auditable and centralized GKE deployments. | Europe | February 2021 | +| [Zhihu](https://www.zhihu.com/) | production | helmfile is an important tool for the deployment of our basic components, which can achieve standardization and auditability. |China, Beijing | December 2023 | <!-- TABLE_END --> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/docs/requirements.txt new/helmfile-0.161.0/docs/requirements.txt --- old/helmfile-0.160.0/docs/requirements.txt 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/docs/requirements.txt 2024-01-24 02:01:04.000000000 +0100 @@ -2,9 +2,9 @@ click==8.1.2 ghp-import==2.0.2 gitdb==4.0.9 -GitPython==3.1.37 +GitPython==3.1.41 importlib-metadata==4.11.3 -Jinja2==3.1.1 +Jinja2==3.1.3 Markdown==3.3.6 MarkupSafe==2.1.1 mergedeep==1.3.4 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/go.mod new/helmfile-0.161.0/go.mod --- old/helmfile-0.160.0/go.mod 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/go.mod 2024-01-24 02:01:04.000000000 +0100 @@ -2,8 +2,6 @@ go 1.21 -toolchain go1.21.0 - require ( github.com/Masterminds/semver/v3 v3.2.1 github.com/Masterminds/sprig/v3 v3.2.3 @@ -15,7 +13,7 @@ github.com/gosuri/uitable v0.0.4 github.com/hashicorp/go-getter v1.7.3 github.com/helmfile/chartify v0.17.0 - github.com/helmfile/vals v0.31.0 + github.com/helmfile/vals v0.33.0 github.com/imdario/mergo v0.3.16 github.com/spf13/cobra v1.8.0 github.com/spf13/pflag v1.0.5 @@ -24,11 +22,11 @@ github.com/variantdev/dag v1.1.0 go.szostok.io/version v1.2.0 go.uber.org/zap v1.26.0 - golang.org/x/sync v0.5.0 - golang.org/x/term v0.15.0 + golang.org/x/sync v0.6.0 + golang.org/x/term v0.16.0 gopkg.in/yaml.v2 v2.4.0 - helm.sh/helm/v3 v3.13.3 - k8s.io/apimachinery v0.29.0 + helm.sh/helm/v3 v3.14.0 + k8s.io/apimachinery v0.29.1 ) replace gopkg.in/yaml.v3 => github.com/colega/go-yaml-yaml v0.0.0-20220720070545-aaba007ebc22 @@ -47,7 +45,7 @@ github.com/Azure/go-autorest/tracing v0.6.0 // indirect github.com/Masterminds/goutils v1.1.1 // indirect github.com/a8m/envsubst v1.3.0 // indirect - github.com/aws/aws-sdk-go v1.49.8 + github.com/aws/aws-sdk-go v1.50.1 github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d // indirect github.com/blang/semver v3.5.1+incompatible // indirect github.com/dimchansky/utfbom v1.1.1 // indirect @@ -96,9 +94,9 @@ github.com/ulikunitz/xz v0.5.10 // indirect go.opencensus.io v0.24.0 // indirect go.uber.org/atomic v1.9.0 // indirect - golang.org/x/net v0.18.0 // indirect + golang.org/x/net v0.19.0 // indirect golang.org/x/oauth2 v0.12.0 // indirect - golang.org/x/sys v0.15.0 // indirect + golang.org/x/sys v0.16.0 // indirect golang.org/x/text v0.14.0 // indirect golang.org/x/time v0.3.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect @@ -132,6 +130,7 @@ github.com/DopplerHQ/cli v0.5.11-0.20230908185655-7aef4713e1a4 // indirect github.com/Microsoft/hcsshim v0.11.4 // indirect github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 // indirect + github.com/alessio/shellescape v1.4.1 // indirect github.com/araddon/dateparse v0.0.0-20210429162001-6b43995a97de // indirect github.com/atotto/clipboard v0.1.4 // indirect github.com/aws/aws-sdk-go-v2 v1.21.0 // indirect @@ -158,10 +157,12 @@ github.com/beorn7/perks v1.0.1 // indirect github.com/cenkalti/backoff/v3 v3.2.2 // indirect github.com/cespare/xxhash/v2 v2.2.0 // indirect - github.com/cloudflare/circl v1.3.3 // indirect + github.com/cloudflare/circl v1.3.7 // indirect github.com/containerd/containerd v1.7.11 // indirect github.com/containerd/log v0.1.0 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.3 // indirect + github.com/cyberark/conjur-api-go v0.11.1 // indirect + github.com/danieljoos/wincred v1.1.2 // indirect github.com/docker/cli v24.0.6+incompatible // indirect github.com/docker/distribution v2.8.2+incompatible // indirect github.com/docker/docker v24.0.7+incompatible // indirect @@ -170,8 +171,8 @@ github.com/docker/go-metrics v0.0.1 // indirect github.com/docker/go-units v0.5.0 // indirect github.com/dustin/go-humanize v1.0.1 // indirect - github.com/emicklei/go-restful/v3 v3.10.1 // indirect - github.com/evanphx/json-patch v5.6.0+incompatible // indirect + github.com/emicklei/go-restful/v3 v3.11.0 // indirect + github.com/evanphx/json-patch v5.7.0+incompatible // indirect github.com/felixge/httpsnoop v1.0.3 // indirect github.com/getsops/gopgagent v0.0.0-20170926210634-4d7ea76ff71a // indirect github.com/getsops/sops/v3 v3.8.0 // indirect @@ -182,6 +183,7 @@ github.com/go-openapi/jsonpointer v0.19.6 // indirect github.com/go-openapi/jsonreference v0.20.2 // indirect github.com/go-openapi/swag v0.22.3 // indirect + github.com/godbus/dbus/v5 v5.1.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang-jwt/jwt/v5 v5.1.0 // indirect github.com/google/btree v1.0.1 // indirect @@ -234,6 +236,7 @@ github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/urfave/cli v1.22.14 // indirect github.com/xlab/treeprint v1.2.0 // indirect + github.com/zalando/go-keyring v0.2.3-0.20230503081219-17db2e5354bd // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.45.0 // indirect go.opentelemetry.io/otel v1.19.0 // indirect go.opentelemetry.io/otel/metric v1.19.0 // indirect @@ -247,9 +250,9 @@ gopkg.in/gookit/color.v1 v1.1.6 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/api v0.28.4 // indirect - k8s.io/cli-runtime v0.28.4 // indirect - k8s.io/client-go v0.28.4 // indirect + k8s.io/api v0.29.0 // indirect + k8s.io/cli-runtime v0.29.0 // indirect + k8s.io/client-go v0.29.0 // indirect k8s.io/klog/v2 v2.110.1 // indirect k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 // indirect k8s.io/utils v0.0.0-20230726121419-3b25d923346b // indirect diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/go.sum new/helmfile-0.161.0/go.sum --- old/helmfile-0.160.0/go.sum 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/go.sum 2024-01-24 02:01:04.000000000 +0100 @@ -268,6 +268,8 @@ github.com/a8m/envsubst v1.3.0/go.mod h1:MVUTQNGQ3tsjOOtKCNd+fl8RzhsXcDvvAEzkhGtlsbY= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alessio/shellescape v1.4.1 h1:V7yhSDDn8LP4lc4jS8pFkt0zCnzVJlG5JXy9BVKJUX0= +github.com/alessio/shellescape v1.4.1/go.mod h1:PZAiSCk0LJaZkiCSkPv8qIobYglO3FPpyFjDCtHLS30= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/araddon/dateparse v0.0.0-20210429162001-6b43995a97de h1:FxWPpzIjnTlhPwqqXc4/vE0f7GvRjuAsbW+HOIe8KnA= github.com/araddon/dateparse v0.0.0-20210429162001-6b43995a97de/go.mod h1:DCaWoUhZrYW9p1lxo/cm8EmUOOzAPSEZNGF2DK1dJgw= @@ -275,8 +277,8 @@ github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4= github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn0Yu86PYI= github.com/aws/aws-sdk-go v1.44.122/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= -github.com/aws/aws-sdk-go v1.49.8 h1:gKgEiyJ8CPnr4r6pS06WfNXvp6z34JER1pBIwuocvVA= -github.com/aws/aws-sdk-go v1.49.8/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= +github.com/aws/aws-sdk-go v1.50.1 h1:AwnLUM7TcH9vMZqA4TcDKmGfLmDW5VXwT5tPH6kXylo= +github.com/aws/aws-sdk-go v1.50.1/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= github.com/aws/aws-sdk-go-v2 v1.21.0 h1:gMT0IW+03wtYJhRqTVYn0wLzwdnK9sRMcxmtfGzRdJc= github.com/aws/aws-sdk-go-v2 v1.21.0/go.mod h1:/RfNgGmRxI+iFOB1OeJUyxiU+9s88k3pfHvDagGEp0M= github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.13 h1:OPLEkmhXf6xFPiz0bLeDArZIDx1NNS4oJyG4nv3Gct0= @@ -351,8 +353,9 @@ github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= -github.com/cloudflare/circl v1.3.3 h1:fE/Qz0QdIGqeWfnwq0RE0R7MI51s0M2E4Ga9kq5AEMs= github.com/cloudflare/circl v1.3.3/go.mod h1:5XYMA4rFBvNIrhs50XuiBJ15vF2pZn4nnUKZrLbUZFA= +github.com/cloudflare/circl v1.3.7 h1:qlCDlTPz2n9fu58M0Nh1J/JzcFpfgkFHHX3O35r5vcU= +github.com/cloudflare/circl v1.3.7/go.mod h1:sRTcRWXGLrKw6yIGJ+l7amYJFfAXbZG0kBSc8r4zxgA= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= @@ -379,6 +382,10 @@ github.com/creack/pty v1.1.17/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4= +github.com/cyberark/conjur-api-go v0.11.1 h1:vjaMkw0geJsA+ikMM6UDLg4VLFQWKo/B0i9IWlOQ1f0= +github.com/cyberark/conjur-api-go v0.11.1/go.mod h1:n1p46Hj9l8wkZjM17cVYdfcatyPboWyioLGlC0QszCs= +github.com/danieljoos/wincred v1.1.2 h1:QLdCxFs1/Yl4zduvBdcHB8goaYk9RARS2SgLLRuAyr0= +github.com/danieljoos/wincred v1.1.2/go.mod h1:GijpziifJoIBfYh+S7BbkdUTU4LfM+QnGqR5Vl2tAx0= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -408,8 +415,8 @@ github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= -github.com/emicklei/go-restful/v3 v3.10.1 h1:rc42Y5YTp7Am7CS630D7JmhRjq4UlEUuEKfrDac4bSQ= -github.com/emicklei/go-restful/v3 v3.10.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxERmMY4rD+g= +github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= @@ -420,8 +427,8 @@ github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= -github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U= -github.com/evanphx/json-patch v5.6.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/evanphx/json-patch v5.7.0+incompatible h1:vgGkfT/9f8zE6tvSCe74nfpAVDQ2tG6yudJd8LBksgI= +github.com/evanphx/json-patch v5.7.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.15.0 h1:kOqh6YHBtK8aywxGerMG2Eq3H6Qgoqeo13Bk2Mv/nBs= github.com/fatih/color v1.15.0/go.mod h1:0h5ZqXfHYED7Bhv2ZJamyIOUej9KtShiJESRwBDUSsw= @@ -472,6 +479,8 @@ github.com/go-test/deep v1.1.0/go.mod h1:5C2ZWiW0ErCdrYzpqxLbTX7MG14M9iiw8DgHncVwcsE= github.com/goccy/go-yaml v1.11.2 h1:joq77SxuyIs9zzxEjgyLBugMQ9NEgTWxXfz2wVqwAaQ= github.com/goccy/go-yaml v1.11.2/go.mod h1:wKnAMd44+9JAAnGQpWVEgBzGt3YuTaQ4uXoHvE4m7WU= +github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk= +github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= @@ -654,8 +663,8 @@ github.com/hashicorp/vault/api v1.10.0/go.mod h1:jo5Y/ET+hNyz+JnKDt8XLAdKs+AM0G5W0Vp1IrFI8N8= github.com/helmfile/chartify v0.17.0 h1:v+LJfH461xqpet/aCwsBpNjJ+HG8miIjN2kmhIqBkxs= github.com/helmfile/chartify v0.17.0/go.mod h1:7pmJlGn79CDMBD1+NbDJtE3L7q0hZf5GyBCJrV78vLA= -github.com/helmfile/vals v0.31.0 h1:x6YyQU8Vw2urfrnXDvHp5Lwm7jozf0QjQwx2yeruutU= -github.com/helmfile/vals v0.31.0/go.mod h1:pYu2Sd9vQlwiBLn3ktuIsLeUNgQx+9bnFvNYQN99MmI= +github.com/helmfile/vals v0.33.0 h1:7O4Y9/q8BF5D8zpfpbcefrmuZCbDUtjetlkvlfaQOtM= +github.com/helmfile/vals v0.33.0/go.mod h1:zjw6ogcdxQ1uFN8Ap86sV+by1/WYyC0JCLMosM2dHFk= github.com/hinshun/vt10x v0.0.0-20220119200601-820417d04eec h1:qv2VnGeEQHchGaZ/u7lxST/RaJw+cv273q79D81Xbog= github.com/hinshun/vt10x v0.0.0-20220119200601-820417d04eec/go.mod h1:Q48J4R4DvxnHolD5P8pOtXigYlRuPLGl6moFx3ulM68= github.com/hokaccha/go-prettyjson v0.0.0-20211117102719-0474bc63780f h1:7LYC+Yfkj3CTRcShK0KOL/w6iTiKyqqBA9a41Wnggw8= @@ -914,6 +923,8 @@ github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f h1:ERexzlUfuTvpE74urLSbIQW0Z/6hF9t8U4NsJLaioAY= github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= +github.com/zalando/go-keyring v0.2.3-0.20230503081219-17db2e5354bd h1:D+eeEnOlWcMXbwZ5X3oy68nHafBtGcj1jMKFHtVdybY= +github.com/zalando/go-keyring v0.2.3-0.20230503081219-17db2e5354bd/go.mod h1:sI3evg9Wvpw3+n4SqplGSJUMwtDeROfD4nsFz4z9PG0= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= @@ -1051,8 +1062,8 @@ golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= -golang.org/x/net v0.18.0 h1:mIYleuAkSbHh0tCv7RvjL3F6ZVbLjq4+R7zbOn3Kokg= -golang.org/x/net v0.18.0/go.mod h1:/czyP5RqHAH4odGYxBJ1qz0+CE5WZ+2j1YgoEo8F2jQ= +golang.org/x/net v0.19.0 h1:zTwKpTd2XuCqf8huc7Fo2iSy+4RHPd10s4KzeTnVr1c= +golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1095,8 +1106,8 @@ golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.5.0 h1:60k92dhOjHxJkrqnwsfl8KuaHbn/5dl0lUPUklKo3qE= -golang.org/x/sync v0.5.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ= +golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1147,6 +1158,7 @@ golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210806184541-e5e7981a1069/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210819135213-f52c844e1c1c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210823070655-63515b42dcdf/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210908233432-aa78b53d3365/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -1173,8 +1185,8 @@ golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc= -golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.16.0 h1:xWw16ngr6ZMtmxDyKyIgsE93KNKz5HKmMa3b8ALHidU= +golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210503060354-a79de5458b56/go.mod h1:tfny5GFUkzUvx4ps4ajbZsCe5lw1metzhBm9T3x7oIY= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -1183,8 +1195,8 @@ golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= -golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4= -golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= +golang.org/x/term v0.16.0 h1:m+B6fahuftsE9qjo0VWp2FW0mB3MTJvR0BaMQrq0pmE= +golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -1259,8 +1271,8 @@ golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/tools v0.12.0 h1:YW6HUoUmYBpwSgyaGaZq1fHjrBjX1rlpZ54T6mu2kss= -golang.org/x/tools v0.12.0/go.mod h1:Sc0INKfu04TlqNoRA1hgpFZbhYXHPr4V5DzpSBTPqQM= +golang.org/x/tools v0.16.1 h1:TLyB3WofjdOEepBHAU20JdNC1Zbg87elYofWYAY5oZA= +golang.org/x/tools v0.16.1/go.mod h1:kYVVN6I1mBNoB1OX+noeBjbRk4IUEPa7JJ+TJMEooJ0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1512,8 +1524,8 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= gotest.tools/v3 v3.4.0/go.mod h1:CtbdzLSsqVhDgMtKsx03ird5YTGB3ar27v0u/yKBW5g= -helm.sh/helm/v3 v3.13.3 h1:0zPEdGqHcubehJHP9emCtzRmu8oYsJFRrlVF3TFj8xY= -helm.sh/helm/v3 v3.13.3/go.mod h1:3OKO33yI3p4YEXtTITN2+4oScsHeQe71KuzhlZ+aPfg= +helm.sh/helm/v3 v3.14.0 h1:TaZIH6uOchn7L27ptwnnuHJiFrT/BsD4dFdp/HLT2nM= +helm.sh/helm/v3 v3.14.0/go.mod h1:2itvvDv2WSZXTllknfQo6j7u3VVgMAvm8POCDgYH424= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= @@ -1521,14 +1533,14 @@ honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= -k8s.io/api v0.28.4 h1:8ZBrLjwosLl/NYgv1P7EQLqoO8MGQApnbgH8tu3BMzY= -k8s.io/api v0.28.4/go.mod h1:axWTGrY88s/5YE+JSt4uUi6NMM+gur1en2REMR7IRj0= -k8s.io/apimachinery v0.29.0 h1:+ACVktwyicPz0oc6MTMLwa2Pw3ouLAfAon1wPLtG48o= -k8s.io/apimachinery v0.29.0/go.mod h1:eVBxQ/cwiJxH58eK/jd/vAk4mrxmVlnpBH5J2GbMeis= -k8s.io/cli-runtime v0.28.4 h1:IW3aqSNFXiGDllJF4KVYM90YX4cXPGxuCxCVqCD8X+Q= -k8s.io/cli-runtime v0.28.4/go.mod h1:MLGRB7LWTIYyYR3d/DOgtUC8ihsAPA3P8K8FDNIqJ0k= -k8s.io/client-go v0.28.4 h1:Np5ocjlZcTrkyRJ3+T3PkXDpe4UpatQxj85+xjaD2wY= -k8s.io/client-go v0.28.4/go.mod h1:0VDZFpgoZfelyP5Wqu0/r/TRYcLYuJ2U1KEeoaPa1N4= +k8s.io/api v0.29.0 h1:NiCdQMY1QOp1H8lfRyeEf8eOwV6+0xA6XEE44ohDX2A= +k8s.io/api v0.29.0/go.mod h1:sdVmXoz2Bo/cb77Pxi71IPTSErEW32xa4aXwKH7gfBA= +k8s.io/apimachinery v0.29.1 h1:KY4/E6km/wLBguvCZv8cKTeOwwOBqFNjwJIdMkMbbRc= +k8s.io/apimachinery v0.29.1/go.mod h1:6HVkd1FwxIagpYrHSwJlQqZI3G9LfYWRPAkUvLnXTKU= +k8s.io/cli-runtime v0.29.0 h1:q2kC3cex4rOBLfPOnMSzV2BIrrQlx97gxHJs21KxKS4= +k8s.io/cli-runtime v0.29.0/go.mod h1:VKudXp3X7wR45L+nER85YUzOQIru28HQpXr0mTdeCrk= +k8s.io/client-go v0.29.0 h1:KmlDtFcrdUzOYrBhXHgKw5ycWzc3ryPX5mQe0SkG3y8= +k8s.io/client-go v0.29.0/go.mod h1:yLkXH4HKMAywcrD82KMSmfYg2DlE8mepPR4JGSo5n38= k8s.io/klog/v2 v2.110.1 h1:U/Af64HJf7FcwMcXyKm2RPM22WZzyR7OSpYj5tg3cL0= k8s.io/klog/v2 v2.110.1/go.mod h1:YGtd1984u+GgbuZ7e08/yBuAfKLSO0+uR1Fhi6ExXjo= k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 h1:aVUu9fTY98ivBPKR9Y5w/AuzbMm96cd3YHRTU83I780= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/app/app.go new/helmfile-0.161.0/pkg/app/app.go --- old/helmfile-0.160.0/pkg/app/app.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/app/app.go 2024-01-24 02:01:04.000000000 +0100 @@ -15,6 +15,7 @@ "go.uber.org/zap" "github.com/helmfile/helmfile/pkg/argparser" + "github.com/helmfile/helmfile/pkg/envvar" "github.com/helmfile/helmfile/pkg/filesystem" "github.com/helmfile/helmfile/pkg/helmexec" "github.com/helmfile/helmfile/pkg/plugins" @@ -1216,7 +1217,7 @@ case defaultFile != "": return []string{defaultFile}, nil default: - return []string{}, fmt.Errorf("no state file found. It must be named %s/*.{yaml,yml,yaml.gotmpl,yml.gotmpl}, %s, or %s, otherwise specified with the --file flag", DefaultHelmfileDirectory, DefaultHelmfile, DefaultGotmplHelmfile) + return []string{}, fmt.Errorf("no state file found. It must be named %s/*.{yaml,yml,yaml.gotmpl,yml.gotmpl}, %s, or %s, otherwise specified with the --file flag or %s environment variable", DefaultHelmfileDirectory, DefaultHelmfile, DefaultGotmplHelmfile, envvar.FilePath) } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/app/init.go new/helmfile-0.161.0/pkg/app/init.go --- old/helmfile-0.160.0/pkg/app/init.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/app/init.go 2024-01-24 02:01:04.000000000 +0100 @@ -17,9 +17,9 @@ ) const ( - HelmRequiredVersion = "v3.12.3" - HelmRecommendedVersion = "v3.13.3" - HelmDiffRecommendedVersion = "v3.8.1" + HelmRequiredVersion = "v3.13.3" + HelmRecommendedVersion = "v3.14.0" + HelmDiffRecommendedVersion = "v3.9.2" HelmSecretsRecommendedVersion = "v4.1.1" HelmGitRecommendedVersion = "v0.12.0" HelmS3RecommendedVersion = "v0.14.0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/config/global.go new/helmfile-0.161.0/pkg/config/global.go --- old/helmfile-0.160.0/pkg/config/global.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/config/global.go 2024-01-24 02:01:04.000000000 +0100 @@ -8,6 +8,7 @@ "go.uber.org/zap" "golang.org/x/term" + "github.com/helmfile/helmfile/pkg/envvar" "github.com/helmfile/helmfile/pkg/maputil" "github.com/helmfile/helmfile/pkg/state" ) @@ -120,7 +121,12 @@ // FileOrDir returns the path to the Helmfile. func (g *GlobalImpl) FileOrDir() string { - return g.GlobalOptions.File + file := g.GlobalOptions.File + if file == "" { + file = os.Getenv(envvar.FilePath) + } + + return file } // Selectors returns the selectors to use. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/config/global_test.go new/helmfile-0.161.0/pkg/config/global_test.go --- old/helmfile-0.160.0/pkg/config/global_test.go 1970-01-01 01:00:00.000000000 +0100 +++ new/helmfile-0.161.0/pkg/config/global_test.go 2024-01-24 02:01:04.000000000 +0100 @@ -0,0 +1,47 @@ +package config + +import ( + "os" + "testing" + + "github.com/stretchr/testify/require" + + "github.com/helmfile/helmfile/pkg/envvar" +) + +// TestFileOrDir tests if statement +func TestFileOrDir(t *testing.T) { + tests := []struct { + opts GlobalOptions + env string + expected string + }{ + { + opts: GlobalOptions{}, + env: "", + expected: "", + }, + { + opts: GlobalOptions{}, + env: "envset", + expected: "envset", + }, + { + opts: GlobalOptions{File: "folderset"}, + env: "", + expected: "folderset", + }, + { + opts: GlobalOptions{File: "folderset"}, + env: "envset", + expected: "folderset", + }, + } + + for _, test := range tests { + os.Setenv(envvar.FilePath, test.env) + received := NewGlobalImpl(&test.opts).FileOrDir() + require.Equalf(t, test.expected, received, "FileOrDir expected %t, received %t", test.expected, received) + } + os.Unsetenv(envvar.FilePath) +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/envvar/const.go new/helmfile-0.161.0/pkg/envvar/const.go --- old/helmfile-0.160.0/pkg/envvar/const.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/envvar/const.go 2024-01-24 02:01:04.000000000 +0100 @@ -6,6 +6,7 @@ SkipInsecureTemplateFunctions = "HELMFILE_SKIP_INSECURE_TEMPLATE_FUNCTIONS" Experimental = "HELMFILE_EXPERIMENTAL" // environment variable for experimental features, expecting "true" lower case Environment = "HELMFILE_ENVIRONMENT" + FilePath = "HELMFILE_FILE_PATH" TempDir = "HELMFILE_TEMPDIR" UpgradeNoticeDisabled = "HELMFILE_UPGRADE_NOTICE_DISABLED" V1Mode = "HELMFILE_V1MODE" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/helmexec/exec.go new/helmfile-0.161.0/pkg/helmexec/exec.go --- old/helmfile-0.160.0/pkg/helmexec/exec.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/helmexec/exec.go 2024-01-24 02:01:04.000000000 +0100 @@ -121,6 +121,12 @@ if err != nil { panic(err) } + + if version.Prerelease() != "" { + logger.Warnf("Helm version %s is a pre-release version. This may cause problems when deploying Helm charts.\n", version) + *version, _ = version.SetPrerelease("") + } + return &execer{ helmBinary: helmBinary, options: options, @@ -210,7 +216,6 @@ return nil } - buffer := bytes.Buffer{} args := []string{ "registry", "login", @@ -232,7 +237,8 @@ args = append(args, "--insecure") } - args = append(args, "--username", username, "--password-stdin", password) + args = append(args, "--username", username, "--password-stdin") + buffer := bytes.Buffer{} buffer.Write([]byte(fmt.Sprintf("%s\n", password))) helm.logger.Info("Logging in to registry") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/helmexec/exec_test.go new/helmfile-0.161.0/pkg/helmexec/exec_test.go --- old/helmfile-0.160.0/pkg/helmexec/exec_test.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/helmexec/exec_test.go 2024-01-24 02:01:04.000000000 +0100 @@ -283,6 +283,43 @@ } } +func Test_RegistryLogin(t *testing.T) { + var buffer bytes.Buffer + logger := NewLogger(&buffer, "debug") + helm := &execer{ + helmBinary: "helm", + version: semver.MustParse("v3.12.0"), + logger: logger, + kubeContext: "dev", + runner: &mockRunner{}, + } + err := helm.RegistryLogin("repo.example.com", "example_user", "example_password", "example_ca", "example_cert", "example_key", true) + expected := `Logging in to registry +exec: helm --kube-context dev registry login repo.example.com --cert-file example_cert --key-file example_key --ca-file example_ca --insecure --username example_user --password-stdin +` + if err != nil { + t.Errorf("unexpected error: %v", err) + } + if buffer.String() != expected { + t.Errorf("helmexec.RegistryLogin()\nactual = %v\nexpect = %v", buffer.String(), expected) + } + + // Test helm version prior to v3.12.0, without support for TLS + buffer.Reset() + helm.version = semver.MustParse("v3.11.0") + + err = helm.RegistryLogin("repo.example.com", "example_user", "example_password", "example_ca", "example_cert", "example_key", true) + expected = `Logging in to registry +exec: helm --kube-context dev registry login repo.example.com --insecure --username example_user --password-stdin +` + if err != nil { + t.Errorf("unexpected error: %v", err) + } + if buffer.String() != expected { + t.Errorf("helmexec.RegistryLogin()\nactual = %v\nexpect = %v", buffer.String(), expected) + } +} + func Test_SyncRelease(t *testing.T) { var buffer bytes.Buffer logger := NewLogger(&buffer, "debug") @@ -769,18 +806,23 @@ exec: helm --kube-context dev pull oci://repo/helm-charts --version 0.14.0 --destination path1 --untar --untardir /tmp/dir `, }, + { + name: "more then v3.7.0 with rc", + helmBin: "helm", + helmVersion: "v3.14.0-rc.1+g69dcc92", + chartName: "repo/helm-charts:0.14.0", + chartPath: "path1", + chartFlags: []string{"--untardir", "/tmp/dir"}, + listResult: `Pulling repo/helm-charts:0.14.0 +exec: helm --kube-context dev pull oci://repo/helm-charts --version 0.14.0 --destination path1 --untar --untardir /tmp/dir +`, + }, } for i := range tests { tt := tests[i] t.Run(tt.name, func(t *testing.T) { buffer.Reset() - helm := &execer{ - helmBinary: tt.helmBin, - version: semver.MustParse(tt.helmVersion), - logger: logger, - kubeContext: "dev", - runner: &mockRunner{}, - } + helm := New(tt.helmBin, HelmExecOptions{}, logger, "dev", &mockRunner{output: []byte(tt.helmVersion)}) err := helm.ChartPull(tt.chartName, tt.chartPath, tt.chartFlags...) if err != nil { t.Errorf("unexpected error: %v", err) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/policy/checker.go new/helmfile-0.161.0/pkg/policy/checker.go --- old/helmfile-0.160.0/pkg/policy/checker.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/policy/checker.go 2024-01-24 02:01:04.000000000 +0100 @@ -116,7 +116,7 @@ preKey := orderKeys[i-1] currentKey := orderKeys[i] if topkeysPriority[preKey] > topkeysPriority[currentKey] { - return runtime.V1Mode, fmt.Errorf("top-level config key %s must be defined before %s in %s", preKey, currentKey, filePath) + return runtime.V1Mode, fmt.Errorf("top-level config key %s must be defined before %s in %s", currentKey, preKey, filePath) } } return false, nil diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/state/chart_dependency.go new/helmfile-0.161.0/pkg/state/chart_dependency.go --- old/helmfile-0.160.0/pkg/state/chart_dependency.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/state/chart_dependency.go 2024-01-24 02:01:04.000000000 +0100 @@ -63,7 +63,10 @@ Repository: url, VersionConstraint: versionConstraint, } - return d.add(dep) + if !d.contains(dep) { + return d.add(dep) + } + return nil } func (d *UnresolvedDependencies) add(dep unresolvedChartDependency) error { @@ -77,6 +80,22 @@ return nil } +// contains checks if the UnresolvedDependencies contains the specified unresolvedChartDependency. +// It returns true if the dependency is found, otherwise it returns false. +// fix 'more than one dependency with name or alias "raw"' error since helm v3.14.0 +func (d *UnresolvedDependencies) contains(dep unresolvedChartDependency) bool { + deps := d.deps[dep.ChartName] + if deps == nil { + return false + } + for _, existDep := range deps { + if existDep.ChartName == dep.ChartName { + return true + } + } + return false +} + func (d *UnresolvedDependencies) ToChartRequirements() *ChartRequirements { deps := []unresolvedChartDependency{} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/state/chart_dependency_test.go new/helmfile-0.161.0/pkg/state/chart_dependency_test.go --- old/helmfile-0.160.0/pkg/state/chart_dependency_test.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/state/chart_dependency_test.go 2024-01-24 02:01:04.000000000 +0100 @@ -64,3 +64,71 @@ }) } } + +func TestContains(t *testing.T) { + tests := []struct { + name string + dep unresolvedChartDependency + deps map[string][]unresolvedChartDependency + expected bool + }{ + { + name: "existing dependency with right item", + dep: unresolvedChartDependency{ + ChartName: "abc", + Repository: "oci://localhost:5000/aaa", + VersionConstraint: "0.1.0", + }, + deps: map[string][]unresolvedChartDependency{ + "abc": { + { + ChartName: "abc", + Repository: "oci://localhost:5000/aaa", + VersionConstraint: "0.1.0", + }, + }, + }, + expected: true, + }, + { + name: "existing dependency with empty item", + dep: unresolvedChartDependency{ + ChartName: "ghi", + Repository: "oci://localhost:5000/aaa", + VersionConstraint: "0.1.0", + }, + deps: map[string][]unresolvedChartDependency{ + "ghi": {}, + }, + expected: false, + }, + { + name: "non-existing dependency", + dep: unresolvedChartDependency{ + ChartName: "def", + Repository: "oci://localhost:5000/bbb", + VersionConstraint: "0.2.0", + }, + deps: map[string][]unresolvedChartDependency{ + "abc": { + { + ChartName: "abc", + Repository: "oci://localhost:5000/aaa", + VersionConstraint: "0.1.0", + }, + }, + }, + expected: false, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + d := &UnresolvedDependencies{ + deps: tt.deps, + } + actual := d.contains(tt.dep) + require.Equal(t, tt.expected, actual) + }) + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/state/state.go new/helmfile-0.161.0/pkg/state/state.go --- old/helmfile-0.160.0/pkg/state/state.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/state/state.go 2024-01-24 02:01:04.000000000 +0100 @@ -7,6 +7,7 @@ "errors" "fmt" "io" + "net/url" "os" "path/filepath" "regexp" @@ -1123,19 +1124,16 @@ // // If exists, it will also patch resources by json patches, strategic-merge patches, and injectors. func (st *HelmState) PrepareCharts(helm helmexec.Interface, dir string, concurrency int, helmfileCommand string, opts ChartPrepareOptions) (map[PrepareChartKey]string, []error) { - var selected []ReleaseSpec - - if len(st.Selectors) > 0 { - var err error - - // This and releasesNeedCharts ensures that we run operations like helm-dep-build and prepare-hook calls only on - // releases that are (1) selected by the selectors and (2) to be installed. - selected, err = st.GetSelectedReleases(opts.IncludeTransitiveNeeds) + if !opts.SkipResolve { + updated, err := st.ResolveDeps() if err != nil { return nil, []error{err} } - } else { - selected = st.Releases + *st = *updated + } + selected, err := st.GetSelectedReleases(opts.IncludeTransitiveNeeds) + if err != nil { + return nil, []error{err} } releases := releasesNeedCharts(selected) @@ -1149,14 +1147,6 @@ jobQueue := make(chan *ReleaseSpec, len(releases)) results := make(chan *chartPrepareResult, len(releases)) - if !opts.SkipResolve { - updated, err := st.ResolveDeps() - if err != nil { - return nil, []error{err} - } - *st = *updated - } - var builds []*chartPrepareResult st.scatterGather( @@ -2204,18 +2194,21 @@ filters = append(filters, f) } for _, r := range releases { - if r.Labels == nil { - r.Labels = map[string]string{} - } - // Let the release name, namespace, and chart be used as a tag - r.Labels["name"] = r.Name - r.Labels["namespace"] = r.Namespace - // Strip off just the last portion for the name stable/newrelic would give newrelic - chartSplit := strings.Split(r.Chart, "/") - r.Labels["chart"] = chartSplit[len(chartSplit)-1] - // Merge CommonLabels into release labels - for k, v := range commonLabels { - r.Labels[k] = v + // Do not add any label without any filter, see #276 + if len(filters) > 0 { + if r.Labels == nil { + r.Labels = map[string]string{} + } + // Let the release name, namespace, and chart be used as a tag + r.Labels["name"] = r.Name + r.Labels["namespace"] = r.Namespace + // Strip off just the last portion for the name stable/newrelic would give newrelic + chartSplit := strings.Split(r.Chart, "/") + r.Labels["chart"] = chartSplit[len(chartSplit)-1] + // Merge CommonLabels into release labels + for k, v := range commonLabels { + r.Labels[k] = v + } } var filterMatch bool for _, f := range filters { @@ -3200,6 +3193,18 @@ return output, nil } +func hideChartCredentials(chartCredentials string) (string, error) { + u, err := url.Parse(chartCredentials) + if err != nil { + return "", err + } + if u.User != nil { + u.User = url.UserPassword("---", "---") + } + modifiedURL := u.String() + return modifiedURL, nil +} + // DisplayAffectedReleases logs the upgraded, deleted and in error releases func (ar *AffectedReleases) DisplayAffectedReleases(logger *zap.SugaredLogger) { if ar.Upgraded != nil && len(ar.Upgraded) > 0 { @@ -3211,7 +3216,12 @@ ) tbl.Separator = " " for _, release := range ar.Upgraded { - err := tbl.AddRow(release.Name, release.Chart, release.installedVersion, release.duration.Round(time.Second)) + modifiedChart, modErr := hideChartCredentials(release.Chart) + if modErr != nil { + logger.Warn("Could not modify chart credentials, %v", modErr) + continue + } + err := tbl.AddRow(release.Name, modifiedChart, release.installedVersion, release.duration.Round(time.Second)) if err != nil { logger.Warn("Could not add row, %v", err) } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/state/state_test.go new/helmfile-0.161.0/pkg/state/state_test.go --- old/helmfile-0.160.0/pkg/state/state_test.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/state/state_test.go 2024-01-24 02:01:04.000000000 +0100 @@ -3455,3 +3455,25 @@ }) } } + +func TestHideChartURL(t *testing.T) { + tests := []struct { + input string + expected string + }{ + {"http://username:passw...@example.com/", "http://---:---@example.com/"}, + {"http://example.com@", "http://---:---@"}, + {"https://username:passw...@example.com/", "https://---:---@example.com/"}, + {"https://username:@passw...@example.com/", "https://---:---@example.com/"}, + {"https://username::passw...@example.com/", "https://---:---@example.com/"}, + {"https://username:ht...@example.com/", "https://---:---@example.com/"}, + {"https://username:htt...@example.com/", "https://---:---@example.com/"}, + {"https://example.com/", "https://example.com/"}, + } + for _, test := range tests { + result, _ := hideChartCredentials(test.input) + if result != test.expected { + t.Errorf("For input '%s', expected '%s', but got '%s'", test.input, test.expected, result) + } + } +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/pkg/tmpl/context_tmpl.go new/helmfile-0.161.0/pkg/tmpl/context_tmpl.go --- old/helmfile-0.160.0/pkg/tmpl/context_tmpl.go 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/pkg/tmpl/context_tmpl.go 2024-01-24 02:01:04.000000000 +0100 @@ -87,17 +87,6 @@ tmpl = tmpl.Option("missingkey=error") } - tpls, err := c.helperTPLs() - if err != nil { - return nil, err - } - for _, tpl := range tpls { - tmpl, err = tmpl.Parse(tpl.content) - if err != nil { - return nil, fmt.Errorf("failed to parse helper template %s: %v", tpl.name, err) - } - } - includedNames := make(map[string]int) // Add the 'include' function here so we can close over t. @@ -116,6 +105,18 @@ return buf.String(), err } tmpl.Funcs(funcMap) + + tpls, err := c.helperTPLs() + if err != nil { + return nil, err + } + for _, tpl := range tpls { + tmpl, err = tmpl.Parse(tpl.content) + if err != nil { + return nil, fmt.Errorf("failed to parse helper template %s: %v", tpl.name, err) + } + } + return tmpl, nil } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/config.yaml new/helmfile-0.161.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/config.yaml --- old/helmfile-0.160.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/config.yaml 1970-01-01 01:00:00.000000000 +0100 +++ new/helmfile-0.161.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/config.yaml 2024-01-24 02:01:04.000000000 +0100 @@ -0,0 +1,6 @@ +localChartRepoServer: + enabled: true + port: 18083 +chartifyTempDir: temp1 +helmfileArgs: +- template diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/input.yaml new/helmfile-0.161.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/input.yaml --- old/helmfile-0.160.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/input.yaml 1970-01-01 01:00:00.000000000 +0100 +++ new/helmfile-0.161.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/input.yaml 2024-01-24 02:01:04.000000000 +0100 @@ -0,0 +1,28 @@ +repositories: +- name: myrepo + url: http://localhost:18083/ + +--- +lockFilePath: test-lock-file + +releases: +- name: raw + chart: myrepo/raw + strategicMergePatches: + - apiVersion: v1 + kind: ConfigMap + metadata: + name: foo + data: + foo: baz + values: + - templates: + - | + chartVersion: {{`{{ .Chart.Version }}`}} + apiVersion: v1 + kind: ConfigMap + metadata: + name: foo + data: + foo: bar + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/output.yaml new/helmfile-0.161.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/output.yaml --- old/helmfile-0.160.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/output.yaml 1970-01-01 01:00:00.000000000 +0100 +++ new/helmfile-0.161.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/output.yaml 2024-01-24 02:01:04.000000000 +0100 @@ -0,0 +1,14 @@ +Adding repo myrepo http://localhost:18083/ +"myrepo" has been added to your repositories + +Templating release=raw, chart=$WD/temp1/raw/raw +--- +# Source: raw/templates/patched_resources.yaml +apiVersion: v1 +chartVersion: 0.0.1 +data: + foo: baz +kind: ConfigMap +metadata: + name: foo + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/test-lock-file new/helmfile-0.161.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/test-lock-file --- old/helmfile-0.160.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/test-lock-file 1970-01-01 01:00:00.000000000 +0100 +++ new/helmfile-0.161.0/test/e2e/template/helmfile/testdata/snapshot/issue_1229_template_strategic_merge_with_lockfile/test-lock-file 2024-01-24 02:01:04.000000000 +0100 @@ -0,0 +1,7 @@ +version: 0.0.0-dev +dependencies: + - name: raw + repository: http://localhost:18083/ + version: 0.0.1 +digest: sha256:5401817b653c4eeb186cbfbb8d77dda6b72f84a548fc9cd128cbd478d5b2e705 +generated: "2022-10-12T20:17:15.98786845+03:00" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/integration/run.sh new/helmfile-0.161.0/test/integration/run.sh --- old/helmfile-0.160.0/test/integration/run.sh 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/test/integration/run.sh 2024-01-24 02:01:04.000000000 +0100 @@ -26,7 +26,7 @@ export HELM_HOME="${HELM_DATA_HOME}" export HELM_PLUGINS="${HELM_DATA_HOME}/plugins" export HELM_CONFIG_HOME="${helm_dir}/config" -HELM_DIFF_VERSION="${HELM_DIFF_VERSION:-3.8.1}" +HELM_DIFF_VERSION="${HELM_DIFF_VERSION:-3.9.2}" HELM_SECRETS_VERSION="${HELM_SECRETS_VERSION:-3.15.0}" export GNUPGHOME="${PWD}/${dir}/.gnupg" export SOPS_PGP_FP="B2D6D7BBEC03B2E66571C8C00AD18E16CFDEF700" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/integration/test-cases/happypath/input/environment.values.yaml new/helmfile-0.161.0/test/integration/test-cases/happypath/input/environment.values.yaml --- old/helmfile-0.160.0/test/integration/test-cases/happypath/input/environment.values.yaml 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/test/integration/test-cases/happypath/input/environment.values.yaml 2024-01-24 02:01:04.000000000 +0100 @@ -1,3 +1,5 @@ mysecret: MYSECRET raw2: enabled: false +release-disabled: + enabled: false diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/integration/test-cases/happypath/input/happypath.yaml new/helmfile-0.161.0/test/integration/test-cases/happypath/input/happypath.yaml --- old/helmfile-0.160.0/test/integration/test-cases/happypath/input/happypath.yaml 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/test/integration/test-cases/happypath/input/happypath.yaml 2024-01-24 02:01:04.000000000 +0100 @@ -54,3 +54,20 @@ values: - mysecret: {{ .Environment.Values.mysecret }} - values.yaml + + - name: release-disabled + chart: ../../../charts/helmx + namespace: release-disabled + condition: release-disabled.enabled + values: + - values-not-found.yaml + jsonPatches: + - target: + version: v1 + kind: ConfigMap + name: release-name + patch: + - op: add + path: /metadata/annotations + value: + foo: bar diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/integration/test-cases/include-template-func/input/_helpers.tpl new/helmfile-0.161.0/test/integration/test-cases/include-template-func/input/_helpers.tpl --- old/helmfile-0.160.0/test/integration/test-cases/include-template-func/input/_helpers.tpl 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/test/integration/test-cases/include-template-func/input/_helpers.tpl 2024-01-24 02:01:04.000000000 +0100 @@ -1,3 +1,3 @@ {{- define "echo" -}} -{{ .Echo }} +{{ .Echo | trim }} {{- end }} \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/integration/test-cases/include-template-func/input/nested/_helpers.tpl new/helmfile-0.161.0/test/integration/test-cases/include-template-func/input/nested/_helpers.tpl --- old/helmfile-0.160.0/test/integration/test-cases/include-template-func/input/nested/_helpers.tpl 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/test/integration/test-cases/include-template-func/input/nested/_helpers.tpl 2024-01-24 02:01:04.000000000 +0100 @@ -1,3 +1,3 @@ {{- define "echo" -}} -nested-{{ .Echo }} +nested-{{ .Echo | trim }} {{- end }} \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/helmfile-0.160.0/test/integration/test-cases/include-template-func/input/values/_helpers.tpl new/helmfile-0.161.0/test/integration/test-cases/include-template-func/input/values/_helpers.tpl --- old/helmfile-0.160.0/test/integration/test-cases/include-template-func/input/values/_helpers.tpl 2023-12-22 22:36:48.000000000 +0100 +++ new/helmfile-0.161.0/test/integration/test-cases/include-template-func/input/values/_helpers.tpl 2024-01-24 02:01:04.000000000 +0100 @@ -1,3 +1,3 @@ {{- define "echo" -}} -{{ .Echo }} +{{ .Echo | trim }} {{- end }} \ No newline at end of file ++++++ vendor.tar.gz ++++++ /work/SRC/openSUSE:Factory/helmfile/vendor.tar.gz /work/SRC/openSUSE:Factory/.helmfile.new.1815/vendor.tar.gz differ: char 5, line 1