Skip to content

Releases: stakater/application

v9.0.0

Choose a tag to compare

@github-actions github-actions released this 03 Jun 13:44

Caution

If you are upgrading from v7.x or earlier, apply v8.0.0 first. That release contains its own breaking changes (resource naming standardization, PVC name change) that must be addressed before upgrading to v9.

This release contains breaking changes that modernize the Velero Backup template with new fields and stricter rendering behavior.

Breaking Changes

1. defaultVolumesToRestic deprecated (#436)

defaultVolumesToRestic is now deprecated in favor of defaultVolumesToFsBackup. The old key still works but will be removed in a future release. Migrate your values:

backup:
  # defaultVolumesToRestic: true  # deprecated
  defaultVolumesToFsBackup: true   # use this instead

2. Backup requires Velero API to be available (#436)

The Backup resource is no longer rendered silently when Velero is not installed. If the velero.io/v1 API group is not available in the cluster, the template will fail with an explicit error message instead of rendering a resource that cannot be applied.

3. Optional fields no longer rendered when unset (#436)

snapshotVolumes, storageLocation, and ttl were previously always included in the Backup manifest regardless of whether they were set. They are now conditionally rendered and will be absent from the output when not explicitly configured.

If you rely on these fields being present (e.g., for GitOps diff stability), set them explicitly:

backup:
  snapshotVolumes: true
  storageLocation: default
  ttl: 720h0m0s

4. labelSelector.matchLabels uses selectorLabels (#436)

The Backup labelSelector.matchLabels now uses the standard selectorLabels helper instead of a hardcoded part-of label. If you rely on the previous label selector behavior, verify your backup selection still matches the expected workloads.

Notable Additions

New Velero backup fields are now supported:

  • defaultVolumesToFsBackup
  • snapshotMoveData
  • csiSnapshotTimeout
  • datamover
  • itemOperationTimeout
  • volumeSnapshotLocations
  • includedNamespaceScopedResources
  • excludedNamespaceScopedResources
  • orderedResources

What's Changed

  • feat(backup)!: add support for new velero fields by @Copilot in #436

Full Changelog: v8.2.0...v9.0.0

v8.2.0

Choose a tag to compare

@github-actions github-actions released this 03 Jun 13:24

What's Changed

  • chore(deps): update dependency prek to v0.4.1 by @renovate[bot] in #537
  • chore(deps): update docker/login-action digest to 650006c by @renovate[bot] in #540
  • chore(deps): update ad-m/github-push-action action to v1.2.0 by @renovate[bot] in #541
  • chore(deps): update ad-m/github-push-action action to v1.3.0 by @renovate[bot] in #542
  • chore(deps): update dependency prek to v0.4.2 by @renovate[bot] in #543
  • chore(deps): update dependency prek to v0.4.3 by @renovate[bot] in #544
  • chore(renovate): ignore unresolved placeholder image dependency by @Copilot in #545
  • chore(deps): update bridgecrewio/checkov-action action to v12.3103.0 - autoclosed by @renovate[bot] in #546
  • chore(deps): update bridgecrewio/checkov-action action to v12.3104.0 by @renovate[bot] in #548
  • feat(schema): use comma-separated helm-docs type hints by @aslafy-z in #539
  • chore(deps): update actions/checkout digest to df4cb1c by @renovate[bot] in #549

Full Changelog: v8.1.2...v8.2.0

v8.1.2

Choose a tag to compare

@github-actions github-actions released this 14 May 22:52

What's Changed

  • fix(schema): accept IntOrString and null for targetPort and pdb fields by @aslafy-z in #536

Full Changelog: v8.1.1...v8.1.2

v8.1.1

Choose a tag to compare

@github-actions github-actions released this 14 May 22:40

What's Changed

  • chore(test): stabilize snapshot by overriding chart version by @aslafy-z in #535
  • fix(schema): accept string for service targetPort by @aslafy-z in #534

Full Changelog: v8.1.0...v8.1.1

v8.1.0

Choose a tag to compare

@github-actions github-actions released this 14 May 17:49

Highlights

  • JSON Schema for Helm values is now shipped with the chart, enabling IDE autocompletion and validation.
  • Extra objects rendering is now deterministic thanks to sorted map keys.

What's Changed

Full Changelog: v8.0.0...v8.1.0

v8.0.0

Choose a tag to compare

@github-actions github-actions released this 13 May 19:12

Caution

If you are upgrading from v6.x or earlier, apply v7.0.0 first. That release contains its own breaking changes (service account binding, part-of label removal, envFrom format, pod security context) that must be addressed before upgrading to v8.

This release contains breaking changes that standardize resource naming across all templates.

Breaking Changes

1. Resource names now use the release name as default prefix (#466)

The application.name helper now defaults to .Release.Name instead of .Chart.Name when applicationName is not set. All resource names are generated using a consistent printf | trunc 63 | trimSuffix "-" pattern.

If you were relying on the chart name as the default, set applicationName explicitly:

applicationName: application

2. PVC name change — risk of data loss

If applicationName was not set, the PVC name changes from <chartName>-data to <releaseName>-data. This will create a new PVC and orphan the existing one, causing data loss.

To prevent drift, set persistence.name to your current PVC name before upgrading:

persistence:
  name: <your-current-pvc-name>

3. Resources now prefixed with release/application name

Resources that previously used standalone or value-only names are now prefixed:

Resource Before After
CronJob <jobKey> <name>-<jobKey>
Job <jobKey> <name>-<jobKey>
GrafanaDashboard <dashboardKey> <name>-<dashboardKey>
SecretProviderClass <spcName> <name>-<spcName>
Backup <applicationName>-backup <name>-backup

4. Redundant type suffixes removed

Resource Before After
ClusterRole <name>-cr-<role> <name>-<role>
ClusterRoleBinding <name>-crb-<role> <name>-<role>
Role <name>-role-<role> <name>-<role>
RoleBinding <name>-rolebinding-<role> <name>-<role>
ServiceMonitor <name>-svc-monitor <name>

What's Changed

  • feat!: prefix all resource names with release name by @aslafy-z in #466

Full Changelog: v7.0.0...v8.0.0

v7.0.0

Choose a tag to compare

@github-actions github-actions released this 13 May 18:39

Caution

This is a major release with four breaking changes. Review each section carefully before upgrading. If you are also upgrading to v8, apply this release first.

This release contains four breaking changes that align CronJob and Job templates with existing Deployment conventions, tighten security defaults, and remove deprecated features.

Breaking Changes

1. Service account binding harmonized (#363)

  • rbac.serviceAccount.enabled renamed to rbac.serviceAccount.create

  • automountServiceAccountToken now defaults to false for Deployments, CronJobs, and Jobs. If your workloads call the Kubernetes API, explicitly set automountServiceAccountToken: true on the relevant resource.

  • ServiceAccount name resolution is now consistent across all resource types via a new application.serviceAccountName helper:

    create name Result
    true "" <release-name>
    true "foo" "foo"
    false "" "default"
    false "bar" "bar"

2. Default part-of label removed (#455)

app.kubernetes.io/part-of is no longer added by default. If you rely on this label, set partOfOverride explicitly:

partOfOverride: my-application

3. List-based envFrom removed for Jobs and CronJobs (#518)

The deprecated list-based envFrom format (raw Kubernetes list) is removed. Use the dict-based format:

cronJob:
  jobs:
    example:
      envFrom:
        my-secret:
          type: secret
          name: my-secret

4. Pod security context support for CronJob and Job (#498)

cronJob.jobs.<name>.securityContext now maps to the pod-level security context. The previous container-level key is renamed to containerSecurityContext:

cronJob:
  jobs:
    example:
      containerSecurityContext:  # was securityContext
        runAsNonRoot: true
      securityContext:           # new, pod-level
        fsGroup: 20000

Job templates gain containerSecurityContext support (additive, no migration needed).

What's Changed

  • chore(deps): update dependency helm to v4 by @renovate[bot] in #520
  • chore(deps): update ad-m/github-push-action action to v1 by @renovate[bot] in #519
  • feat!: harmonize service account binding by @aslafy-z in #363
  • feat!: drop default part-of label, require explicit override by @aslafy-z in #455
  • feat!: remove deprecated list-based envFrom for Jobs and CronJobs by @aslafy-z in #518
  • feat!: add pod security context support to CronJob and Job by @alex1989hu in #498

Full Changelog: v6.18.0...v7.0.0

v6.18.0

Choose a tag to compare

@github-actions github-actions released this 13 May 18:09

What's Changed

New Contributors

Full Changelog: v6.17.1...v6.18.0

v6.17.1

Choose a tag to compare

@github-actions github-actions released this 13 May 17:14

What's Changed

  • chore(deps): update dependency ubi:helm-unittest/helm-unittest to v1.1.0 by @renovate[bot] in #517
  • chore(deps): update dependency prek to v0.3.13 by @renovate[bot] in #516
  • fix(httpRoute): port property to render as integer instead of string by @Copilot in #488

Full Changelog: v6.17.0...v6.17.1

v6.17.0

Choose a tag to compare

@github-actions github-actions released this 13 May 16:49

What's Changed

  • feat: add enableServiceLinks support to Deployment by @alex1989hu in #476
  • chore(deps): update bridgecrewio/checkov-action action to v12.3088.0 by @renovate[bot] in #484
  • chore(deps): update bridgecrewio/checkov-action action to v12.3100.0 by @renovate[bot] in #494
  • chore(deps): update bridgecrewio/checkov-action action to v12.3101.0 by @renovate[bot] in #503
  • ci: refactor CI/CD workflows by @aslafy-z in #504
  • ci: replace python3 YAML check with yamllint and fix template lint issues by @aslafy-z in #510
  • chore(deps): update softprops/action-gh-release action to v3 by @renovate[bot] in #501
  • chore(deps): update stefanprodan/helm-gh-pages digest to 0ad2bb3 by @renovate[bot] in #509
  • chore(deps): update ad-m/github-push-action digest to d91a481 by @renovate[bot] in #508
  • chore: setup mise-en-place by @aslafy-z in #450
  • chore(deps): update actions/checkout action to v6 by @renovate[bot] in #512
  • chore(deps): update docker.io/nginx docker tag to v1.30.0 by @renovate[bot] in #511
  • chore(config): migrate Renovate config by @renovate[bot] in #513
  • feat: support envFrom from external secrets and configmaps for Deployments, Jobs, and CronJobs by @Copilot in #491
  • chore(deps): update dependency helm to v3.20.2 by @renovate[bot] in #515
  • chore(deps): pin busybox docker tag to 1487d0a by @renovate[bot] in #514

Full Changelog: v6.16.1...v6.17.0