1321 Commits
Author SHA1 Message Date
panxiao81 c1deb08ad4 feat: 支持按 Pod UID 生成 Agent ID
Signed-off-by: panxiao81 <[email protected]>
spire-0.30.2-ddupan.1
2026-09-17 19:11:14 +00:00
Kevin Fox e5901d68d0 Merge branch 'main' into release spire-0.30.2 2026-09-09 09:55:33 -07:00
Kevin Fox dc689035c7 Bump spire-lib and dependent Helm Chart versions (patch)
* c6381219 feat(gateway): expose gatewayAPI.gateway.infrastructure passthrough (#939)

Signed-off-by: Kevin Fox <[email protected]>
2026-09-08 18:40:52 -07:00
kfox1111andFaisal Memon 90e3518dca Update spire-ha-agent (#936)
* Update spire-ha-agent

Signed-off-by: Kevin Fox <[email protected]>

* Update spire-ha-agent

Signed-off-by: Kevin Fox <[email protected]>

* Update with new features

Signed-off-by: Kevin Fox <[email protected]>

* Updates

Signed-off-by: Kevin Fox <[email protected]>

* Point at release

Signed-off-by: Kevin Fox <[email protected]>

* Fix version

Signed-off-by: Kevin Fox <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
Co-authored-by: Faisal Memon <[email protected]>
2026-09-04 20:34:10 +00:00
kfox1111 2a8c1b63c4 Bottom turtle ha registry tests (#929)
* Bottom turtle ha registry tests

Signed-off-by: Kevin Fox <[email protected]>

* Fix test because of spire-ha-agent

Signed-off-by: Kevin Fox <[email protected]>

* Fix config options

Signed-off-by: Kevin Fox <[email protected]>

* Fix yq issue and log better

Signed-off-by: Kevin Fox <[email protected]>

* Fix some things

Signed-off-by: Kevin Fox <[email protected]>

* Change timeout and fix image

Signed-off-by: Kevin Fox <[email protected]>

* Bump up zot version.

Signed-off-by: Kevin Fox <[email protected]>

* More debugging stuff

Signed-off-by: Kevin Fox <[email protected]>

* More debugging stuff

Signed-off-by: Kevin Fox <[email protected]>

* More fixes

Signed-off-by: Kevin Fox <[email protected]>

* More logging

Signed-off-by: Kevin Fox <[email protected]>

* More logging

Signed-off-by: Kevin Fox <[email protected]>

* More logging

Signed-off-by: Kevin Fox <[email protected]>

* More logging

Signed-off-by: Kevin Fox <[email protected]>

* More logging

Signed-off-by: Kevin Fox <[email protected]>

* Fix test

Signed-off-by: Kevin Fox <[email protected]>

* Log less

Signed-off-by: Kevin Fox <[email protected]>

* Cleanup

Signed-off-by: Kevin Fox <[email protected]>

* Make test less different then real deployment

Signed-off-by: Kevin Fox <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
Signed-off-by: kfox1111 <[email protected]>
2026-09-04 12:50:34 -07:00
kfox1111 bb4c73febf Revert "Bump helm/kind-action from 1.14.0 to 1.15.0" (#944)
This reverts commit c90e639623.

Signed-off-by: Kevin Fox <[email protected]>
2026-09-04 11:03:40 -07:00
kfox1111 5121622ead Revert "Bump k8s.io/apimachinery from 0.36.2 to 0.37.0 in /tests" (#945)
This reverts commit cb18cc3e14.

Signed-off-by: Kevin Fox <[email protected]>
2026-09-04 10:46:12 -07:00
dependabot[bot] cb18cc3e14 Bump k8s.io/apimachinery from 0.36.2 to 0.37.0 in /tests
Bumps [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) from 0.36.2 to 0.37.0.
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.36.2...v0.37.0)

---
updated-dependencies:
- dependency-name: k8s.io/apimachinery
  dependency-version: 0.37.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-09-04 18:37:16 +02:00
dependabot[bot] c90e639623 Bump helm/kind-action from 1.14.0 to 1.15.0
Bumps [helm/kind-action](https://github.com/helm/kind-action) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/helm/kind-action/releases)
- [Commits](https://github.com/helm/kind-action/compare/v1.14.0...v1.15.0)

---
updated-dependencies:
- dependency-name: helm/kind-action
  dependency-version: 1.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-09-04 09:06:03 +02:00
dependabot[bot] ece47796f0 Bump regclient/actions/regctl-installer (#942)
Bumps [regclient/actions/regctl-installer](https://github.com/regclient/actions) from f9ceff9bbbc63cd1008e60cec2b27627eedc7322 to ba687069a65d03e9214808f16f3f0b3933c2048b.
- [Release notes](https://github.com/regclient/actions/releases)
- [Changelog](https://github.com/regclient/actions/blob/main/RELEASE.md)
- [Commits](https://github.com/regclient/actions/compare/f9ceff9bbbc63cd1008e60cec2b27627eedc7322...ba687069a65d03e9214808f16f3f0b3933c2048b)

---
updated-dependencies:
- dependency-name: regclient/actions/regctl-installer
  dependency-version: ba687069a65d03e9214808f16f3f0b3933c2048b
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-03 05:06:01 -07:00
sabsariandClaude Opus 4.8 c638121997 feat(gateway): expose gatewayAPI.gateway.infrastructure passthrough (#939)
Render Gateway spec.infrastructure (labels/annotations) so Gateway API
controllers propagate the metadata onto the provisioned Service/Deployment,
e.g. AWS internal NLB annotations. Purely additive: guarded by `with`, so
the default {} renders no change.

- spire-lib: toYaml passthrough in the shared Gateway helper
- spire, spire-nested: add the values param; regenerate READMEs
- tests/unit: cover the positive passthrough case

Signed-off-by: sabsari <[email protected]>
Co-authored-by: Claude Opus 4.8 <[email protected]>
2026-09-01 05:41:12 -07:00
dependabot[bot] d86f08ff96 Bump github.com/onsi/gomega from 1.42.1 to 1.43.0 in /tests
Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.42.1 to 1.43.0.
- [Release notes](https://github.com/onsi/gomega/releases)
- [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/gomega/compare/v1.42.1...v1.43.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/gomega
  dependency-version: 1.43.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-08-31 09:07:55 +02:00
sabsariandClaude Opus 4.8 85ab0fa5ab Fix spire-server PodMonitor controller-manager port names (#932)
The PodMonitor targeted the port name prom-cm, but controller-manager
containers expose pm-cm (and auto-suffixed/overridable names for external
managers), so their metrics were never scraped. Resolve port names through
a shared helper and enumerate every controller-manager in the PodMonitor.

Signed-off-by: sabsari <[email protected]>
Co-authored-by: Claude Opus 4.8 <[email protected]>
2026-08-30 08:44:56 -07:00
dependabot[bot] cb0f08e53a Bump regclient/actions/regctl-installer
Bumps [regclient/actions/regctl-installer](https://github.com/regclient/actions) from 78eb729dbdb4ef6480e85ff697b4410e22112583 to f9ceff9bbbc63cd1008e60cec2b27627eedc7322.
- [Release notes](https://github.com/regclient/actions/releases)
- [Changelog](https://github.com/regclient/actions/blob/main/RELEASE.md)
- [Commits](https://github.com/regclient/actions/compare/78eb729dbdb4ef6480e85ff697b4410e22112583...f9ceff9bbbc63cd1008e60cec2b27627eedc7322)

---
updated-dependencies:
- dependency-name: regclient/actions/regctl-installer
  dependency-version: f9ceff9bbbc63cd1008e60cec2b27627eedc7322
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-08-26 09:53:38 +02:00
Kevin Fox 752a26565a Merge branch 'main' into release 2026-08-23 06:28:23 -07:00
Kevin Fox 3b4e7a1bd3 Bump spire-lib and dependent Helm Chart versions (patch)
* ab5e5d86 fix(spiffe-oidc-discovery-provider): run under restricted PSA/SCC on OpenShift (#920)

Signed-off-by: Kevin Fox <[email protected]>
2026-08-23 00:11:20 -07:00
Kevin Fox 0824944320 Bump spire-crds and dependent Helm Chart versions (patch)
* b47ab6c1 README.md version match check (#916)

Signed-off-by: Kevin Fox <[email protected]>
2026-08-22 23:50:41 -07:00
kfox1111 8a28a1b94f Update spire to 1.15.3 (#926) 2026-08-21 12:23:46 -07:00
kfox1111 b47ab6c197 README.md version match check (#916)
* README.md version match check

Signed-off-by: Kevin Fox <[email protected]>

* Fix existing version issues

Signed-off-by: Kevin Fox <[email protected]>

* Fix existing version issues

Signed-off-by: Kevin Fox <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
2026-08-21 05:22:55 -07:00
27026e4657 fix(spire): preserve webhook order in patch hooks (#918)
* fix(spire-server): preserve webhook order in patch hooks

Signed-off-by: Christoph Manns <[email protected]>

* test(spire): cover webhook patch order

Signed-off-by: Christoph Manns <[email protected]>

* fix(spire-server): honor effective hook setting

Signed-off-by: Christoph Manns <[email protected]>

* Apply suggestion from @kfox1111

Signed-off-by: kfox1111 <[email protected]>

---------

Signed-off-by: Christoph Manns <[email protected]>
Signed-off-by: kfox1111 <[email protected]>
Signed-off-by: kfox1111 <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-20 12:15:55 -07:00
Michael Munchandkfox1111 1ce42d587a fix(spire-server): support postgres TLS client-certificate (passwordless) auth (#922)
* fix(spire-server): support postgres TLS client-certificate (passwordless) auth

The postgres datastore always injected a password into the connection
string, always created the -dbpw Secret, and always set the DBPW env var,
with no way to use TLS client-certificate (or IAM) authentication. This
forced a dummy password (e.g. "unused") when authenticating with certs.

- Map dataStore.sql.rootCAPath / clientCertPath / clientKeyPath to the
  postgres connection-string options sslrootcert / sslcert / sslkey
  (previously these were mysql-only and rejected for postgres). MySQL keeps
  using the root_ca_path / client_cert_path / client_key_path plugin fields,
  now correctly gated to mysql/aws_mysql only.
- For postgres/aws_postgres, when dataStore.sql.password is empty, omit
  "password=${DBPW}" from the connection string and skip creating the -dbpw
  Secret and the DBPW/RODBPW env vars (mirrors the existing gcp_mysql_sa_iam
  passwordless behavior).
- Add a guard: for postgres, dataStore.sql.password and clientCertPath are
  mutually exclusive.
- Fix a stray tab in the mysql client_key_path config field.
- Update value docs and regenerate the README.

Existing configurations with a password set are unaffected.

Signed-off-by: Michael Munch <[email protected]>

* 🐛 fix(spire-server): keep postgres password when external secret is used

The postgres passwordless path keyed only on an empty password, so
enabling dataStore.sql.externalSecret (or readOnly.externalSecret) with
an empty password dropped the password token from the connection string
and skipped the DBPW/RODBPW env vars, breaking external-secret auth.

- Add shared passwordless predicates that also require external secrets
  to be disabled, evaluated independently for read-write and read-only.
- Use the predicates in datastore-config, secret.yaml, and
  server-resource.yaml so the gating cannot drift.
- Add unit tests for postgres with read-write and read-only external
  secrets plus the cert-auth passwordless case.

Signed-off-by: Michael Munch <[email protected]>

* 🔁 ci: re-trigger checks

Re-run CI; the previous spiffe-step-ssh integration job failed on an
unrelated flaky SSH host-key verification on k8s v1.35.1 (passed on
v1.33.7 and v1.34.3).

Signed-off-by: Michael Munch <[email protected]>

---------

Signed-off-by: Michael Munch <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-20 11:15:26 -07:00
Michael Munchandkfox1111 ab5e5d8677 fix(spiffe-oidc-discovery-provider): run under restricted PSA/SCC on OpenShift (#920)
* fix(spiffe-oidc-discovery-provider): run under restricted PSA/SCC on OpenShift

The OIDC discovery provider does not require any elevated privileges: it
runs fine under OpenShift's built-in restricted-v2 SCC (non-root, no
privilege escalation, all capabilities dropped, RuntimeDefault seccomp,
read-only root filesystem) and mounts only restricted-compatible volumes
(csi, configMap, emptyDir, secret, projected, downwardAPI).

Despite this, on OpenShift the chart:
- downgraded the spire-server namespace from restricted to privileged PSA
  whenever the OIDC provider was enabled, and
- created a fully privileged SecurityContextConstraints (host network/IPC/
  PID, privileged container, hostPath, arbitrary seccomp, RunAsAny) bound
  to the provider's ServiceAccount.

Both contradict the chart's own Namespaces documentation, which specifies
restricted PSA for spire-server, and violate least privilege for an
internet-facing OIDC endpoint.

Remove the privileged PSA override for the OIDC provider (spire-server
stays restricted; the scc.podSecurityLabelSync=false label is retained)
and drop the privileged SCC so the provider falls through to restricted-v2.

With spire-server enforcing restricted PSA, the inline-CSI PodSecurity
check reads the cluster-scoped CSIDriver's
security.openshift.io/csi-ephemeral-volume-profile label. If the CSIDriver
is not committed before the spire-server StatefulSet (which mounts the
inline upstream.csi.spiffe.io volume) is admitted, the profile defaults to
privileged and admission is denied. Under ArgoCD the CSIDriver and the
server StatefulSet can land in the same sync wave, racing admission.
Annotate the CSIDriver with argocd.argoproj.io/sync-wave: "-1" (OpenShift
only) so it is applied before the default-wave server workloads; the
annotation is inert for plain helm installs.

Signed-off-by: Michael Munch <[email protected]>

* ✨ make CSIDriver sync-wave ordering configurable

Add syncWave and csiDriverAnnotations values to the spiffe-csi-driver
chart so the OpenShift argocd.argoproj.io/sync-wave annotation number
can be overridden (e.g. when the chart is nested) and arbitrary
annotations can be applied to the CSIDriver.

Signed-off-by: Michael Munch <[email protected]>

---------

Signed-off-by: Michael Munch <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-20 10:51:35 -07:00
Michael Munchandkfox1111 0726faa076 ✨ add topologySpreadConstraints support to OIDC discovery provider (#925)
Add optional topologySpreadConstraints to the spiffe-oidc-discovery-provider
Deployment, matching the pattern used by spire-server and the spike-* charts.

Signed-off-by: Michael Munch <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-19 16:30:25 -07:00
Saumil Macwanandkfox1111 f1dddf2e85 feat: add first-class support for gcp_cas UpstreamAuthority plugin (#914)
The gcp_cas built-in plugin was not wired into the spire-server chart.
This adds values, configmap rendering, and generated docs to support
GCP Certificate Authority Service as an upstream authority, matching
the existing awsPCA pattern.

Signed-off-by: saumil Macwan <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-18 15:03:28 -07:00
Daniel Schlatter 59bb8a774c Allow sqlite3 in memory when kind is deployment (#923)
* Allow sqlite3 in memory when kind is deployment

Signed-off-by: Daniel Schlatter <[email protected]>

* Warn on unsafe in-memory datastore combinations

Signed-off-by: Daniel Schlatter <[email protected]>

---------

Signed-off-by: Daniel Schlatter <[email protected]>
2026-08-18 14:22:50 -07:00
Daniel Schlatterandkfox1111 e46ad1594a Make spire-server rollout strategy configurable (#924)
Signed-off-by: Daniel Schlatter <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-18 11:47:36 -07:00
kfox1111andFaisal Memon 07ba722da0 Update spire-identity-exchange for 0.4.0 (#900)
* Update spire-identity-exchange for 0.4.0

Signed-off-by: Kevin Fox <[email protected]>

* Understand the plugin config

Signed-off-by: Kevin Fox <[email protected]>

* Fix test

Signed-off-by: Kevin Fox <[email protected]>

* Update ip

Signed-off-by: Kevin Fox <[email protected]>

* Update name

Signed-off-by: Kevin Fox <[email protected]>

* Update name

Signed-off-by: Kevin Fox <[email protected]>

* Update name

Signed-off-by: Kevin Fox <[email protected]>

* Fix broken socket path

Signed-off-by: Kevin Fox <[email protected]>

* Nope, it was right before

Signed-off-by: Kevin Fox <[email protected]>

* Try disabling the spiffe plugin for now

Signed-off-by: Kevin Fox <[email protected]>

* Try logging more

Signed-off-by: Kevin Fox <[email protected]>

* Map non container behavior

Signed-off-by: Kevin Fox <[email protected]>

* Map non container behavior

Signed-off-by: Kevin Fox <[email protected]>

* Map non container behavior

Signed-off-by: Kevin Fox <[email protected]>

* Map non container behavior

Signed-off-by: Kevin Fox <[email protected]>

* Map non container behavior

Signed-off-by: Kevin Fox <[email protected]>

* Map non container behavior

Signed-off-by: Kevin Fox <[email protected]>

* Map non container behavior

Signed-off-by: Kevin Fox <[email protected]>

* Add missing csi driver settings

Signed-off-by: Kevin Fox <[email protected]>

* Test

Signed-off-by: Kevin Fox <[email protected]>

* Test

Signed-off-by: Kevin Fox <[email protected]>

* Fix

Signed-off-by: Kevin Fox <[email protected]>

* Use local oidc discovery provider path by default

Signed-off-by: Kevin Fox <[email protected]>

* Enable spire-identity-exchange in shared infrastructure

Signed-off-by: Kevin Fox <[email protected]>

* Update timeout

Signed-off-by: Kevin Fox <[email protected]>

* Update timeout

Signed-off-by: Kevin Fox <[email protected]>

* Test config

Signed-off-by: Kevin Fox <[email protected]>

* Test config

Signed-off-by: Kevin Fox <[email protected]>

* Test config

Signed-off-by: Kevin Fox <[email protected]>

* Test config

Signed-off-by: Kevin Fox <[email protected]>

* Fix

Signed-off-by: Kevin Fox <[email protected]>

* Fix

Signed-off-by: Kevin Fox <[email protected]>

* Bump spire-ha-agent version to fix issue

Signed-off-by: Kevin Fox <[email protected]>

* Fix

Signed-off-by: Kevin Fox <[email protected]>

* Fix

Signed-off-by: Kevin Fox <[email protected]>

* Bump version

Signed-off-by: Kevin Fox <[email protected]>

* Update version bits to match what it should be, minus final bump

Signed-off-by: Kevin Fox <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
Signed-off-by: kfox1111 <[email protected]>
Co-authored-by: Faisal Memon <[email protected]>
2026-08-18 05:17:43 +00:00
dependabot[bot] de48d14312 Bump helm.sh/helm/v3 from 3.21.3 to 3.21.4 in /tests
Bumps [helm.sh/helm/v3](https://github.com/helm/helm) from 3.21.3 to 3.21.4.
- [Release notes](https://github.com/helm/helm/releases)
- [Commits](https://github.com/helm/helm/compare/v3.21.3...v3.21.4)

---
updated-dependencies:
- dependency-name: helm.sh/helm/v3
  dependency-version: 3.21.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2026-08-17 09:51:25 +02:00
b60c222c78 fix(spire-agent): suffix spire-config ConfigMap name per agent profile (#913)
The spire-config volume (agent.conf) hardcodes
{{ include "spire-agent.fullname" . }} with no $nameSuffix, unlike
every other per-profile resource this chart renders (the ConfigMap
itself, the trust-bundle volume, the DaemonSet name). Any additional
agents.<name> profile's DaemonSet therefore silently mounts the
default profile's agent.conf, regardless of what's configured under
that profile -- workloadAttestors, customPlugins, anything.

Confirmed via a real cluster: an agents.gvisor profile's
disableContainerSelectors never took effect because its DaemonSet was
mounting the default spire-agent ConfigMap the whole time, not
spire-agent-gvisor (which rendered correctly, just was never read).

Verified via `helm template`: additional profiles now get their own
correctly-suffixed ConfigMap reference, matching the DaemonSet's own
name and the trust-bundle volume's existing (correct) behavior.

Signed-off-by: dmorris <[email protected]>
Co-authored-by: dmorris <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-14 09:20:56 -07:00
dependabot[bot] d56bfd6804 Bump github.com/onsi/ginkgo/v2 from 2.32.0 to 2.32.1 in /tests (#915)
Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.32.0 to 2.32.1.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/onsi/ginkgo/compare/v2.32.0...v2.32.1)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-version: 2.32.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-14 08:55:49 -07:00
sabsariandClaude Opus 4.8 648e0e45e5 Add JWT-SVID exec-auth source for kubeConfigs entries (#907)
Add jwtSVIDExec as a fourth exactly-one kubeConfigs source: the chart
generates an exec-credential kubeconfig that authenticates to an external
cluster with short-lived SPIFFE JWT-SVIDs instead of a static credential.

Signed-off-by: sabsari <[email protected]>
Co-authored-by: Claude Opus 4.8 <[email protected]>
2026-08-11 06:40:05 -07:00
David Mosyanandkfox1111 a481bab3f0 Add PodDisruptionBudget support to spire-server (#909)
* Add PodDisruptionBudget support to spire-server

Signed-off-by: David Mosyan <[email protected]>

* Revert spire-ha-agent changes and set default pdb value for spire-server

Signed-off-by: David Mosyan <[email protected]>

---------

Signed-off-by: David Mosyan <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-10 12:23:55 -07:00
dependabot[bot] 0666f56681 Bump regclient/actions/regctl-installer (#911)
Bumps [regclient/actions/regctl-installer](https://github.com/regclient/actions) from 5c882eb04fcca27ebb4f5904e0da01f0780063ea to 78eb729dbdb4ef6480e85ff697b4410e22112583.
- [Release notes](https://github.com/regclient/actions/releases)
- [Changelog](https://github.com/regclient/actions/blob/main/RELEASE.md)
- [Commits](https://github.com/regclient/actions/compare/5c882eb04fcca27ebb4f5904e0da01f0780063ea...78eb729dbdb4ef6480e85ff697b4410e22112583)

---
updated-dependencies:
- dependency-name: regclient/actions/regctl-installer
  dependency-version: 78eb729dbdb4ef6480e85ff697b4410e22112583
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-10 08:40:16 -07:00
savitha-qsandSavitha Ganapathi 80705999dd feat(spire-server): support x509pop externalPKI ca bundle (#908)
* feat(spire-server): support x509pop externalPKI ca bundle

Add externalPKI mode support to the x509pop node attestor configuration.
Allows operators to configure CA bundles for external PKI-based node
attestation via two approaches:
- Inline PEM content (chart creates and manages ConfigMap)
- Reference to existing ConfigMap with ca-bundle.pem key

Includes volume/volumeMount definitions for CA bundle mounting at
/run/spire/data/x509pop-ca-bundle.pem and unit tests for both modes.

Signed-off-by: Savitha Ganapathi <[email protected]>

* refactor: simplify x509pop externalPKI template guard logic

Remove nested conditional guard for ca_bundle_path rendering. When
externalPKI mode is enabled, ca_bundle_path is always rendered; if no
CA bundle is provided, SPIRE will fail at startup with a clear error.

Drop unit tests pending fix to the unit test framework (which currently
has issues loading values from chart, forcing overly-defensive template
guards for test compatibility). Tests can be re-added once framework is
fixed.

Signed-off-by: Savitha Ganapathi <[email protected]>

* refactor: simplify x509pop volume/volumeMount guard logic

Remove nested caBundle existence checks from volume and volumeMount
guard conditions. When externalPKI mode is enabled, volume/volumeMount
are created; if no CA bundle is provided, SPIRE fails at startup with
clear error (missing mount).

Signed-off-by: Savitha Ganapathi <[email protected]>

* refactor: reorder if/with clauses for clarity

Move if condition checks to outer scope before entering with blocks.
This is more idiomatic Helm pattern and avoids unnecessary context
switching if condition fails.

Signed-off-by: Savitha Ganapathi <[email protected]>

* refactor: simplify conditionals to match chart patterns

Replace complex toString/eq comparisons with simpler boolean checks that
match existing patterns in the chart (e.g., federation.tls.certManager.enabled).

Changes:
- .enabled checks: remove toString wrapping, use simple boolean test
- .mode checks: remove toString, use simple eq comparison
- .caBundle checks: simplify from 'ne (... | default "") ""' to simple boolean test

This aligns with chart conventions and avoids tripping broken unit test
framework that struggles with complex conditionals.

Signed-off-by: Savitha Ganapathi <[email protected]>

* test: resurrect x509POP unit tests with simplified conditionals

Re-add unit tests for externalPKI mode now that template conditionals
have been simplified to match chart patterns. Simplified conditionals
should be less fragile with unit test framework.

Tests cover:
- externalPKI with chart-managed CA bundle (inline)
- externalPKI with existing ConfigMap reference

Signed-off-by: Savitha Ganapathi <[email protected]>

* docs: regenerate spire-server README for x509pop caBundle params

Updated parameter documentation for nodeAttestor.x509POP section to
include new caBundle configuration options (inline bundle and existing
ConfigMap reference).

Auto-generated documentation based on @param comments in values.yaml.

Signed-off-by: Savitha Ganapathi <[email protected]>

---------

Signed-off-by: Savitha Ganapathi <[email protected]>
Co-authored-by: Savitha Ganapathi <[email protected]>
2026-08-06 16:48:09 -07:00
David Mosyanandkfox1111 890ada3e15 Add externalTrafficPolicy support for spire-server LoadBalancer service (#906)
Signed-off-by: David Mosyan <[email protected]>
Co-authored-by: kfox1111 <[email protected]>
2026-08-04 13:36:48 -07:00
JoelGoh92andJoel Goh 58dab12e55 Include filterByClassName setting for controller manager (#905)
* Expose filterByClassName setting to restrict the controller manager's ClusterSPIFFEID cache by class name, defaulting to false for backward compatibility.

Signed-off-by: Joel Goh <[email protected]>

* Shorten filterByClassName param descriptions and regenerate README.

Signed-off-by: Joel Goh <[email protected]>

---------

Signed-off-by: Joel Goh <[email protected]>
Co-authored-by: Joel Goh <[email protected]>
2026-08-04 11:00:33 -07:00
sabsariandClaude Opus 4.8 ecf6324d67 Make the external server's downstream RBAC subject configurable (#899)
Replace the hardcoded `User: spire-root` subject with an `externalServerSubject`
block (`kind`/`name`/`namespace`) so the downstream RBAC can bind to a User,
Group, or ServiceAccount. Defaults preserve the previous behavior.

Signed-off-by: sabsari <[email protected]>
Co-authored-by: Claude Opus 4.8 <[email protected]>
2026-08-03 05:21:14 -07:00
Kevin Fox 029f198523 Merge branch 'main' into release 2026-08-02 06:04:54 -07:00
Kevin Fox c727e4e6b5 Bump spire-crds and dependent Helm Chart versions (minor)
* c0bee5ee Upgrade the spire-controller-manager (#896)

Signed-off-by: Kevin Fox <[email protected]>
2026-08-01 20:26:31 -07:00
Kevin Fox 12269d4f33 Bump spire-lib and dependent Helm Chart versions (minor)
* 3cfefb72 Gateway api support (#890)
* 76873394 Enable easy plugin loading (#859)

Signed-off-by: Kevin Fox <[email protected]>
2026-08-01 20:19:04 -07:00
kfox1111andFaisal Memon f4c7df239e Add broker suport to the spire-ha-agent (#884)
* Add broker suport to the spire-ha-agent

Signed-off-by: Kevin Fox <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
Signed-off-by: kfox1111 <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
Signed-off-by: kfox1111 <[email protected]>
Co-authored-by: Faisal Memon <[email protected]>
2026-07-30 13:15:55 -07:00
kfox1111 3cfefb72ba Gateway api support (#890)
* Gateway api support

Signed-off-by: Kevin Fox <[email protected]>

* Update readme

Signed-off-by: Kevin Fox <[email protected]>

* Fix gateway name. a gateway doesnt need to be named gateway

Signed-off-by: Kevin Fox <[email protected]>

* Fix naming issue

Signed-off-by: Kevin Fox <[email protected]>

* Incorperate feedback

Signed-off-by: Kevin Fox <[email protected]>

* Incorperate feedback

Signed-off-by: Kevin Fox <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
2026-07-30 19:38:43 +00:00
kfox1111andFaisal Memon 2d92b81ba4 Adds a changed-charts script to detect charts needing release (#892)
* Adds a changed-charts script to detect charts needing release

Shows charts where a release needs to be made, and in what order.

Example:
$ ./scripts/changed-charts.py
spire-lib
spire-identity-exchange
spire
spire-nested

Signed-off-by: Kevin Fox <[email protected]>

* Add deps that will change

Signed-off-by: Kevin Fox <[email protected]>

---------

Signed-off-by: Kevin Fox <[email protected]>
Co-authored-by: Faisal Memon <[email protected]>
2026-07-30 12:17:45 -07:00
kfox1111 c0bee5ee15 Upgrade the spire-controller-manager (#896)
Signed-off-by: Kevin Fox <[email protected]>
2026-07-30 11:53:13 -07:00
dependabot[bot] 709d000b9d Bump regclient/actions/regctl-installer (#898)
Bumps [regclient/actions/regctl-installer](https://github.com/regclient/actions) from c48159175b58fb90cccd0f98410927a81e04a166 to 5c882eb04fcca27ebb4f5904e0da01f0780063ea.
- [Release notes](https://github.com/regclient/actions/releases)
- [Changelog](https://github.com/regclient/actions/blob/main/RELEASE.md)
- [Commits](https://github.com/regclient/actions/compare/c48159175b58fb90cccd0f98410927a81e04a166...5c882eb04fcca27ebb4f5904e0da01f0780063ea)

---
updated-dependencies:
- dependency-name: regclient/actions/regctl-installer
  dependency-version: 5c882eb04fcca27ebb4f5904e0da01f0780063ea
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-30 07:57:16 -07:00
dependabot[bot] df4a4787b5 Bump docker/login-action from 4.5.1 to 4.6.0 (#897)
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.5.1 to 4.6.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v4.5.1...v4.6.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-29 16:09:29 -07:00
sabsariandClaude Opus 4.8 203183f73c Add externalSecret support to spire-server kubeConfigs (#889)
Allow each kubeConfigs entry to reference an externally-managed Secret
(externalSecret{name,key}) instead of embedding the kubeconfig in values.
Entries may reference different Secrets and mix inline with external ones.
The kubeconfigs volume becomes a projected volume; consumer mount paths are
unchanged. Each entry must set exactly one of kubeConfig, kubeConfigBase64,
or externalSecret.

Signed-off-by: sabsari <[email protected]>
Co-authored-by: Claude Opus 4.8 <[email protected]>
2026-07-29 08:07:39 -07:00
dependabot[bot] ba99ab3eb3 Bump docker/login-action from 4.5.0 to 4.5.1 (#893)
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.5.0 to 4.5.1.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v4.5.0...v4.5.1)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.5.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-27 06:53:03 -07:00
dependabot[bot] 40d20cdeb3 Bump regclient/actions/regctl-installer (#886)
Bumps [regclient/actions/regctl-installer](https://github.com/regclient/actions) from 39bf30ced4be9d147faaabbde2682e9725fb8bd1 to c48159175b58fb90cccd0f98410927a81e04a166.
- [Release notes](https://github.com/regclient/actions/releases)
- [Changelog](https://github.com/regclient/actions/blob/main/RELEASE.md)
- [Commits](https://github.com/regclient/actions/compare/39bf30ced4be9d147faaabbde2682e9725fb8bd1...c48159175b58fb90cccd0f98410927a81e04a166)

---
updated-dependencies:
- dependency-name: regclient/actions/regctl-installer
  dependency-version: c48159175b58fb90cccd0f98410927a81e04a166
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-24 06:22:15 -07:00
dependabot[bot] e6d68862f6 Bump docker/login-action from 4.4.0 to 4.5.0 (#891)
Bumps [docker/login-action](https://github.com/docker/login-action) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v4.4.0...v4.5.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-24 06:09:48 -07:00