diff --git a/.github/workflows/lint-test-chart.yaml b/.github/workflows/lint-test-chart.yaml index ce8eb9144..27fd2880c 100644 --- a/.github/workflows/lint-test-chart.yaml +++ b/.github/workflows/lint-test-chart.yaml @@ -31,15 +31,6 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} version: latest - - name: Set-up Artifact Hub CLI - run: | - set -euo pipefail - curl -Lo /tmp/ah.tar.gz https://github.com/artifacthub/hub/releases/download/v1.11.0/ah_1.11.0_linux_amd64.tar.gz - tar -xzvf /tmp/ah.tar.gz --directory /tmp - mv /tmp/ah /usr/local/bin/ah - chmod +x /usr/local/bin/ah - rm -f /tmp/ah.tar.gz - - name: Set-up chart-testing uses: helm/chart-testing-action@e6669bcd63d7cb57cb4380c33043eebe5d111992 # v2.6.1 @@ -49,25 +40,50 @@ jobs: changed="$(ct list-changed)" if [[ -n "${changed}" ]] then - echo "changed=${{ toJSON(true) }}" >> $GITHUB_OUTPUT + echo "changed=true" >> "${GITHUB_OUTPUT}" else - echo "changed=${{ toJSON(false) }}" >> $GITHUB_OUTPUT + echo "changed=false" >> "${GITHUB_OUTPUT}" fi + - name: Get chart version + id: chart_version + if: steps.changes.outputs.changed == 'true' + uses: mikefarah/yq@dd648994340a5d03225d97abf19c9bf1086c3f07 # v4.40.5 + with: + cmd: yq eval '.version' './charts/metrics-server/Chart.yaml' + + - name: Get changelog entry + if: steps.changes.outputs.changed == 'true' + uses: mindsers/changelog-reader-action@b97ce03a10d9bdbb07beb491c76a5a01d78cd3ef # v2.2.2 + with: + path: charts/metrics-server/CHANGELOG.md + version: ${{ steps.chart_version.outputs.version }} + + - name: Set-up Artifact Hub CLI + if: steps.changes.outputs.changed == 'true' + uses: action-stars/install-tool-from-github-release@b21a01813213cbbf482eeceda07ad03b41b754d1 # v0.2.1 + with: + github_token: ${{ github.token }} + owner: artifacthub + repository: hub + name: ah + check_command: ah version + version: latest + - name: Run Artifact Hub lint - if: fromJSON(steps.changes.outputs.changed) + if: steps.changes.outputs.changed == 'true' run: ah lint --kind helm || exit 1 - name: Run chart-testing lint - if: fromJSON(steps.changes.outputs.changed) + if: steps.changes.outputs.changed == 'true' run: ct lint --check-version-increment=false - name: Create Kind cluster - if: fromJSON(steps.changes.outputs.changed) + if: steps.changes.outputs.changed == 'true' uses: helm/kind-action@dda0770415bac9fc20092cacbc54aa298604d140 # v1.8.0 with: wait: 120s - name: Run chart-testing install - if: fromJSON(steps.changes.outputs.changed) + if: steps.changes.outputs.changed == 'true' run: ct install diff --git a/.github/workflows/release-chart.yaml b/.github/workflows/release-chart.yaml index 56d46f3e2..34cefd777 100644 --- a/.github/workflows/release-chart.yaml +++ b/.github/workflows/release-chart.yaml @@ -5,7 +5,7 @@ on: branches: - release-* paths: - - "charts/metrics-server/Chart.yaml" + - charts/metrics-server/Chart.yaml jobs: release: @@ -53,22 +53,39 @@ jobs: if [[ -z "${chart_version_match}" ]] || [[ -z "${app_version_match}" ]] then - echo "continue=${{ toJSON(false) }}" >> $GITHUB_OUTPUT + echo "continue=false" >> $GITHUB_OUTPUT else - echo "continue=${{ toJSON(true) }}" >> $GITHUB_OUTPUT + echo "continue=true" >> $GITHUB_OUTPUT fi - name: Set-up Helm - if: fromJSON(steps.check_can_release.outputs.continue) + if: steps.check_can_release.outputs.continue == 'true' uses: azure/setup-helm@5119fcb9089d432beecbf79bb2c7915207344b78 # v3.5 with: token: ${{ secrets.GITHUB_TOKEN }} version: latest + - name: Get CHANGELOG entry + id: changelog_reader + if: steps.check_can_release.outputs.continue == 'true' + uses: mindsers/changelog-reader-action@b97ce03a10d9bdbb07beb491c76a5a01d78cd3ef # v2.2.2 + with: + path: charts/metrics-server/CHANGELOG.md + version: ${{ steps.chart_version.outputs.version }} + + - name: Create release notes + if: steps.check_can_release.outputs.continue == 'true' + run: | + set -euo pipefail + cat <<"EOF" > charts/metrics-server/RELEASE.md + ${{ steps.changelog_reader.outputs.changes }} + EOF + - name: Run chart-releaser - if: fromJSON(steps.check_can_release.outputs.continue) + if: steps.check_can_release.outputs.continue == 'true' uses: helm/chart-releaser-action@a917fd15b20e8b64b94d9158ad54cd6345335584 # v1.6.0 env: CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}" CR_RELEASE_NAME_TEMPLATE: "metrics-server-helm-chart-{{ .Version }}" + CR_RELEASE_NOTES_FILE: RELEASE.md CR_MAKE_RELEASE_LATEST: false diff --git a/charts/metrics-server/CHANGELOG.md b/charts/metrics-server/CHANGELOG.md new file mode 100644 index 000000000..a14d16a07 --- /dev/null +++ b/charts/metrics-server/CHANGELOG.md @@ -0,0 +1,142 @@ +# Metrics Server Helm Chart Changelog + +> [!NOTE] +> All notable changes to this project will be documented in this file; the format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + + + +## [UNRELEASED] + +## [3.12.0] - TBC + +### Changed + +- Updated the _Metrics Server_ OCI image to [v0.7.0](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.7.0). ([#1414](https://github.com/kubernetes-sigs/metrics-server/pull/1414)) [@stevehipwell](https://github.com/stevehipwell) +- Updated the _addon-resizer_ OCI image to [v1.8.20](https://github.com/kubernetes/autoscaler/releases/tag/addon-resizer-1.8.20). ([#1414](https://github.com/kubernetes-sigs/metrics-server/pull/1414)) [@stevehipwell](https://github.com/stevehipwell) + +## [3.11.0] - 2023-08-03 + +### Added + +- Added default _Metrics Server_ resource requests. + +### Changed + +- Updated the _Metrics Server_ OCI image to [v0.6.4](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.6.4). +- Updated the _addon-resizer_ OCI image to [v1.8.19](https://github.com/kubernetes/autoscaler/releases/tag/addon-resizer-1.8.19). + +## [3.10.0] - 2023-04-12 + +### Added + +- Added support for running under PodSecurity restricted. + +### Fixed + +- Fixed `auth-reader` role binding namespace to always use `kube-system`. +- Fixed addon-resizer configuration. +- Fixed container port default not having been updated to `10250`. + +## [3.9.0] - 2023-03-28 + +### Added + +- Added autoscaling support via the addon-resizer. + +### Changed + +- Updated the _Metrics Server_ OCI image to [v0.6.3](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.6.3). + +### Fixed + +- Fixed service labels/annotations. + +## [3.8.4] - 2023-03-06 + +### Changed + +- Changed the image registry location to `registry.k8s.io`. + +## [3.8.3] - 2022-12-08 + +### Added + +- Added support for topologySpreadConstraints. +- Always set resource namespaces explicitly. +- Allow configuring TLS on the APIService. +- Enabled service monitor relabelling. +- Added ability to set the scheduler name. +- Added support for common labels. + +### Changed + +- Updated the _Metrics Server_ OCI image to [v0.6.2](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.6.2). + +## [3.8.2] - 2022-02-23 + +### Changed + +- Changed chart to allow probes to be turned off completely (this is not advised unless you know what you're doing). + +## [3.8.1] - 2022-02-09 + +### Changed + +- Updated the _Metrics Server_ OCI image to [v0.6.1](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.6.1). + +## [3.8.0] - 2022-02-08 + +### Added + +- Added support for unauthenticated access to the /metrics endpoint. +- Added optional _Prometheus Operator_ `ServiceMonitor`. + +### Changed + +- Updated the _Metrics Server_ OCI image to [v0.6.0](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.6.0). + +## [3.7.0] - 2021-11-18 + +### Changed + +- Updated the _Metrics Server_ OCI image to [v0.5.2](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.5.2). + +## [3.6.0] - 2021-10-18 + +### Added + +- Added new `defaultArgs`` value to enable overriding the default arguments. + +### Changed + +- Updated the _Metrics Server_ OCI image to [v0.5.1](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.5.1). + +## [3.5.0] - 2021-10-07 + +### Added + +- Added initial Helm chart release from official repo. + + +[UNRELEASED]: https://github.com/kubernetes-sigs/metrics-server/compare/metrics-server-helm-chart-3.12.0...HEAD +[3.12.0]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.12.0 +[3.11.0]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.11.0 +[3.10.0]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.10.0 +[3.9.0]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.9.0 +[3.8.4]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.8.4 +[3.8.3]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.8.3 +[3.8.2]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.8.2 +[3.8.1]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.8.1 +[3.8.0]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.8.0 +[3.7.0]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.7.0 +[3.6.0]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.6.0 +[3.5.0]: https://github.com/kubernetes-sigs/metrics-server/releases/tag/metrics-server-helm-chart-3.5.0 diff --git a/charts/metrics-server/Chart.yaml b/charts/metrics-server/Chart.yaml index 054f84dfe..d1d2ee228 100644 --- a/charts/metrics-server/Chart.yaml +++ b/charts/metrics-server/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: metrics-server description: Metrics Server is a scalable, efficient source of container resource metrics for Kubernetes built-in autoscaling pipelines. type: application -version: 3.11.0 -appVersion: 0.6.4 +version: 3.12.0 +appVersion: 0.7.0 keywords: - kubernetes - metrics-server @@ -21,11 +21,7 @@ maintainers: url: https://github.com/endrec annotations: artifacthub.io/changes: | - - kind: added - description: "Added default Metrics Server resource requests." - kind: changed - description: "Updated the Metrics Server OCI image to v0.6.3." + description: "Updated the _Metrics Server_ OCI image to [v0.7.0](https://github.com/kubernetes-sigs/metrics-server/releases/tag/v0.7.0)." - kind: changed - description: "Updated the addon resizer OCI image to v1.8.19." - - kind: changed - description: "Changed the default addon resizer nanny resource configuration to match the documented Metrics Server autoscaling values." + description: "Updated the _addon-resizer_ OCI image to [v1.8.20](https://github.com/kubernetes/autoscaler/releases/tag/addon-resizer-1.8.20)." diff --git a/charts/metrics-server/values.yaml b/charts/metrics-server/values.yaml index ae3712f5a..4f6b9219b 100644 --- a/charts/metrics-server/values.yaml +++ b/charts/metrics-server/values.yaml @@ -129,7 +129,7 @@ addonResizer: enabled: false image: repository: registry.k8s.io/autoscaling/addon-resizer - tag: 1.8.19 + tag: 1.8.20 securityContext: allowPrivilegeEscalation: false readOnlyRootFilesystem: true