Skip to content

Releases: giantswarm/cluster-vsphere

v0.54.0

25 Jun 10:35
dcd1eeb
Compare
Choose a tag to compare

Added

  • Add .global.connectivity.localRegistryCache Helm values and support for in-cluster, local registry cache mirrors in containerd configuration.
    In such cases, the registry should be exposed via node ports and containerd connects via that port at 127.0.0.1 via HTTP (only allowed for this single use case).

Fixed

  • Fixed containerd config file generation when multiple registries are set with authentication

Removed

  • Stop setting defaultPolicies.enabled=true in cilium-app when internal.ciliumNetworkPolicy.enabled=true after all clusters are migrated.
  • Stop setting extraPolicies.remove=true in cilium-app after all clusters are migrated.

v0.53.1

09 Jun 10:58
9673828
Compare
Choose a tag to compare

Fixed

  • Refer the API group (ipam.cluster.x-k8s.io) of cluster-api-ipam-provider-in-cluster for ipaddresses CRs to not use the built-in Kubernetes group (networking.k8s.io/v1alpha1).

v0.53.0

06 Jun 09:22
c8309ac
Compare
Choose a tag to compare

Changed

  • Remove kube-vip values to rely on the defaults of cloud-provider-vsphere-app.
  • Bump k8s version from 1.26.15 to 1.27.14.

v0.52.0

23 May 18:35
a9a39a1
Compare
Choose a tag to compare

Changed

  • Normalise JSON schema.
  • Remove unused values from schema.
  • Update example manifests post-refactor.
  • Improve values schema with definitions to make it more DRY.
  • ❗Bump k8s version from 1.25.16 to 1.26.15. ❗

v0.51.0

16 May 19:31
84fa882
Compare
Choose a tag to compare

Breaking change.

How to migrate values

Using yq, migrate to the new values layout with the following command:

#!/bin/bash
yq eval --inplace 'with(select(.metadata != null);          .global.metadata = .metadata) |
    with(select(.clusterDescription != null);               .global.metadata.description = .clusterDescription) |
    with(select(.organization != null);                     .global.metadata.organization = .organization) |
    with(select(.clusterLabels != null);                    .global.metadata.labels = .clusterLabels) |
    with(select(.servicePriority != null);                  .global.metadata.servicePriority = .servicePriority) |
    with(select(.connectivity != null);                     .global.connectivity = .connectivity) |
    with(select(.osUsers != null);                          .global.connectivity.shell.osUsers = .osUsers) |
    with(select(.sshTrustedUserCAKeys != null);             .global.connectivity.shell.sshTrustedUserCAKeys = .sshTrustedUserCAKeys) |
    with(select(.proxy != null);                            .global.connectivity.proxy = .proxy) |
    with(select(.baseDomain != null);                       .global.connectivity.baseDomain = .baseDomain) |
    with(select(.controlPlane != null);                     .global.controlPlane = .controlPlane) |
    with(select(.oidc != null);                             .global.controlPlane.oidc = .oidc) |
    with(select(.nodePools != null);                        .global.nodePools = .nodePools) |
    with(select(.vcenter != null);                          .global.providerSpecific.vcenter = .vcenter) |
    with(select(.cluster.kubernetesVersion != null);        .internal.kubernetesVersion = .cluster.kubernetesVersion) |
    with(select(.cluster.enableEncryptionProvider != null); .internal.enableEncryptionProvider = .cluster.enableEncryptionProvider) |
    with(select(.controllerManager.featureGates != null);   .internal.controllerManager.featureGates = (.controllerManager.featureGates | split(","))) |
    with(select(.apiServer.enableAdmissionPlugins != null); .internal.apiServer.enableAdmissionPlugins = (.apiServer.enableAdmissionPlugins | split(","))) |
    with(select(.apiServer.featureGates != null);           .internal.apiServer.featureGates = (.apiServer.featureGates | split(","))) |
    with(select(.apiServer.certSANs != null);               .internal.certSANs = .apiServer.certSANs) |
    with(select(.kubectlImage != null);                     .internal.kubectlImage = .kubectlImage) |
    with(select(.nodeClasses != null);                      .global.nodeClasses = .nodeClasses) |

    del(.metadata) |
    del(.clusterDescription) |
    del(.organization) |
    del(.clusterLabels) |
    del(.servicePriority) |
    del(.connectivity) |
    del(.osUsers) |
    del(.sshTrustedUserCAKeys) |
    del(.proxy) |
    del(.baseDomain) |
    del(.controlPlane) |
    del(.oidc) |
    del(.nodePools) |
    del(.vcenter) |
    del(.cluster) |
    del(.controllerManager) |
    del(.apiServer) |
    del(.kubectlImage) |
    del(.nodeClasses)' values.yaml

Changed

  • Move Helm values property .Values.metadata to .Values.global.metadata.
  • Move Helm values property .Values.clusterDescription to .Values.global.metadata.description.
  • Move Helm values property .Values.organization to .Values.global.metadata.organization.
  • Move Helm values property .Values.clusterLabels to .Values.global.metadata.labels.
  • Move Helm values property .Values.servicePriority to .Values.global.metadata.servicePriority.
  • Move Helm values property .Values.connectivity to .Values.global.connectivity.
  • Move Helm values property .Values.proxy to .Values.global.connectivity.proxy.
  • Move Helm values property .Values.osUsers to .Values.global.connectivity.shell.osUsers.
  • Move Helm values property .Values.sshTrustedUserCAKeys to .Values.global.connectivity.shell.sshTrustedUserCAKeys.
  • Move Helm values property .Values.baseDomain to .Values.global.connectivity.baseDomain.
  • Move Helm values property .Values.controlPlane to .Values.global.controlPlane.
  • Move Helm values property .Values.oidc to .Values.global.controlPlane.oidc.
  • Move Helm values property .Values.nodePools to .Values.global.nodePools.
  • Move Helm values property .Values.vcenter to .Values.global.providerSpecific.vcenter.
  • Move Helm values property .Values.controllerManager.featureGates to .Values.internal.controllerManager.featureGates and convert from string to array.
  • Move Helm values property .Values.apiServer.enableAdmissionPlugins to .Values.internal.apiServer.enableAdmissionPlugins and convert from string to array.
  • Move Helm values property .Values.apiServer.featureGates to .Values.internal.apiServer.featureGates and convert from string to array.
  • Move Helm values property .Values.apiServer.certSANs to .Values.internal.apiServer.certSANs.
  • Move Helm values property .Values.kubectlImage to .Values.internal.kubectlImage.
  • Move Helm values property .Values.nodeClasses to .Values.global.nodeClasses.

v0.50.0

23 Apr 08:36
51b1e69
Compare
Choose a tag to compare

Changed

  • No major change in v0.50.0, except that we are moving to a release based upgrade cycle with Kubernetes version, VM template and other defaults are set in the chart values. They shouldn't be overridden as they are managed by Giant Swarm.
  • Bump kube-vip to v0.8.0.

v0.10.3

08 Apr 09:42
7e0ca24
Compare
Choose a tag to compare

Changed

  • Move extraPolicies from cilium-app to network-policies-app.
  • Add svc-lb-ips as default IP Pool for service of type load balancer in workload clusters.

v0.10.2

02 Apr 15:31
77f32ca
Compare
Choose a tag to compare

Changed

  • Pull kube-vip image from Azure CR.
  • Update teleport node labels - add ins= label and remove cluster= label condition check, such that MC nodes have this label.

v0.10.1

07 Mar 15:33
201ba20
Compare
Choose a tag to compare

Changed

  • Bump Cilium to 0.21.0.

v0.10.0

28 Feb 11:19
28f2d93
Compare
Choose a tag to compare

Added

  • Add CiliumNetworkPolicies for the cleanup job.
  • Add flags to disable PSPs.
  • Add global.metadata.preventDeletion to add the deletion prevention label to Cluster resources.

Changed

  • Switch container registry to gsoci.azurecr.io.
  • Adapt cleanup hook for cluster policies.