Compare commits

...

489 Commits

Author SHA1 Message Date
kfox1111 9fddca5c1a
Deprecate retry_bootstrap (#6050)
* Deprecate retry_bootstrap

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2025-07-10 10:06:38 -03:00
Sorin Dumitru 6767a3c3c9
Wait for server to come up before using it (#6174)
This test fails from time to time in CI. It seems like we should be waiting for the server to come up before trying to use it to get its bundle.

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>
2025-07-09 07:19:04 +01:00
Sorin Dumitru 2d261f2db4
Retry healthcheck during agent-cli test (#6173)
It's possible for the agent to appear attested but for the healthcheck to not yet be passing, so we should retry not just the attestation but also the health check.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-07-08 22:41:56 +01:00
Sorin Dumitru 1ff99fa96d
Unpin binary version in upstream-authority-vault test (#6172)
This is the only test that does it and I don't think it is or should be necessary.

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>
2025-07-08 21:43:37 +01:00
Yuedong Wu fd2b898aae
Fix markdown link syntax nits (#6169)
Signed-off-by: Yuedong Wu <dwcn22@outlook.com>
2025-07-07 20:21:53 +01:00
Carlo Teubner 11f821cf31
golangci-lint: upgrade to v2 & fix flakey test (#6064)
* golangci-lint: upgrade to v2

- Upgrade golangci-lint to the latest version, v2.1.6.
- Migrate to new config file format as required with v2.
- Run golangci-lint via "go run" not "go tool"; the docs explicitly
  recommend against the latter, and it was needlessly polluting our
  go.mod file.
- With the new way, the golangci-lint version is maintained in
  .spire-tool-versions, consistent with other similar tools.
- While we're at it, enable a few more linters/checks.
- Address all new linter complaints.
- Simplify some error return code patterns
- golangci-lint: enable more revive rules

* TestAttestAgent: fix flakeyness

This flakeyness was reported previously in #5774 with improvements made
in #5815, but was still happening.

Hopefully fix it, by not assuming that the gRPC Send() message must not
return an error; it is legitimately allowed to return io.EOF, in the
case where the server has returned an application-level error, which
we can then obtain via a Recv() call.

See https://pkg.go.dev/google.golang.org/grpc#ClientStream.SendMsg

Signed-off-by: Carlo Teubner <cteubner1@bloomberg.net>
2025-07-04 16:14:29 -03:00
dependabot[bot] 0508762982
Bump google.golang.org/api from 0.239.0 to 0.240.0 (#6166)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.239.0 to 0.240.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.239.0...v0.240.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.240.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-04 10:59:21 -07:00
dependabot[bot] b5beef4006
Bump github.com/shirou/gopsutil/v4 from 4.25.5 to 4.25.6 (#6165)
Bumps [github.com/shirou/gopsutil/v4](https://github.com/shirou/gopsutil) from 4.25.5 to 4.25.6.
- [Release notes](https://github.com/shirou/gopsutil/releases)
- [Commits](https://github.com/shirou/gopsutil/compare/v4.25.5...v4.25.6)

---
updated-dependencies:
- dependency-name: github.com/shirou/gopsutil/v4
  dependency-version: 4.25.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-03 16:39:05 -07:00
dependabot[bot] 7a3bf0a650
Bump github.com/docker/docker (#6167)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.3.0+incompatible to 28.3.1+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v28.3.0...v28.3.1)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.3.1+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-03 14:29:39 -07:00
dependabot[bot] b9b00ad3cc
Bump github.com/go-viper/mapstructure/v2 from 2.2.1 to 2.3.0 (#6159)
Bumps [github.com/go-viper/mapstructure/v2](https://github.com/go-viper/mapstructure) from 2.2.1 to 2.3.0.
- [Release notes](https://github.com/go-viper/mapstructure/releases)
- [Changelog](https://github.com/go-viper/mapstructure/blob/main/CHANGELOG.md)
- [Commits](https://github.com/go-viper/mapstructure/compare/v2.2.1...v2.3.0)

---
updated-dependencies:
- dependency-name: github.com/go-viper/mapstructure/v2
  dependency-version: 2.3.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-03 09:51:18 -07:00
dependabot[bot] 32ee70fed9
Bump the aws-sdk group across 1 directory with 5 updates (#6161)
Bumps the aws-sdk group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) | `1.225.1` | `1.227.0` |
| [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2) | `1.42.0` | `1.43.0` |
| [github.com/aws/aws-sdk-go-v2/service/organizations](https://github.com/aws/aws-sdk-go-v2) | `1.38.0` | `1.39.0` |
| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.80.0` | `1.82.0` |
| [github.com/aws/aws-sdk-go-v2/service/sts](https://github.com/aws/aws-sdk-go-v2) | `1.33.21` | `1.34.0` |



Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.225.1 to 1.227.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.225.1...service/ec2/v1.227.0)

Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.42.0 to 1.43.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.42.0...service/s3/v1.43.0)

Updates `github.com/aws/aws-sdk-go-v2/service/organizations` from 1.38.0 to 1.39.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.38.0...service/s3/v1.39.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.80.0 to 1.82.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.80.0...service/s3/v1.82.0)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.33.21 to 1.34.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/sts/v1.33.21...v1.34.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-version: 1.227.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-version: 1.43.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/organizations
  dependency-version: 1.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-version: 1.82.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-version: 1.34.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-02 16:11:59 -07:00
dependabot[bot] 32b64d04b8
Bump github.com/go-jose/go-jose/v4 from 4.1.0 to 4.1.1 (#6160)
Bumps [github.com/go-jose/go-jose/v4](https://github.com/go-jose/go-jose) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/go-jose/go-jose/releases)
- [Changelog](https://github.com/go-jose/go-jose/blob/main/CHANGELOG.md)
- [Commits](https://github.com/go-jose/go-jose/compare/v4.1.0...v4.1.1)

---
updated-dependencies:
- dependency-name: github.com/go-jose/go-jose/v4
  dependency-version: 4.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-02 12:15:17 -07:00
dependabot[bot] d3bdc8c163
Bump github.com/docker/docker (#6157)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.2.2+incompatible to 28.3.0+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v28.2.2...v28.3.0)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.3.0+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-02 10:45:57 -07:00
Ryan Turner dff8a88df0
Prepare main branch for upcoming 1.13.0 release (#6163)
* Changelog for v.1.12.4 release (#6162)

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>

* Prepare main branch for upcoming 1.13.0 release

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-07-01 22:48:49 -07:00
dependabot[bot] 46ac9d92f5
Bump cloud.google.com/go/secretmanager in the google-cloud-sdk group (#6144)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/secretmanager](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/secretmanager` from 1.14.7 to 1.15.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/automl/v1.14.7...kms/v1.15.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/secretmanager
  dependency-version: 1.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-01 11:42:01 -07:00
Agustín Martínez Fayó f687bf21e8
Revert "Fix metrics/health checks when retry_bootstrap=true (#6063)" (#6158)
This reverts commit 41aedaea5a.

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-06-27 07:49:45 -03:00
dependabot[bot] 6512090356
Bump github.com/sigstore/cosign/v2 from 2.5.0 to 2.5.2 (#6145)
Bumps [github.com/sigstore/cosign/v2](https://github.com/sigstore/cosign) from 2.5.0 to 2.5.2.
- [Release notes](https://github.com/sigstore/cosign/releases)
- [Changelog](https://github.com/sigstore/cosign/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/cosign/compare/v2.5.0...v2.5.2)

---
updated-dependencies:
- dependency-name: github.com/sigstore/cosign/v2
  dependency-version: 2.5.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-26 09:13:22 -03:00
dependabot[bot] ba824b04d1
Bump google.golang.org/api from 0.237.0 to 0.239.0 (#6154)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.237.0 to 0.239.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.237.0...v0.239.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.239.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-26 07:37:29 -03:00
dependabot[bot] 21359c4ebf
Bump the k8s-io group with 5 updates (#6153)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.33.1` | `0.33.2` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.33.1` | `0.33.2` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.33.1` | `0.33.2` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.33.1` | `0.33.2` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.33.1` | `0.33.2` |


Updates `k8s.io/api` from 0.33.1 to 0.33.2
- [Commits](https://github.com/kubernetes/api/compare/v0.33.1...v0.33.2)

Updates `k8s.io/apimachinery` from 0.33.1 to 0.33.2
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.33.1...v0.33.2)

Updates `k8s.io/client-go` from 0.33.1 to 0.33.2
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.33.1...v0.33.2)

Updates `k8s.io/kube-aggregator` from 0.33.1 to 0.33.2
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.33.1...v0.33.2)

Updates `k8s.io/mount-utils` from 0.33.1 to 0.33.2
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.33.1...v0.33.2)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-version: 0.33.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-version: 0.33.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-version: 0.33.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-version: 0.33.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-version: 0.33.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-25 18:04:23 -03:00
dependabot[bot] 55e614c112
Bump github.com/aws/smithy-go from 1.22.3 to 1.22.4 (#6138)
Bumps [github.com/aws/smithy-go](https://github.com/aws/smithy-go) from 1.22.3 to 1.22.4.
- [Release notes](https://github.com/aws/smithy-go/releases)
- [Changelog](https://github.com/aws/smithy-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws/smithy-go/compare/v1.22.3...v1.22.4)

---
updated-dependencies:
- dependency-name: github.com/aws/smithy-go
  dependency-version: 1.22.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-24 15:37:33 -03:00
dependabot[bot] 76299f86f3
Bump github.com/google/go-containerregistry from 0.20.5 to 0.20.6 (#6135)
Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.20.5 to 0.20.6.
- [Release notes](https://github.com/google/go-containerregistry/releases)
- [Changelog](https://github.com/google/go-containerregistry/blob/main/.goreleaser.yml)
- [Commits](https://github.com/google/go-containerregistry/compare/v0.20.5...v0.20.6)

---
updated-dependencies:
- dependency-name: github.com/google/go-containerregistry
  dependency-version: 0.20.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-19 17:14:03 +01:00
Agustín Martínez Fayó 70fadb5861
Use k8s Apply operation in `k8s_configmap` BundlePublisher plugin instead of Get / Create / Update (#6139)
* Use k8s Apply operation instead of Get / Create / Update

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>

* Address PR comment

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>

---------

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-06-19 06:56:37 +01:00
Sorin Dumitru b991f8b6bd
Use UpstreamAuthority.SubscribeToLocalBundle RPC (#6090)
* Add test to show the issue

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

* Update spire-plugin-sdk to include new RPC

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

* Implement the new SubscribeToLocalBundle RPC

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

* fakeupstreamauthority: add support for GetTrustBundle

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

* Add UpstreamClient support for wathing upstream authorities

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

* Use SubscribeToLocalBundle UpstreamAuthority RPC if available

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

* Address review comments

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

---------

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-06-18 19:20:16 +01:00
Sorin Dumitru 0dfc8a6cf2
spire-agent: JWT-SVID validation should check for exp claim presence (#6141)
* spire-agent: JWT-SVID validation should check for exp claim presence

The SPIFFE [spec](https://github.com/spiffe/spiffe/blob/main/standards/JWT-SVID.md\#33-expiration-time) says that tokens MUST have an exp field. We must reject tokens without one present.

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>

* Bump SPIRE 1.12.4 and update Changelog

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>

* Also update migration table

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>

* Remove extra line in CHANGELOG.md

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>

---------

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>
2025-06-18 18:19:56 +01:00
dependabot[bot] c9f33b41f2
Bump github.com/aws/aws-sdk-go-v2/service/kms in the aws-sdk group (#6130)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/kms](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/kms` from 1.40.1 to 1.41.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.40.1...service/s3/v1.41.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/kms
  dependency-version: 1.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-17 15:52:57 -03:00
Sorin Dumitru 6185e7f0ed
Use sha of branch of caching executables (#6133)
Using the executables does not work because they do not exist when we try to fetch from the cache. This means we may end up fetching executables from previous runs of the workflows on the branch.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-06-15 09:31:17 -03:00
dependabot[bot] 6fcb5ef7ec
Bump github.com/go-sql-driver/mysql from 1.9.2 to 1.9.3 (#6131)
Bumps [github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) from 1.9.2 to 1.9.3.
- [Release notes](https://github.com/go-sql-driver/mysql/releases)
- [Changelog](https://github.com/go-sql-driver/mysql/blob/v1.9.3/CHANGELOG.md)
- [Commits](https://github.com/go-sql-driver/mysql/compare/v1.9.2...v1.9.3)

---
updated-dependencies:
- dependency-name: github.com/go-sql-driver/mysql
  dependency-version: 1.9.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-14 12:52:06 +01:00
dependabot[bot] df29c3ca1a
Bump google.golang.org/api from 0.236.0 to 0.237.0 (#6132)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.236.0 to 0.237.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.236.0...v0.237.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.237.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-14 09:44:14 +01:00
Keegan Witt 3d4579bb12
fix: subject_types_supported cannot be an empty list (#6126)
Closes #6125

Signed-off-by: Keegan Witt <keeganwitt@gmail.com>
2025-06-13 11:59:07 +01:00
Sorin Dumitru c1a25db8e1
Lower log level of cotainer not found retry (#6128)
This can appear somewhat frequently, more so now that the pod list is cached. We already have a warning for when the container it is not found at all, no point warning about retrying.

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-06-13 07:17:30 +01:00
dependabot[bot] b6760ad0d2
Bump github.com/sigstore/sigstore from 1.9.4 to 1.9.5 (#6124)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.9.4 to 1.9.5.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.9.4...v1.9.5)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-version: 1.9.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-12 10:25:22 -03:00
Agustín Martínez Fayó 7cdc62c353
Add `k8s_configmap` BundlePublisher plugin (#6105)
* Add `k8s_configmap` BundlePublisher

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-06-12 06:57:58 -03:00
dependabot[bot] 48133acad8
Bump github.com/Azure/azure-sdk-for-go/sdk/azidentity (#6122)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azidentity` from 1.10.0 to 1.10.1
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/go-mgmt-sdk-release-guideline.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.10.0...sdk/azidentity/v1.10.1)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity
  dependency-version: 1.10.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-11 16:17:24 -03:00
dependabot[bot] cbdf62d24b
Bump the aws-sdk group across 1 directory with 2 updates (#6121)
Bumps the aws-sdk group with 2 updates in the / directory: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/kms](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.224.0 to 1.225.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.224.0...service/ec2/v1.225.0)

Updates `github.com/aws/aws-sdk-go-v2/service/kms` from 1.39.0 to 1.40.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.39.0...service/s3/v1.40.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-version: 1.225.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/kms
  dependency-version: 1.40.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-11 09:07:49 -03:00
dependabot[bot] 408849b989
Bump golang.org/x/net from 0.40.0 to 0.41.0 (#6116)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.40.0 to 0.41.0.
- [Commits](https://github.com/golang/net/compare/v0.40.0...v0.41.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-10 16:14:17 -03:00
dependabot[bot] 2a341f8ac6
Bump golang.org/x/crypto from 0.38.0 to 0.39.0 (#6115)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.38.0 to 0.39.0.
- [Commits](https://github.com/golang/crypto/compare/v0.38.0...v0.39.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-10 13:28:57 -03:00
Ryan Turner ce88f8651a
Update to Go 1.24.4 (#6119)
* Update to Go 1.24.4

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

* Update to Alpine Linux 3.22

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2025-06-10 09:35:39 -03:00
Sorin Dumitru e7083db69f
Terminate entry lookup early if possible (#6100)
In the cases where we know which entries we are looking for, e.g. for SVID issuance, we can end iterating through entries early if we found all of them.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-06-07 14:14:45 +01:00
Tyler Schade 114f457701
implement gracefulstop with a configurable timeout in spire-server (#6076)
* implement gracefulstop

Signed-off-by: tjons <tylerschade99@gmail.com>

* code review feedback: remove configuration parameter and extract helper function

Signed-off-by: tjons <tylerschade99@gmail.com>

* code review feedback pt 2

Signed-off-by: tjons <tylerschade99@gmail.com>

* reintroduce cancellation

Signed-off-by: tjons <tylerschade99@gmail.com>

---------

Signed-off-by: tjons <tylerschade99@gmail.com>
2025-06-07 09:51:16 +01:00
dependabot[bot] 656e83d0fe
Bump github.com/hashicorp/vault/sdk from 0.17.0 to 0.18.0 (#6117)
Bumps [github.com/hashicorp/vault/sdk](https://github.com/hashicorp/vault) from 0.17.0 to 0.18.0.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/sdk/v0.17.0...sdk/v0.18.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/sdk
  dependency-version: 0.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-06 14:13:26 -07:00
dependabot[bot] 8866c602a5
Bump github.com/aws/aws-sdk-go-v2/service/kms in the aws-sdk group (#6114)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/kms](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/kms` from 1.38.1 to 1.39.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.38.1...service/s3/v1.39.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/kms
  dependency-version: 1.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-06 11:40:47 -07:00
dependabot[bot] bc52fe64b4
Bump golang.org/x/sync from 0.14.0 to 0.15.0 (#6111)
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.14.0 to 0.15.0.
- [Commits](https://github.com/golang/sync/compare/v0.14.0...v0.15.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-version: 0.15.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-06 09:52:13 -07:00
dependabot[bot] 1c7a915e36
Bump github.com/hashicorp/vault/api from 1.16.0 to 1.20.0 (#6113)
Bumps [github.com/hashicorp/vault/api](https://github.com/hashicorp/vault) from 1.16.0 to 1.20.0.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/vault/compare/v1.16.0...api/v1.20.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/api
  dependency-version: 1.20.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-05 16:13:19 -07:00
dependabot[bot] 19cf417169
Bump golang.org/x/time from 0.11.0 to 0.12.0 (#6110)
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.11.0 to 0.12.0.
- [Commits](https://github.com/golang/time/compare/v0.11.0...v0.12.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-version: 0.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-05 13:59:28 -07:00
dependabot[bot] 84fe369baf
Bump google.golang.org/grpc from 1.72.2 to 1.73.0 (#6112)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.72.2 to 1.73.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.72.2...v1.73.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.73.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-05 10:29:45 -07:00
dependabot[bot] 77c1f6e701
Bump github.com/docker/docker from 28.1.1+incompatible to 28.2.2+incompatible (#6097)
* Bump github.com/docker/docker

Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.1.1+incompatible to 28.2.2+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v28.1.1...v28.2.2)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.2.2+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update Docker version

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

* Remove check for Docker version in plugin test

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-06-04 21:07:09 -07:00
dependabot[bot] 49ceb4a2ed
Bump github.com/open-policy-agent/opa from 1.5.0 to 1.5.1 (#6107)
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 1.5.0 to 1.5.1.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.5.0...v1.5.1)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-version: 1.5.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-04 14:57:45 -07:00
dependabot[bot] eacccc5fa8
Bump github.com/hashicorp/vault/sdk from 0.16.0 to 0.17.0 (#6092)
Bumps [github.com/hashicorp/vault/sdk](https://github.com/hashicorp/vault) from 0.16.0 to 0.17.0.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/sdk/v0.16.0...sdk/v0.17.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/sdk
  dependency-version: 0.17.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-04 13:37:42 -07:00
dependabot[bot] a4561482d2
Bump google.golang.org/api from 0.235.0 to 0.236.0 (#6108)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.235.0 to 0.236.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.235.0...v0.236.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.236.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-04 10:35:19 -07:00
dependabot[bot] 9ece0645bc
Bump the aws-sdk group across 1 directory with 2 updates (#6099)
Bumps the aws-sdk group with 2 updates in the / directory: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.223.0 to 1.224.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.223.0...service/ec2/v1.224.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.79.1 to 1.80.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.79.1...service/s3/v1.80.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-version: 1.224.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-version: 1.80.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-03 11:40:10 -07:00
dependabot[bot] 9287c56b11
Bump google.golang.org/grpc from 1.72.1 to 1.72.2 (#6102)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.72.1 to 1.72.2.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.72.1...v1.72.2)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.72.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-03 11:38:43 +01:00
dependabot[bot] 8841281892
Bump github.com/shirou/gopsutil/v4 from 4.25.4 to 4.25.5 (#6103)
Bumps [github.com/shirou/gopsutil/v4](https://github.com/shirou/gopsutil) from 4.25.4 to 4.25.5.
- [Release notes](https://github.com/shirou/gopsutil/releases)
- [Commits](https://github.com/shirou/gopsutil/compare/v4.25.4...v4.25.5)

---
updated-dependencies:
- dependency-name: github.com/shirou/gopsutil/v4
  dependency-version: 4.25.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-02 21:04:54 +01:00
dependabot[bot] 13db20d282
Bump github.com/open-policy-agent/opa from 1.4.2 to 1.5.0 (#6098)
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 1.4.2 to 1.5.0.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.4.2...v1.5.0)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-version: 1.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-02 13:11:06 +01:00
dependabot[bot] aaa5235f7e
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#6096)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.54.0 to 1.55.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.54.0...spanner/v1.55.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-version: 1.55.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-02 10:49:34 +01:00
Sorin Dumitru 4c28ec2268
Improve performance for fetching authorized entries (#6034)
* Reduce some code duplication in the entry cache

This also improves performance slightly since we no longer clone some slices.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-05-30 19:13:07 -03:00
dependabot[bot] 80001e9179
Bump cloud.google.com/go/kms in the google-cloud-sdk group (#6082)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/kms](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/kms` from 1.21.2 to 1.22.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/kms/v1.21.2...kms/v1.22.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/kms
  dependency-version: 1.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-29 14:34:28 -03:00
dependabot[bot] 11de50bb38
Bump github.com/google/go-containerregistry from 0.20.3 to 0.20.5 (#6085)
Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.20.3 to 0.20.5.
- [Release notes](https://github.com/google/go-containerregistry/releases)
- [Changelog](https://github.com/google/go-containerregistry/blob/main/.goreleaser.yml)
- [Commits](https://github.com/google/go-containerregistry/compare/v0.20.3...v0.20.5)

---
updated-dependencies:
- dependency-name: github.com/google/go-containerregistry
  dependency-version: 0.20.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-29 11:53:15 +01:00
dependabot[bot] c2f72bd8b7
Bump sigs.k8s.io/controller-runtime from 0.20.4 to 0.21.0 (#6089)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.20.4 to 0.21.0.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.20.4...v0.21.0)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-version: 0.21.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 18:13:44 +01:00
dependabot[bot] 08fbaa2a95
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#6081)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.218.0 to 1.219.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.218.0...service/ec2/v1.219.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-version: 1.219.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 11:15:44 +01:00
Sorin Dumitru 10dae54b05
Bump go to 1.24.3 (#6088)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-05-28 06:47:10 +01:00
kfox1111 41aedaea5a
Fix metrics/health checks when retry_bootstrap=true (#6063)
* Fix metrics/health checks when retry_bootstrap=true

When retry_bootstrap is true, during the startup/retrying, health
checks / metrics are not started. This time is currently is capped at
5 minutes, requiring fairly long health check delays on Kubernetes,
and no ability to collect metrics on what its doing.

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2025-05-27 15:26:27 -03:00
dependabot[bot] 5e7fe55ad2
Bump the k8s-io group with 5 updates (#6078)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.33.0` | `0.33.1` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.33.0` | `0.33.1` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.33.0` | `0.33.1` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.33.0` | `0.33.1` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.33.0` | `0.33.1` |


Updates `k8s.io/api` from 0.33.0 to 0.33.1
- [Commits](https://github.com/kubernetes/api/compare/v0.33.0...v0.33.1)

Updates `k8s.io/apimachinery` from 0.33.0 to 0.33.1
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.33.0...v0.33.1)

Updates `k8s.io/client-go` from 0.33.0 to 0.33.1
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.33.0...v0.33.1)

Updates `k8s.io/kube-aggregator` from 0.33.0 to 0.33.1
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.33.0...v0.33.1)

Updates `k8s.io/mount-utils` from 0.33.0 to 0.33.1
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.33.0...v0.33.1)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-version: 0.33.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-version: 0.33.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-version: 0.33.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-version: 0.33.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-version: 0.33.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-27 16:48:40 +01:00
dependabot[bot] 993bab01a8
Bump github.com/jackc/pgx/v5 from 5.7.4 to 5.7.5 (#6077)
Bumps [github.com/jackc/pgx/v5](https://github.com/jackc/pgx) from 5.7.4 to 5.7.5.
- [Changelog](https://github.com/jackc/pgx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jackc/pgx/compare/v5.7.4...v5.7.5)

---
updated-dependencies:
- dependency-name: github.com/jackc/pgx/v5
  dependency-version: 5.7.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-22 14:43:01 +01:00
dependabot[bot] de2c63f9a8
Bump github.com/Azure/azure-sdk-for-go/sdk/azidentity (#6070)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azidentity` from 1.9.0 to 1.10.0
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/go-mgmt-sdk-release-guideline.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.9.0...sdk/azcore/v1.10.0)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity
  dependency-version: 1.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-22 12:04:10 +01:00
Agustín Martínez Fayó 0b0b86a1d3
Add ARM64 support for integration tests in GitHub workflows (#6059)
* Add ARM64 support for integration tests on GitHub workflows

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-05-20 18:30:02 -03:00
Sorin Dumitru 9aebf800d1
Bump SPIRE v1.12.3 (#6080)
* Use Policy field instead of PolicyIdentifiers in cert templates (#6074)

Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
Signed-off-by: Sorin Dumitru <sorin@returnze.ro>

* Bump SPIRE v1.12.3

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

---------

Signed-off-by: Sorin Dumitru <sorin@returnze.ro>
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-05-20 15:50:52 -03:00
dependabot[bot] f448057e3f
Bump github.com/googleapis/gax-go/v2 from 2.14.1 to 2.14.2 (#6073)
Bumps [github.com/googleapis/gax-go/v2](https://github.com/googleapis/gax-go) from 2.14.1 to 2.14.2.
- [Release notes](https://github.com/googleapis/gax-go/releases)
- [Commits](https://github.com/googleapis/gax-go/compare/v2.14.1...v2.14.2)

---
updated-dependencies:
- dependency-name: github.com/googleapis/gax-go/v2
  dependency-version: 2.14.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-19 16:10:33 +01:00
dependabot[bot] 1810d8c9fe
Bump google.golang.org/grpc from 1.72.0 to 1.72.1 (#6072)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.72.0 to 1.72.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.72.0...v1.72.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.72.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-19 15:27:22 +01:00
dependabot[bot] 8cd40be1de
Bump github.com/hashicorp/vault/sdk from 0.15.2 to 0.16.0 (#6071)
Bumps [github.com/hashicorp/vault/sdk](https://github.com/hashicorp/vault) from 0.15.2 to 0.16.0.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/sdk/v0.15.2...sdk/v0.16.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/sdk
  dependency-version: 0.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-19 13:41:48 +01:00
dependabot[bot] ea97e994b8
Bump the aws-sdk group across 1 directory with 2 updates (#6068)
Bumps the aws-sdk group with 2 updates in the / directory: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.213.0 to 1.218.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.213.0...service/ec2/v1.218.0)

Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.41.1 to 1.42.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ivs/v1.41.1...service/s3/v1.42.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-version: 1.218.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-version: 1.42.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-19 11:05:26 +01:00
kfox1111 81d54ef5ba
Don't contact trust_bundle_url needlessly (#6065)
* Don't contact trust_bundle_url needlessly

The agent contacts the trust_bundle_url on startup even if it already
has a trust bundle. If connection fails, the agent fails. This
requirement puts more load on the server needlessly, and either makes
the agent lower availability or puts higher availability requirements
on the server. Change it so that this doesn't happen.

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix lint

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

---------

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2025-05-15 17:39:53 -03:00
dependabot[bot] 03d18e4024
Bump google.golang.org/api from 0.230.0 to 0.233.0 (#6067)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.230.0 to 0.233.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.230.0...v0.233.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.233.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-15 15:38:10 +01:00
dependabot[bot] d0b274e6c3
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#6066)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.53.0 to 1.54.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.53.0...spanner/v1.54.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-version: 1.54.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-15 10:51:57 -03:00
dependabot[bot] 843614b927
Bump github.com/open-policy-agent/opa from 1.4.0 to 1.4.2 (#6046)
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 1.4.0 to 1.4.2.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.4.0...v1.4.2)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-version: 1.4.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-15 12:26:24 +01:00
dependabot[bot] 1b15dd811e
Bump github.com/google/go-tpm from 0.9.3 to 0.9.5 (#6062)
Bumps [github.com/google/go-tpm](https://github.com/google/go-tpm) from 0.9.3 to 0.9.5.
- [Release notes](https://github.com/google/go-tpm/releases)
- [Commits](https://github.com/google/go-tpm/compare/v0.9.3...v0.9.5)

---
updated-dependencies:
- dependency-name: github.com/google/go-tpm
  dependency-version: 0.9.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-15 11:13:38 +01:00
Carlo Teubner 6709c8b6b4
Delete some dead code (#6058)
I ran
    go run golang.org/x/tools/cmd/deadcode@latest -test ./...
and manually reviewed the result.

I selected a subset of "dead code" (never-called functions) to delete. I
did not delete some other functions that seemed like they could still be
useful in future.

One function flagged as dead was "DeltaSecretsTest" in
pkg/agent/endpoints/sdsv3/handler_test.go, which seems like it was a
misspelled function that was intended as a test case. I tried renaming
it to "TestDeltaSecrets" but it turned out to be broken and hard to fix.
Since it only tests that an RPC method is unimplemented, I opted to just
remove the function instead.

Signed-off-by: Carlo Teubner <cteubner1@bloomberg.net>
2025-05-15 10:07:05 +01:00
dependabot[bot] 3e892f15d6
Bump golang.org/x/net from 0.39.0 to 0.40.0 (#6061)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.39.0 to 0.40.0.
- [Commits](https://github.com/golang/net/compare/v0.39.0...v0.40.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.40.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-14 11:51:23 -03:00
kfox1111 66559bc70f
Add file mode to oidc-discovery-provider (#6025)
* Add file mode to oidc-discovery-provider

This enables the oidc-discovery-provider to read the trust bundle from a
file.

Fixes: https://github.com/spiffe/spire/issues/6017

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2025-05-13 16:24:11 -03:00
dependabot[bot] 4dd9a149eb
Bump golang.org/x/sys from 0.32.0 to 0.33.0 (#6047)
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.32.0 to 0.33.0.
- [Commits](https://github.com/golang/sys/compare/v0.32.0...v0.33.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-version: 0.33.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-08 19:37:44 +01:00
dependabot[bot] 662da58da3
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#6045)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.52.0 to 1.53.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.52.0...spanner/v1.53.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-version: 1.53.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-08 07:30:50 +01:00
Marcos Yacob e5ad056d5e
Bump SPIRE v1.12.2 (#6052)
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2025-05-07 13:39:56 -03:00
dependabot[bot] 4741d49d88
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#6040)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.212.0 to 1.213.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.212.0...service/ec2/v1.213.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-version: 1.213.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-02 13:33:03 -07:00
dependabot[bot] f1692f46dc
Bump github.com/shirou/gopsutil/v4 from 4.25.3 to 4.25.4 (#6041)
Bumps [github.com/shirou/gopsutil/v4](https://github.com/shirou/gopsutil) from 4.25.3 to 4.25.4.
- [Release notes](https://github.com/shirou/gopsutil/releases)
- [Commits](https://github.com/shirou/gopsutil/compare/v4.25.3...v4.25.4)

---
updated-dependencies:
- dependency-name: github.com/shirou/gopsutil/v4
  dependency-version: 4.25.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-02 11:38:11 -07:00
dependabot[bot] 449b6bf68a
Bump github.com/open-policy-agent/opa from 1.3.0 to 1.4.0 (#6042)
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.3.0...v1.4.0)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-version: 1.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-02 11:06:08 -07:00
Sorin Dumitru 9ba374537d
Include SPIFFE ID in audit logs for NewJWTSVID (#6036)
This is present in the logs for BatchNewX509SVID so it should also be present here.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-04-30 06:56:11 +01:00
Sorin Dumitru 59f23995d2
Fix the BuildSQL benchmark (#6033)
Without including the alias in the name we get duplicate entry errors and the benchmark fails completely.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-04-29 20:34:06 +01:00
Faisal Memon 2bb1232798
Reduce event timeout to 5 minutes (#5966)
* Reduce event timeout to 5 minutes

Signed-off-by: Faisal Memon <fymemon@yahoo.com>
2025-04-29 18:25:50 +01:00
Mike Brown 7015e3a502
pipe through IGNORE_SUITES (#6020)
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2025-04-29 09:52:29 -03:00
kfox1111 31b855eefc
Extract the trust bundle code from agent/cli/run (#6021)
* Extract the trust bundle code from agent/cli/run

The trust bundle fetching code is only available from the cli run file.
It will need to be in a more common location for reattestation code to
come. We move the existing code to a common location with as few changes
as possible. This will make future reviews easier as changes will not
involve moving large blocks of code at the same time as changing
behavior for reattestation support.

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Add tests

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix path

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

---------

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2025-04-28 23:49:24 -03:00
Mike Brown 5248b48d78
adding additional unit test variations for sigstore (#6023)
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2025-04-28 14:56:24 -03:00
dependabot[bot] a95033336c
Bump github.com/sigstore/sigstore from 1.9.3 to 1.9.4 (#6032)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.9.3 to 1.9.4.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.9.3...v1.9.4)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-version: 1.9.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-28 09:51:23 +01:00
dependabot[bot] 1c2456c95d
Bump the k8s-io group with 5 updates (#6031)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.4` | `0.33.0` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.32.4` | `0.33.0` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.4` | `0.33.0` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.32.4` | `0.33.0` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.32.4` | `0.33.0` |


Updates `k8s.io/api` from 0.32.4 to 0.33.0
- [Commits](https://github.com/kubernetes/api/compare/v0.32.4...v0.33.0)

Updates `k8s.io/apimachinery` from 0.32.4 to 0.33.0
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.32.4...v0.33.0)

Updates `k8s.io/client-go` from 0.32.4 to 0.33.0
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.32.4...v0.33.0)

Updates `k8s.io/kube-aggregator` from 0.32.4 to 0.33.0
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.32.4...v0.33.0)

Updates `k8s.io/mount-utils` from 0.32.4 to 0.33.0
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.32.4...v0.33.0)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-version: 0.33.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-version: 0.33.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-version: 0.33.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-version: 0.33.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-version: 0.33.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-28 08:07:24 +01:00
dependabot[bot] 5ef3d8dd1e
Bump google.golang.org/api from 0.229.0 to 0.230.0 (#6029)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.229.0 to 0.230.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.229.0...v0.230.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.230.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-27 18:33:05 +01:00
dependabot[bot] 3badfa8b37
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#6027)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.51.0 to 1.52.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.51.0...spanner/v1.52.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-version: 1.52.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-27 06:26:12 +01:00
Sorin Dumitru acbbb296d1
Add more details to the AWS Roles Anywhere publisher (#5989)
This came up on Slack and I think having some more details in here about the reasons we need an UpstreamAuthority plugin would help

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-04-26 07:10:03 +01:00
Mike Brown 01ebc0e982
correct wording of error message; add unified cgroups test (#6030)
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2025-04-25 20:07:01 +01:00
dependabot[bot] 3d68fd28e5
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#6026)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.211.1 to 1.212.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.211.1...service/ec2/v1.212.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-version: 1.212.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-24 19:43:35 +01:00
dependabot[bot] 8e3588f1dd
Bump the k8s-io group with 5 updates (#6028)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.3` | `0.32.4` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.32.3` | `0.32.4` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.3` | `0.32.4` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.32.3` | `0.32.4` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.32.3` | `0.32.4` |


Updates `k8s.io/api` from 0.32.3 to 0.32.4
- [Commits](https://github.com/kubernetes/api/compare/v0.32.3...v0.32.4)

Updates `k8s.io/apimachinery` from 0.32.3 to 0.32.4
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.32.3...v0.32.4)

Updates `k8s.io/client-go` from 0.32.3 to 0.32.4
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.32.3...v0.32.4)

Updates `k8s.io/kube-aggregator` from 0.32.3 to 0.32.4
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.32.3...v0.32.4)

Updates `k8s.io/mount-utils` from 0.32.3 to 0.32.4
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.32.3...v0.32.4)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-version: 0.32.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-version: 0.32.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-version: 0.32.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-version: 0.32.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-version: 0.32.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-24 16:11:10 +01:00
dependabot[bot] 66d95c8f54
Bump google.golang.org/grpc from 1.71.1 to 1.72.0 (#6022)
* Bump google.golang.org/grpc from 1.71.1 to 1.72.0

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.71.1 to 1.72.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.71.1...v1.72.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.72.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Add new grpc_health_v1 rpc

Latest version of gRPC added a new rpc to the service so we need to add the scaffolding for it.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-04-23 21:50:43 +01:00
dependabot[bot] 94b907137a
Bump github.com/docker/docker from 28.0.4+incompatible to 28.1.1+incompatible (#6018)
* Bump github.com/docker/docker

Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.0.4+incompatible to 28.1.1+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v28.0.4...v28.1.1)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-version: 28.1.1+incompatible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update docker engine API version in test

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-04-20 10:59:11 -03:00
Mike Brown 8ce1b369ba
update urls to security assessments (#6012)
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2025-04-20 06:15:24 +01:00
dependabot[bot] ed5f781fcb
Bump github.com/sigstore/rekor from 1.3.9 to 1.3.10 (#6010)
Bumps [github.com/sigstore/rekor](https://github.com/sigstore/rekor) from 1.3.9 to 1.3.10.
- [Release notes](https://github.com/sigstore/rekor/releases)
- [Changelog](https://github.com/sigstore/rekor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/rekor/compare/v1.3.9...v1.3.10)

---
updated-dependencies:
- dependency-name: github.com/sigstore/rekor
  dependency-version: 1.3.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-19 17:35:45 +02:00
dependabot[bot] 31a32b1781
Bump github.com/GoogleCloudPlatform/cloudsql-proxy from 1.37.6 to 1.37.7 (#6015)
Bumps [github.com/GoogleCloudPlatform/cloudsql-proxy](https://github.com/GoogleCloudPlatform/cloudsql-proxy) from 1.37.6 to 1.37.7.
- [Release notes](https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases)
- [Changelog](https://github.com/GoogleCloudPlatform/cloud-sql-proxy/blob/v1.37.7/CHANGELOG.md)
- [Commits](https://github.com/GoogleCloudPlatform/cloudsql-proxy/compare/v1.37.6...v1.37.7)

---
updated-dependencies:
- dependency-name: github.com/GoogleCloudPlatform/cloudsql-proxy
  dependency-version: 1.37.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-19 16:44:55 +02:00
Faisal Memon 7a7ad6e894
Fetch updated cache entries in bulk (#5970)
Use the new FetchRegistrationEntries API from #5910 to get the full list of updated entries rather than fetching them individually.

Signed-off-by: Faisal Memon <fymemon@yahoo.com>
2025-04-19 08:37:36 +01:00
dependabot[bot] 9ce2aef3ce
Bump github.com/mattn/go-sqlite3 from 1.14.27 to 1.14.28 (#6014)
Bumps [github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) from 1.14.27 to 1.14.28.
- [Release notes](https://github.com/mattn/go-sqlite3/releases)
- [Commits](https://github.com/mattn/go-sqlite3/compare/v1.14.27...v1.14.28)

---
updated-dependencies:
- dependency-name: github.com/mattn/go-sqlite3
  dependency-version: 1.14.28
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-18 19:32:21 +01:00
dependabot[bot] 3420abfe3e
Bump google.golang.org/api from 0.228.0 to 0.229.0 (#6013)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.228.0 to 0.229.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.228.0...v0.229.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.229.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-18 13:03:27 -03:00
Sorin Dumitru d47d6a32e4
Upgrade to go 1.24.2 (#6009)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-04-18 11:26:09 -03:00
kfox1111 d76a21aaeb
Unix socket support for trust bundle URL (#5932)
* Unix socket support for trust bundle URL

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Pass metadata to the remote

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix test

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix extra space

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Revert param passing bit for now.

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Reserve params for later use

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Update path

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Apply suggestions from code review

Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Signed-off-by: kfox1111 <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix lint

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Add socket test

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix lint

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Add config tests

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

---------

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
Signed-off-by: kfox1111 <Kevin.Fox@pnnl.gov>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-04-17 10:01:15 -07:00
dependabot[bot] 83be5079d2
Bump github.com/sigstore/sigstore from 1.9.1 to 1.9.3 (#6006)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.9.1 to 1.9.3.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.9.1...v1.9.3)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-version: 1.9.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 20:33:13 +02:00
Tyler Schade 392bafd482
remove dead make target (#6008)
Signed-off-by: tjons <tylerschade99@gmail.com>
2025-04-11 07:19:26 +01:00
dependabot[bot] 6440c58f74
Bump github.com/Azure/azure-sdk-for-go/sdk/azidentity (#6005)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azidentity` from 1.8.2 to 1.9.0
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azidentity/v1.8.2...sdk/azcore/v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity
  dependency-version: 1.9.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-10 17:38:04 +01:00
dependabot[bot] a9f27c9b8c
Bump golang.org/x/net from 0.38.0 to 0.39.0 (#6003)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.38.0 to 0.39.0.
- [Commits](https://github.com/golang/net/compare/v0.38.0...v0.39.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-10 16:55:11 +01:00
dependabot[bot] f769f54d6a
Bump github.com/prometheus/client_golang from 1.21.1 to 1.22.0 (#6004)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.21.1 to 1.22.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.21.1...v1.22.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-version: 1.22.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-09 07:16:42 +01:00
dependabot[bot] 91da9d334c
Bump github.com/go-jose/go-jose/v4 from 4.0.5 to 4.1.0 (#6001)
* Bump github.com/go-jose/go-jose/v4 from 4.0.5 to 4.1.0

Bumps [github.com/go-jose/go-jose/v4](https://github.com/go-jose/go-jose) from 4.0.5 to 4.1.0.
- [Release notes](https://github.com/go-jose/go-jose/releases)
- [Changelog](https://github.com/go-jose/go-jose/blob/main/CHANGELOG.md)
- [Commits](https://github.com/go-jose/go-jose/compare/v4.0.5...v4.1.0)

---
updated-dependencies:
- dependency-name: github.com/go-jose/go-jose/v4
  dependency-version: 4.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Resolve test issue

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-04-08 16:43:39 -03:00
dependabot[bot] f99f8e3131
Bump github.com/sigstore/cosign/v2 from 2.4.3 to 2.5.0 (#6000)
Bumps [github.com/sigstore/cosign/v2](https://github.com/sigstore/cosign) from 2.4.3 to 2.5.0.
- [Release notes](https://github.com/sigstore/cosign/releases)
- [Changelog](https://github.com/sigstore/cosign/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/cosign/compare/v2.4.3...v2.5.0)

---
updated-dependencies:
- dependency-name: github.com/sigstore/cosign/v2
  dependency-version: 2.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-08 15:17:56 -03:00
dependabot[bot] dfb104403e
Bump github.com/go-sql-driver/mysql from 1.9.1 to 1.9.2 (#5999)
Bumps [github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) from 1.9.1 to 1.9.2.
- [Release notes](https://github.com/go-sql-driver/mysql/releases)
- [Changelog](https://github.com/go-sql-driver/mysql/blob/master/CHANGELOG.md)
- [Commits](https://github.com/go-sql-driver/mysql/compare/v1.9.1...v1.9.2)

---
updated-dependencies:
- dependency-name: github.com/go-sql-driver/mysql
  dependency-version: 1.9.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-07 19:48:02 +01:00
dependabot[bot] 9302a6ef78
Bump google.golang.org/grpc from 1.71.0 to 1.71.1 (#5998)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.71.0 to 1.71.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.71.0...v1.71.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.71.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-07 19:12:10 +01:00
dependabot[bot] 3d9a1f5ddb
Bump golang.org/x/crypto from 0.36.0 to 0.37.0 (#5995)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.36.0 to 0.37.0.
- [Commits](https://github.com/golang/crypto/compare/v0.36.0...v0.37.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.37.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-07 18:40:01 +01:00
dependabot[bot] ceee48c14e
Bump github.com/gofrs/uuid/v5 from 5.3.1 to 5.3.2 (#5978)
Bumps [github.com/gofrs/uuid/v5](https://github.com/gofrs/uuid) from 5.3.1 to 5.3.2.
- [Release notes](https://github.com/gofrs/uuid/releases)
- [Commits](https://github.com/gofrs/uuid/compare/v5.3.1...v5.3.2)

---
updated-dependencies:
- dependency-name: github.com/gofrs/uuid/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-04 22:01:20 +01:00
dependabot[bot] 7c0778b5ed
Bump github.com/uber-go/tally/v4 from 4.1.16 to 4.1.17 (#5992)
Bumps [github.com/uber-go/tally/v4](https://github.com/uber-go/tally) from 4.1.16 to 4.1.17.
- [Release notes](https://github.com/uber-go/tally/releases)
- [Commits](https://github.com/uber-go/tally/compare/v4.1.16...v4.1.17)

---
updated-dependencies:
- dependency-name: github.com/uber-go/tally/v4
  dependency-version: 4.1.17
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-04 20:40:04 +01:00
dependabot[bot] 3997503420
Bump cloud.google.com/go/iam in the google-cloud-sdk group (#5983)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/iam](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/iam` from 1.4.1 to 1.5.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/tpu/v1.4.1...ids/v1.5.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/iam
  dependency-version: 1.5.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-04 19:22:01 +01:00
dependabot[bot] 4acd4a0de8
Bump github.com/Azure/azure-sdk-for-go/sdk/azcore in the azure-sdk group (#5991)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.1 to 1.18.0
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.17.1...sdk/azcore/v1.18.0)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-version: 1.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-04 18:25:04 +01:00
dependabot[bot] a25a6527e2
Bump github.com/shirou/gopsutil/v4 from 4.25.2 to 4.25.3 (#5984)
Bumps [github.com/shirou/gopsutil/v4](https://github.com/shirou/gopsutil) from 4.25.2 to 4.25.3.
- [Release notes](https://github.com/shirou/gopsutil/releases)
- [Commits](https://github.com/shirou/gopsutil/compare/v4.25.2...v4.25.3)

---
updated-dependencies:
- dependency-name: github.com/shirou/gopsutil/v4
  dependency-version: 4.25.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-04 17:53:02 +01:00
dependabot[bot] 1c547ab293
Bump the aws-sdk group across 1 directory with 3 updates (#5986)
Bumps the aws-sdk group with 3 updates in the / directory: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2), [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.210.0 to 1.211.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.210.0...service/ec2/v1.211.0)

Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.40.0 to 1.41.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.40.0...service/s3/v1.41.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.78.0 to 1.79.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.78.0...service/s3/v1.79.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-version: 1.211.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-version: 1.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-version: 1.79.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-04 17:24:36 +01:00
dependabot[bot] c4aef297cb
Bump golang.org/x/net from 0.37.0 to 0.38.0 (#5979)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.37.0 to 0.38.0.
- [Commits](https://github.com/golang/net/compare/v0.37.0...v0.38.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-04 16:41:58 +01:00
dependabot[bot] f0f6c2018e
Bump github.com/mattn/go-sqlite3 from 1.14.24 to 1.14.27 (#5990)
Bumps [github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) from 1.14.24 to 1.14.27.
- [Release notes](https://github.com/mattn/go-sqlite3/releases)
- [Commits](https://github.com/mattn/go-sqlite3/compare/v1.14.24...v1.14.27)

---
updated-dependencies:
- dependency-name: github.com/mattn/go-sqlite3
  dependency-version: 1.14.27
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-04 16:14:20 +01:00
Dmytro A a56fb1face
Fix OIDC Discovery Provider debug log handler (#5981)
There is no UserAgent field available on Request to access. Instead, we need to use UserAgent method, which extracts the data from the header:
```
// UserAgent returns the client's User-Agent, if sent in the request.
func (r *Request) UserAgent() string {
	return r.Header.Get("User-Agent")
}
```

Signed-off-by: Dmytro A <hippers@gmail.com>
2025-04-01 15:02:10 +01:00
dependabot[bot] 3816e90181
Bump github.com/open-policy-agent/opa from 1.2.0 to 1.3.0 (#5976)
* Bump github.com/open-policy-agent/opa from 1.2.0 to 1.3.0

Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.2.0...v1.3.0)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Tidy go.mod

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-03-27 12:47:52 -07:00
Sorin Dumitru 2b23ecdef4
Cleanup some temporary checks in journal loading (#5918)
These were added a long time ago and are not needed anymore.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-03-27 18:33:37 +00:00
dependabot[bot] 84c9f8c0c5
Bump github.com/jackc/pgx/v5 from 5.7.2 to 5.7.4 (#5974)
Bumps [github.com/jackc/pgx/v5](https://github.com/jackc/pgx) from 5.7.2 to 5.7.4.
- [Changelog](https://github.com/jackc/pgx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jackc/pgx/compare/v5.7.2...v5.7.4)

---
updated-dependencies:
- dependency-name: github.com/jackc/pgx/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-26 21:51:56 -07:00
dependabot[bot] 8bb9df8d1c
Bump sigs.k8s.io/controller-runtime from 0.20.3 to 0.20.4 (#5973)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.20.3 to 0.20.4.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.20.3...v0.20.4)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-26 19:58:30 -07:00
Ryan Turner ef6b95ebd9
Bump protobuf compiler to v29.4 (#5972)
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2025-03-26 10:31:03 -07:00
dependabot[bot] 010b34ee05
Bump github.com/docker/docker (#5975)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.0.3+incompatible to 28.0.4+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v28.0.3...v28.0.4)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-26 10:06:36 -07:00
Sorin Dumitru 76adc18d21
integration tests: wait for spire-server to come up (#5967)
* integration tests: wait for spire-server to come up

We don't wait for spire-server to be up before trying to make use of it. This sometimes leads to failures in integration tests, for example when trying to read the bundle because it might not be available yet.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-03-26 06:45:07 +00:00
Sorin Dumitru af1a686c04
Add stalebot configuration for blocked issues (#5959)
In the case issues are waiting on some update or are blocked on some other project, we want to be mark those issues as stale quicker, so we can have a look at the blocking issue.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-03-25 22:02:09 -07:00
dependabot[bot] 7a9fc4ca23
Bump google.golang.org/api from 0.225.0 to 0.227.0 (#5958)
* Bump google.golang.org/api from 0.225.0 to 0.227.0

Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.225.0 to 0.227.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.225.0...v0.227.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Regenerate protos

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-03-25 20:48:50 -07:00
dependabot[bot] 2db7e8969a
Bump github.com/go-sql-driver/mysql from 1.9.0 to 1.9.1 (#5963)
Bumps [github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) from 1.9.0 to 1.9.1.
- [Release notes](https://github.com/go-sql-driver/mysql/releases)
- [Changelog](https://github.com/go-sql-driver/mysql/blob/master/CHANGELOG.md)
- [Commits](https://github.com/go-sql-driver/mysql/compare/v1.9.0...v1.9.1)

---
updated-dependencies:
- dependency-name: github.com/go-sql-driver/mysql
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-25 15:56:08 -07:00
dependabot[bot] 2317be876c
Bump github.com/Azure/azure-sdk-for-go/sdk/azcore in the azure-sdk group (#5962)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.0 to 1.17.1
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.17.0...sdk/azcore/v1.17.1)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-25 14:47:08 -07:00
dependabot[bot] 4ad6c1b55d
Bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 (#5965)
Bumps [github.com/golang-jwt/jwt/v5](https://github.com/golang-jwt/jwt) from 5.2.1 to 5.2.2.
- [Release notes](https://github.com/golang-jwt/jwt/releases)
- [Changelog](https://github.com/golang-jwt/jwt/blob/main/VERSION_HISTORY.md)
- [Commits](https://github.com/golang-jwt/jwt/compare/v5.2.1...v5.2.2)

---
updated-dependencies:
- dependency-name: github.com/golang-jwt/jwt/v5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-25 12:49:37 -07:00
dependabot[bot] acd8d02800
Bump github.com/GoogleCloudPlatform/cloudsql-proxy from 1.37.5 to 1.37.6 (#5964)
Bumps [github.com/GoogleCloudPlatform/cloudsql-proxy](https://github.com/GoogleCloudPlatform/cloudsql-proxy) from 1.37.5 to 1.37.6.
- [Release notes](https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases)
- [Changelog](https://github.com/GoogleCloudPlatform/cloud-sql-proxy/blob/v1.37.6/CHANGELOG.md)
- [Commits](https://github.com/GoogleCloudPlatform/cloudsql-proxy/compare/v1.37.5...v1.37.6)

---
updated-dependencies:
- dependency-name: github.com/GoogleCloudPlatform/cloudsql-proxy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-25 18:30:02 +00:00
dependabot[bot] 8489f7b35d
Bump github.com/docker/docker (#5971)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.0.1+incompatible to 28.0.3+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v28.0.1...v28.0.3)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-25 17:42:39 +00:00
Faisal Memon 826a819422
Add FetchRegistrationEntries API (#5910)
* Add FetchRegistrationEntries API

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Cleanup, add unit test

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Typo

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Fix linter errors

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Update pkg/server/datastore/sqlstore/sqlstore.go

Co-authored-by: Sorin Dumitru <sorin@returnze.ro>
Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Use map

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Deleted entry unit test

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Fix unit tests

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Function naming

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Cleanup, more unit tests

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Preallocate array

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Minor cleanup

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Improve unit testing

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Fix issue with selectors not showing up

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Fix linter error

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

* Fill in sql variants

Signed-off-by: Faisal Memon <fymemon@yahoo.com>

---------

Signed-off-by: Faisal Memon <fymemon@yahoo.com>
Co-authored-by: Sorin Dumitru <sorin@returnze.ro>
2025-03-24 10:08:55 +00:00
Sorin Dumitru 8f909c8422
Bump SPIRE 1.12.1 (#5968)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-03-22 12:11:54 -03:00
dependabot[bot] 458652ee47
Bump the aws-sdk group with 2 updates (#5951)
Bumps the aws-sdk group with 2 updates: [github.com/aws/aws-sdk-go-v2/service/acmpca](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/acmpca` from 1.39.0 to 1.40.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.39.0...service/s3/v1.40.0)

Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.209.0 to 1.210.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.209.0...service/ec2/v1.210.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/acmpca
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-20 14:42:40 -03:00
Sorin Dumitru ada8855749
valid_csr test: move mock clock initialisation before any operations (#5942)
Otherwise by the time we run the test the seconds of the clock might have rolled and cause us to think that the CA is valid for 1 hour - 1 second instead of 1 hour.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-03-18 15:47:07 -03:00
jananiarunachalam e35cb7eb08
Update database connections defaults (#5853)
* Update database connections defaults

Signed-off-by: jananiarunachalam <jananiarunachalam17@gmail.com>

* Update test

Signed-off-by: jananiarunachalam <jananiarunachalam17@gmail.com>

* PR comment: SetConnMaxIdleTime

Signed-off-by: jananiarunachalam <jananiarunachalam17@gmail.com>

* PR comment: update doc

Signed-off-by: jananiarunachalam <jananiarunachalam17@gmail.com>

* Update doc: 30s -> unlimited

Signed-off-by: jananiarunachalam <jananiarunachalam17@gmail.com>

* SetConnMaxLifetime -> SetConnMaxIdleTime

Signed-off-by: jananiarunachalam <jananiarunachalam17@gmail.com>

* Update doc w ConnMaxIdleTime

Signed-off-by: jananiarunachalam <jananiarunachalam17@gmail.com>

---------

Signed-off-by: jananiarunachalam <jananiarunachalam17@gmail.com>
2025-03-14 17:47:12 +00:00
dependabot[bot] ecec291c9c
Bump the k8s-io group with 5 updates (#5947)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.2` | `0.32.3` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.32.2` | `0.32.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.2` | `0.32.3` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.32.2` | `0.32.3` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.32.2` | `0.32.3` |


Updates `k8s.io/api` from 0.32.2 to 0.32.3
- [Commits](https://github.com/kubernetes/api/compare/v0.32.2...v0.32.3)

Updates `k8s.io/apimachinery` from 0.32.2 to 0.32.3
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.32.2...v0.32.3)

Updates `k8s.io/client-go` from 0.32.2 to 0.32.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.32.2...v0.32.3)

Updates `k8s.io/kube-aggregator` from 0.32.2 to 0.32.3
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.32.2...v0.32.3)

Updates `k8s.io/mount-utils` from 0.32.2 to 0.32.3
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.32.2...v0.32.3)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-14 14:36:50 +00:00
dependabot[bot] ccb4914983
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#5949)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.50.0 to 1.51.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.50.0...spanner/v1.51.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-14 13:47:18 +00:00
Amit Upadhyay 136a77dbcc
Remove the deprecated k8s_sat node attestor plugin (#5703)
Signed-off-by: Amit Upadhyay <amit.upadhyay021@outlook.com>
2025-03-14 12:47:26 +00:00
Dmitry Kartsev 84ef545c58
Adding support for publishing bundle to Minio Object Storage (#5395) (#5757)
Signed-off-by: Dmitry Kartsev <dimssss@gmail.com>
2025-03-13 18:13:40 +00:00
dependabot[bot] 40fa690c7b
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5946)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.208.0 to 1.209.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.208.0...service/ec2/v1.209.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-12 21:04:54 +00:00
dependabot[bot] 9dcdf4c362
Bump google.golang.org/api from 0.224.0 to 0.225.0 (#5948)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.224.0 to 0.225.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.224.0...v0.225.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-12 20:33:14 +00:00
Carlo Teubner f6a11a0ae0
Apply gopls modernize pass (#5909)
* Apply gopls modernize pass

Recent gopls version contain a "modernize" pass that can also be run
standalone. Run this on the spire repo, with small manual fixups
afterwards.

The command I ran was:

    go run golang.org/x/tools/gopls/internal/analysis/modernize/cmd/modernize@latest -fix ./...

Signed-off-by: Carlo Teubner <cteubner1@bloomberg.net>

* More simplifications per review comments

Signed-off-by: Carlo Teubner <cteubner1@bloomberg.net>

---------

Signed-off-by: Carlo Teubner <cteubner1@bloomberg.net>
2025-03-12 07:00:32 +00:00
Faisal Memon 384a1a99ed
Allow reads for cache events to go to RO DB (#5911)
Signed-off-by: Faisal Memon <fymemon@yahoo.com>
2025-03-11 19:38:41 +00:00
dependabot[bot] 11d5780015
Bump github.com/sigstore/sigstore from 1.9.0 to 1.9.1 (#5943)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.9.0 to 1.9.1.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.9.0...v1.9.1)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-11 17:24:55 +00:00
dependabot[bot] ca7d7d6b26
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5940)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.207.1 to 1.208.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.207.1...service/ec2/v1.208.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-11 10:54:12 +00:00
dependabot[bot] eba9465b05
Bump sigs.k8s.io/controller-runtime from 0.20.2 to 0.20.3 (#5941)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.20.2 to 0.20.3.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.20.2...v0.20.3)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-11 09:25:32 +00:00
Sorin Dumitru 266a98da1c
Update default integration test binary and image versions (#5934)
For k8s related versions I chose 1.30.10 since it's currently the oldest stable release.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-03-10 21:48:23 +00:00
Sorin Dumitru 98176459c0
Upgrade to Go 1.24.1 (#5933)
* Upgrade to go 1.24.1

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

* Also update go.mod

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

---------

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-03-10 21:22:06 +00:00
Sorin Dumitru 851dbbf451
Make 'use_sync_authorized_entries' the default (#5906)
* Make 'use_sync_authorized_entries' the default

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-03-10 20:56:31 +00:00
Kelly Kane 6670ee71da
Update to Ubuntu 24.04 base dev image image. (#5936)
Signed-off-by: Kelly Kane <kelly@hawknetworks.com>
2025-03-10 20:29:31 +00:00
dependabot[bot] 866412ade7
Bump github.com/sigstore/sigstore from 1.8.15 to 1.9.0 (#5930)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.8.15 to 1.9.0.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.8.15...v1.9.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-10 12:48:34 +00:00
dependabot[bot] 079033d370
Bump google.golang.org/api from 0.223.0 to 0.224.0 (#5929)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.223.0 to 0.224.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.223.0...v0.224.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-08 07:50:18 +00:00
Sorin Dumitru 1a4f6f0146
Default 'use_legacy_downstream_x509_ca_ttl' to false (#5917)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-03-06 21:42:17 +00:00
dependabot[bot] 267ef8e40f
Bump golang.org/x/net from 0.35.0 to 0.37.0 (#5928)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.35.0 to 0.37.0.
- [Commits](https://github.com/golang/net/compare/v0.35.0...v0.37.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-06 09:56:04 +00:00
dependabot[bot] 99f6f5bacd
Bump google.golang.org/grpc from 1.70.0 to 1.71.0 (#5926)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.70.0 to 1.71.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.70.0...v1.71.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-06 06:35:05 +00:00
dependabot[bot] 46a98d46da
Bump golang.org/x/sync from 0.11.0 to 0.12.0 (#5927)
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.11.0 to 0.12.0.
- [Commits](https://github.com/golang/sync/compare/v0.11.0...v0.12.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-05 20:44:18 +00:00
dependabot[bot] 2adcd08c2b
Bump golang.org/x/time from 0.10.0 to 0.11.0 (#5923)
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.10.0 to 0.11.0.
- [Commits](https://github.com/golang/time/compare/v0.10.0...v0.11.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-05 20:15:03 +00:00
dependabot[bot] f4bf647fe5
Bump golang.org/x/sys from 0.30.0 to 0.31.0 (#5924)
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.30.0 to 0.31.0.
- [Commits](https://github.com/golang/sys/compare/v0.30.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-05 19:00:16 +00:00
dependabot[bot] 64722ec925
Bump github.com/aws/aws-sdk-go-v2/service/ec2 (#5922)
Bumps the aws-sdk group with 1 update in the / directory: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.206.0 to 1.207.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.206.0...service/ec2/v1.207.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-05 09:49:29 +00:00
dependabot[bot] bb33927e65
Bump github.com/prometheus/client_golang from 1.21.0 to 1.21.1 (#5921)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.21.0 to 1.21.1.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.21.0...v1.21.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-05 07:57:23 +00:00
dependabot[bot] e6714a4c3f
Bump github.com/shirou/gopsutil/v4 from 4.25.1 to 4.25.2 (#5915)
Bumps [github.com/shirou/gopsutil/v4](https://github.com/shirou/gopsutil) from 4.25.1 to 4.25.2.
- [Release notes](https://github.com/shirou/gopsutil/releases)
- [Commits](https://github.com/shirou/gopsutil/compare/v4.25.1...v4.25.2)

---
updated-dependencies:
- dependency-name: github.com/shirou/gopsutil/v4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-05 07:15:54 +00:00
Ryan Turner 0057a45d64
Manage golangci-lint with `go tool` (#5914)
Go 1.24.0 gained support for managing Go tools using the `go tool` command.
Manage golangci-lint as a Go tool to simplify how it's set up and so
that we can get auto-raised Dependabot PRs for it.

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2025-03-04 21:48:44 +00:00
dependabot[bot] c98e904ba5
Bump the aws-sdk group with 8 updates (#5912)
Bumps the aws-sdk group with 8 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/service/acmpca](https://github.com/aws/aws-sdk-go-v2) | `1.38.1` | `1.39.0` |
| [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) | `1.205.0` | `1.206.0` |
| [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2) | `1.39.1` | `1.40.0` |
| [github.com/aws/aws-sdk-go-v2/service/kms](https://github.com/aws/aws-sdk-go-v2) | `1.37.18` | `1.38.0` |
| [github.com/aws/aws-sdk-go-v2/service/organizations](https://github.com/aws/aws-sdk-go-v2) | `1.37.0` | `1.38.0` |
| [github.com/aws/aws-sdk-go-v2/service/rolesanywhere](https://github.com/aws/aws-sdk-go-v2) | `1.16.0` | `1.17.0` |
| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.77.0` | `1.78.0` |
| [github.com/aws/aws-sdk-go-v2/service/secretsmanager](https://github.com/aws/aws-sdk-go-v2) | `1.34.0` | `1.35.0` |


Updates `github.com/aws/aws-sdk-go-v2/service/acmpca` from 1.38.1 to 1.39.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.38.1...service/s3/v1.39.0)

Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.205.0 to 1.206.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.205.0...service/ec2/v1.206.0)

Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.39.1 to 1.40.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ecs/v1.39.1...service/s3/v1.40.0)

Updates `github.com/aws/aws-sdk-go-v2/service/kms` from 1.37.18 to 1.38.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.38.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/kms/v1.37.18...service/s3/v1.38.0)

Updates `github.com/aws/aws-sdk-go-v2/service/organizations` from 1.37.0 to 1.38.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.38.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.37.0...service/s3/v1.38.0)

Updates `github.com/aws/aws-sdk-go-v2/service/rolesanywhere` from 1.16.0 to 1.17.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/v1.17.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.16.0...v1.17.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.77.0 to 1.78.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.77.0...service/s3/v1.78.0)

Updates `github.com/aws/aws-sdk-go-v2/service/secretsmanager` from 1.34.0 to 1.35.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.34.0...v1.35.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/acmpca
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/kms
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/organizations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/rolesanywhere
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/secretsmanager
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-02 09:58:07 +00:00
dependabot[bot] d9198c6051
Bump github.com/open-policy-agent/opa from 1.1.0 to 1.2.0 (#5913)
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.1.0...v1.2.0)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-02 06:24:27 +00:00
dependabot[bot] e2c3055005
Bump github.com/hashicorp/vault/sdk from 0.15.0 to 0.15.2 (#5908)
Bumps [github.com/hashicorp/vault/sdk](https://github.com/hashicorp/vault) from 0.15.0 to 0.15.2.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/sdk/v0.15.0...sdk/v0.15.2)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-28 15:48:15 +00:00
Ryan Turner 90c6753d30
Update to Go 1.24.0 (#5880)
* [WIP] Update to Go 1.24.0

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

* Make RSA keys in TPM unit tests larger

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

* Suppress staticcheck linter warnings for deprecated OPA v1 packages

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

* Fix merge

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

* Replace hardcoded keys with ones generated by testkey

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2025-02-28 10:37:43 +00:00
Valentin Fadeev 8a8253894e
Edited and formatted x509pop server nodeattestor doc (#5876)
* Edited and formatted x509pop server nodeattestor doc

Signed-off-by: Valentin Fadeev <vfadeev@bloomberg.net>

* applied suggestions from code review

Signed-off-by: Valentin Fadeev <vfadeev@bloomberg.net>

---------

Signed-off-by: Valentin Fadeev <vfadeev@bloomberg.net>
2025-02-28 07:53:59 +00:00
Sorin Dumitru 76f6104c37
spire-server: improve entry lookup for NewJWTSvid and BatchX509SVID requests (#5819)
* server: speed up specific entry lookup

When we know the entry or entries we are looking up we can do
a faster lookup since we only have to find and copy the entries specified
in the lookup request.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-02-28 06:28:24 +00:00
dependabot[bot] 9307432c4f
Bump github.com/google/go-tpm-tools from 0.4.4 to 0.4.5 (#5907)
Bumps [github.com/google/go-tpm-tools](https://github.com/google/go-tpm-tools) from 0.4.4 to 0.4.5.
- [Release notes](https://github.com/google/go-tpm-tools/releases)
- [Changelog](https://github.com/google/go-tpm-tools/blob/main/.goreleaser.yaml)
- [Commits](https://github.com/google/go-tpm-tools/compare/v0.4.4...v0.4.5)

---
updated-dependencies:
- dependency-name: github.com/google/go-tpm-tools
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-27 16:09:04 -03:00
dependabot[bot] 81cc2c173c
Bump github.com/aws/aws-sdk-go-v2/service/ec2 (#5903)
Bumps the aws-sdk group with 1 update in the / directory: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.203.0 to 1.205.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.203.0...service/ec2/v1.205.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-27 11:01:40 +00:00
dependabot[bot] 8175933e52
Bump github.com/go-jose/go-jose/v3 from 3.0.3 to 3.0.4 (#5904)
Bumps [github.com/go-jose/go-jose/v3](https://github.com/go-jose/go-jose) from 3.0.3 to 3.0.4.
- [Release notes](https://github.com/go-jose/go-jose/releases)
- [Changelog](https://github.com/go-jose/go-jose/blob/main/CHANGELOG.md)
- [Commits](https://github.com/go-jose/go-jose/compare/v3.0.3...v3.0.4)

---
updated-dependencies:
- dependency-name: github.com/go-jose/go-jose/v3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-27 09:29:34 +00:00
dependabot[bot] 67b2d2230f
Bump google.golang.org/api from 0.222.0 to 0.223.0 (#5900)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.222.0 to 0.223.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.222.0...v0.223.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-27 07:42:30 +00:00
dependabot[bot] dd52118e19
Bump golang.org/x/crypto from 0.33.0 to 0.35.0 (#5898)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.33.0 to 0.35.0.
- [Commits](https://github.com/golang/crypto/compare/v0.33.0...v0.35.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-27 07:00:54 +00:00
dependabot[bot] ebbf4516a9
Bump github.com/docker/docker (#5901)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 28.0.0+incompatible to 28.0.1+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v28.0.0...v28.0.1)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-26 21:45:01 +00:00
dependabot[bot] 7d03385f70
Bump github.com/google/go-cmp from 0.6.0 to 0.7.0 (#5897)
Bumps [github.com/google/go-cmp](https://github.com/google/go-cmp) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/google/go-cmp/releases)
- [Commits](https://github.com/google/go-cmp/compare/v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: github.com/google/go-cmp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-25 15:20:41 -03:00
dependabot[bot] 73a1ddb8bb
Bump github.com/go-jose/go-jose/v4 from 4.0.4 to 4.0.5 (#5895)
Bumps [github.com/go-jose/go-jose/v4](https://github.com/go-jose/go-jose) from 4.0.4 to 4.0.5.
- [Release notes](https://github.com/go-jose/go-jose/releases)
- [Changelog](https://github.com/go-jose/go-jose/blob/main/CHANGELOG.md)
- [Commits](https://github.com/go-jose/go-jose/compare/v4.0.4...v4.0.5)

---
updated-dependencies:
- dependency-name: github.com/go-jose/go-jose/v4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-25 14:54:48 -03:00
dependabot[bot] 2ae3be687f
Bump github.com/docker/docker from 27.5.1+incompatible to 28.0.0+incompatible (#5890)
* Bump github.com/docker/docker

Bumps [github.com/docker/docker](https://github.com/docker/docker) from 27.5.1+incompatible to 28.0.0+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.5.1...v28.0.0)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Stop using deprecated types

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-02-21 12:38:24 -08:00
dependabot[bot] 1a52b23ea1
Bump cloud.google.com/go/kms in the google-cloud-sdk group (#5891)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/kms](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/kms` from 1.20.5 to 1.21.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/kms/v1.20.5...kms/v1.21.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/kms
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-21 10:09:54 -08:00
Carlo Teubner 5f3487ed5a
golangci-lint: update to latest version & related tweaks (#5737)
* Update golangci-lint to latest version & tweaks

The latest golangci-lint version comes with two new detected issues,
both of which we choose to silence here:

1) staticcheck: Deprecation of (crypto/x509).CertPool.Subjects():
   This is still useful to us in the tests and there seems to be no good
   alternative (we use it merely to count the number of certs).
2) gosec: Potential integer overflow:
   This is a potentially useful check, but I didn't want to address this
   as part of this PR. https://github.com/ccoVeille/go-safecast might be
   useful for this (in fact it looks like it was inspired by the recent
   addition of this gosec rule).

Additionally, change the Makefile to tell golangci-lint to emit all
lints, as opposed to imposing its default limits. Those limits could
actually be misleading, as it could e.g. lead to someone disabling lints
without having seen all the reported issues.

Signed-off-by: Carlo Teubner <cteubner1@bloomberg.net>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-02-20 15:08:00 -08:00
dependabot[bot] fc71cb9ba4
Bump github.com/aws/smithy-go from 1.22.2 to 1.22.3 (#5888)
Bumps [github.com/aws/smithy-go](https://github.com/aws/smithy-go) from 1.22.2 to 1.22.3.
- [Release notes](https://github.com/aws/smithy-go/releases)
- [Changelog](https://github.com/aws/smithy-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws/smithy-go/compare/v1.22.2...v1.22.3)

---
updated-dependencies:
- dependency-name: github.com/aws/smithy-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-20 12:27:46 -08:00
dependabot[bot] 9b00a58ceb
Bump github.com/sigstore/cosign/v2 from 2.4.1 to 2.4.3 (#5886)
Bumps [github.com/sigstore/cosign/v2](https://github.com/sigstore/cosign) from 2.4.1 to 2.4.3.
- [Release notes](https://github.com/sigstore/cosign/releases)
- [Changelog](https://github.com/sigstore/cosign/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/cosign/compare/v2.4.1...v2.4.3)

---
updated-dependencies:
- dependency-name: github.com/sigstore/cosign/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-20 11:35:47 -08:00
dependabot[bot] e755bddad7
Bump github.com/GoogleCloudPlatform/cloudsql-proxy from 1.37.4 to 1.37.5 (#5889)
Bumps [github.com/GoogleCloudPlatform/cloudsql-proxy](https://github.com/GoogleCloudPlatform/cloudsql-proxy) from 1.37.4 to 1.37.5.
- [Release notes](https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases)
- [Changelog](https://github.com/GoogleCloudPlatform/cloud-sql-proxy/blob/v1.37.5/CHANGELOG.md)
- [Commits](https://github.com/GoogleCloudPlatform/cloudsql-proxy/compare/v1.37.4...v1.37.5)

---
updated-dependencies:
- dependency-name: github.com/GoogleCloudPlatform/cloudsql-proxy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-20 11:07:59 -08:00
Shiva Shankar Bidadi Nanjundasamy 4878988646
Add support for San selectors in x509pop node attestor plugin (#5775)
* Add support for San selectors in x509pop node attestor plugin

Signed-off-by: snanjundaswamy <snanjundaswamy@roblox.com>

* modified plugin to use first part in the URI path to be the key of the selector

Signed-off-by: snanjundaswamy <snanjundaswamy@roblox.com>

* removed warning for non-x509pop scheme based sans and redundant selector sorting method

Signed-off-by: snanjundaswamy <snanjundaswamy@roblox.com>

* reformatted x509pop san selector table and fixed log message in san selector parsing logic

Signed-off-by: snanjundaswamy <snanjundaswamy@roblox.com>

---------

Signed-off-by: snanjundaswamy <snanjundaswamy@roblox.com>
2025-02-20 08:44:09 +00:00
dependabot[bot] 653410069c
Bump google.golang.org/api from 0.220.0 to 0.222.0 (#5885)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.220.0 to 0.222.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.220.0...v0.222.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-19 15:42:12 -08:00
dependabot[bot] 518176b889
Bump github.com/prometheus/client_golang from 1.20.5 to 1.21.0 (#5884)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.5 to 1.21.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.5...v1.21.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-19 15:15:44 -08:00
Sorin Dumitru 532b51964e
Upgrade to OPA v1 (#5769)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-02-19 13:16:42 -08:00
dependabot[bot] 95d7f9fa06
Bump github.com/go-sql-driver/mysql from 1.8.1 to 1.9.0 (#5883)
Bumps [github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/go-sql-driver/mysql/releases)
- [Changelog](https://github.com/go-sql-driver/mysql/blob/master/CHANGELOG.md)
- [Commits](https://github.com/go-sql-driver/mysql/compare/v1.8.1...v1.9.0)

---
updated-dependencies:
- dependency-name: github.com/go-sql-driver/mysql
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-19 12:52:20 -08:00
dependabot[bot] 85461f1175
Bump github.com/sigstore/sigstore from 1.8.12 to 1.8.15 (#5882)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.8.12 to 1.8.15.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.8.12...v1.8.15)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-19 12:01:08 -08:00
Sorin Dumitru 3fe67eabc7
spire: switch logs to include nanoseconds (#5798)
It makes a bit easier to look at the timing of things inside the server and agent.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-02-19 07:18:53 -08:00
dependabot[bot] 37736e0d96
Bump sigs.k8s.io/controller-runtime from 0.20.1 to 0.20.2 (#5879)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.20.1 to 0.20.2.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.20.1...v0.20.2)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-18 22:27:35 -08:00
dependabot[bot] 73a5705ddf
Bump the google-cloud-sdk group with 4 updates (#5877)
Bumps the google-cloud-sdk group with 4 updates: [cloud.google.com/go/iam](https://github.com/googleapis/google-cloud-go), [cloud.google.com/go/kms](https://github.com/googleapis/google-cloud-go), [cloud.google.com/go/secretmanager](https://github.com/googleapis/google-cloud-go) and [cloud.google.com/go/security](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/iam` from 1.3.0 to 1.4.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/run/v1.3.0...iap/v1.4.0)

Updates `cloud.google.com/go/kms` from 1.20.4 to 1.20.5
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/kms/v1.20.4...kms/v1.20.5)

Updates `cloud.google.com/go/secretmanager` from 1.14.2 to 1.14.3
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/dlp/v1.14.2...dlp/v1.14.3)

Updates `cloud.google.com/go/security` from 1.18.2 to 1.18.3
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/kms/v1.18.2...kms/v1.18.3)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
- dependency-name: cloud.google.com/go/kms
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: google-cloud-sdk
- dependency-name: cloud.google.com/go/secretmanager
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: google-cloud-sdk
- dependency-name: cloud.google.com/go/security
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-18 17:12:08 -08:00
Sorin Dumitru eae6b6da1b
SyncAuthorizedEntries: fix issue with entry id reuse and add integration test (#5764)
* Integration test for sync-authorized-entries

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Ryan Turner <rturner3@users.noreply.github.com>
2025-02-18 13:07:20 -08:00
dependabot[bot] b9a5cb360e
Bump the k8s-io group with 5 updates (#5878)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.1` | `0.32.2` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.32.1` | `0.32.2` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.1` | `0.32.2` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.32.1` | `0.32.2` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.32.1` | `0.32.2` |


Updates `k8s.io/api` from 0.32.1 to 0.32.2
- [Commits](https://github.com/kubernetes/api/compare/v0.32.1...v0.32.2)

Updates `k8s.io/apimachinery` from 0.32.1 to 0.32.2
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.32.1...v0.32.2)

Updates `k8s.io/client-go` from 0.32.1 to 0.32.2
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.32.1...v0.32.2)

Updates `k8s.io/kube-aggregator` from 0.32.1 to 0.32.2
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.32.1...v0.32.2)

Updates `k8s.io/mount-utils` from 0.32.1 to 0.32.2
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.32.1...v0.32.2)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-18 12:31:43 -08:00
dependabot[bot] ec2a110073
Bump github.com/hashicorp/vault/api from 1.15.0 to 1.16.0 (#5862)
Bumps [github.com/hashicorp/vault/api](https://github.com/hashicorp/vault) from 1.15.0 to 1.16.0.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/v1.15.0...v1.16.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-17 00:19:11 -03:00
dependabot[bot] 1d2aba2969
Bump the aws-sdk group across 1 directory with 3 updates (#5875)
Bumps the aws-sdk group with 3 updates in the / directory: [github.com/aws/aws-sdk-go-v2/service/acmpca](https://github.com/aws/aws-sdk-go-v2), [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/acmpca` from 1.37.0 to 1.38.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.38.1/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.37.0...service/s3/v1.38.1)

Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.202.1 to 1.203.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.202.1...service/ec2/v1.203.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.76.0 to 1.77.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.76.0...service/s3/v1.77.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/acmpca
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-16 23:38:00 -03:00
dependabot[bot] b18dad4332
Bump github.com/Azure/azure-sdk-for-go/sdk/azidentity (#5868)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azidentity` from 1.8.1 to 1.8.2
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azidentity/v1.8.1...sdk/azidentity/v1.8.2)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-16 22:32:48 -03:00
jzeng04 9754ba1936
Change return type of keymanagerbase Generator to crypto.Signer (#5843)
Signed-off-by: jzeng4 <jzeng04@gmail.com>
2025-02-16 19:03:25 -03:00
Keegan Witt f48d0218c9
Fix spelling error (#5873)
Signed-off-by: Keegan Witt <keeganwitt@gmail.com>
2025-02-16 18:03:55 -03:00
Marcos Yacob b9bfb4f198
Bump spire 1.12.0 (#5870)
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2025-02-16 15:29:48 -03:00
dependabot[bot] 05a8531190
Bump github.com/hashicorp/vault/sdk from 0.14.1 to 0.15.0 (#5866)
Bumps [github.com/hashicorp/vault/sdk](https://github.com/hashicorp/vault) from 0.14.1 to 0.15.0.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/sdk/v0.14.1...sdk/v0.15.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-12 18:25:35 -03:00
dependabot[bot] 53574b864b
Bump github.com/gofrs/uuid/v5 from 5.3.0 to 5.3.1 (#5861)
Bumps [github.com/gofrs/uuid/v5](https://github.com/gofrs/uuid) from 5.3.0 to 5.3.1.
- [Release notes](https://github.com/gofrs/uuid/releases)
- [Commits](https://github.com/gofrs/uuid/compare/v5.3.0...v5.3.1)

---
updated-dependencies:
- dependency-name: github.com/gofrs/uuid/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 16:26:39 -03:00
dependabot[bot] 2bcb0f0a69
Bump github.com/shirou/gopsutil/v4 from 4.24.12 to 4.25.1 (#5857)
Bumps [github.com/shirou/gopsutil/v4](https://github.com/shirou/gopsutil) from 4.24.12 to 4.25.1.
- [Release notes](https://github.com/shirou/gopsutil/releases)
- [Commits](https://github.com/shirou/gopsutil/compare/v4.24.12...v4.25.1)

---
updated-dependencies:
- dependency-name: github.com/shirou/gopsutil/v4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 14:58:59 -03:00
dependabot[bot] db984991bb
Bump golang.org/x/crypto from 0.32.0 to 0.33.0 (#5858)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.32.0 to 0.33.0.
- [Commits](https://github.com/golang/crypto/compare/v0.32.0...v0.33.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-10 21:42:13 +00:00
dependabot[bot] 7ef7e19d7d
Bump github.com/envoyproxy/go-control-plane/envoy from 1.32.3 to 1.32.4 (#5838)
Bumps [github.com/envoyproxy/go-control-plane/envoy](https://github.com/envoyproxy/go-control-plane) from 1.32.3 to 1.32.4.
- [Release notes](https://github.com/envoyproxy/go-control-plane/releases)
- [Changelog](https://github.com/envoyproxy/go-control-plane/blob/main/CHANGELOG.md)
- [Commits](https://github.com/envoyproxy/go-control-plane/compare/envoy/v1.32.3...envoy/v1.32.4)

---
updated-dependencies:
- dependency-name: github.com/envoyproxy/go-control-plane/envoy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-09 22:10:16 +00:00
dependabot[bot] fd833dcd18
Bump google.golang.org/protobuf from 1.36.4 to 1.36.5 (#5851)
* Bump google.golang.org/protobuf from 1.36.4 to 1.36.5

Bumps google.golang.org/protobuf from 1.36.4 to 1.36.5.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Regenerate protobuf files

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-02-09 21:20:05 +00:00
dependabot[bot] 1b343d9c4b
Bump the aws-sdk group across 1 directory with 2 updates (#5849)
Bumps the aws-sdk group with 2 updates in the / directory: [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.38.1 to 1.39.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.38.1...service/ecs/v1.39.1)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.75.1 to 1.76.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.75.1...service/s3/v1.76.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-09 20:22:19 +00:00
dependabot[bot] 03fee0ee5d
Bump golang.org/x/sync from 0.10.0 to 0.11.0 (#5852)
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.10.0 to 0.11.0.
- [Commits](https://github.com/golang/sync/compare/v0.10.0...v0.11.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-09 19:52:46 +00:00
Sorin Dumitru 9e098516cc
server: check NotAfter when loading journal (#5836)
Otherwise we can end up with expired CAs which leads to issues

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-02-06 20:55:44 +00:00
Sorin Dumitru 433a9b218a
Upgrade to go 1.23.6 (#5844)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-02-06 20:07:19 +00:00
Sorin Dumitru 5f2eb42962
Fix events based cache issues introduced in 1.11.0 (#5842)
* First capture last and skipped events before loading cache

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

* events cache: don't drop entries that were not fetched

If we encounter issues fetching any of the entries we need
to fetch we should retry later.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>

---------

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-02-06 19:39:06 +00:00
dependabot[bot] 5c619829a5
Bump google.golang.org/api from 0.219.0 to 0.220.0 (#5846)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.219.0 to 0.220.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.219.0...v0.220.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-06 18:42:59 +00:00
dependabot[bot] 5f74f356fa
Bump golang.org/x/time from 0.9.0 to 0.10.0 (#5847)
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.9.0 to 0.10.0.
- [Commits](https://github.com/golang/time/compare/v0.9.0...v0.10.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-06 18:12:13 +00:00
kfox1111 03f3db9661
[oidc-discovery-provider] Fix keys url (#5690)
* [oidc-discovery-provider] Fix keys url

When jwt_issuer is specified, it is overriding the jwks key url in
addition to the issuer property. This may cause the subsequent key
retrieval to hit the wrong server, or fail if that server doesn't
actually exist.

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Update tests

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Add advertised_url support

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Simplify change

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Revert domain name check

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Add prefix support

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Cleanup

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix typo

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Update names after feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix typo

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix tests

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix test

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Add test for compat behavior. Fix lint.

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix lint

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Update docs

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Incorperate feedback

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix lint issue

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

---------

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-02-06 14:34:03 +00:00
dependabot[bot] f120f0a9a3
Bump github.com/aws/aws-sdk-go-v2 from 1.35.0 to 1.36.0 (#5834)
Bumps [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) from 1.35.0 to 1.36.0.
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.35.0...v1.36.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-04 11:11:42 +00:00
Sorin Dumitru 447bf18382
sdsv3: Don't log error when connection closes (#5835)
If we receive a nil error on the errch it means that the connection
has been closed cleanly. We shouldn't log an error in that case.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-02-04 08:46:09 +00:00
dependabot[bot] b9de1fe94d
Bump github.com/docker/docker (#5839)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 27.5.0+incompatible to 27.5.1+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.5.0...v27.5.1)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-04 07:45:10 +00:00
dependabot[bot] 7d36608324
Bump github.com/spiffe/go-spiffe/v2 from 2.4.0 to 2.5.0 (#5840)
Bumps [github.com/spiffe/go-spiffe/v2](https://github.com/spiffe/go-spiffe) from 2.4.0 to 2.5.0.
- [Release notes](https://github.com/spiffe/go-spiffe/releases)
- [Changelog](https://github.com/spiffe/go-spiffe/blob/main/CHANGELOG.md)
- [Commits](https://github.com/spiffe/go-spiffe/compare/v2.4.0...v2.5.0)

---
updated-dependencies:
- dependency-name: github.com/spiffe/go-spiffe/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-04 07:14:21 +00:00
Sorin Dumitru ba81582525
Use a temporary file for the fakedatastore (#5815)
With a in memory sqlite datastore the database gets cleaned up when all connections to it get closed. If that happens, the next connection to be opened will see an empty database and usually error out.

I've noticed this in tests ocassionally and this seems to make running the db using  not fail.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-02-03 15:03:35 +00:00
dependabot[bot] 925bc9c644
Bump sigs.k8s.io/controller-runtime from 0.20.0 to 0.20.1 (#5833)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.20.0 to 0.20.1.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.20.0...v0.20.1)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-03 10:45:49 +00:00
dependabot[bot] 8a49547ff2
Bump github.com/hashicorp/go-plugin from 1.6.2 to 1.6.3 (#5832)
Bumps [github.com/hashicorp/go-plugin](https://github.com/hashicorp/go-plugin) from 1.6.2 to 1.6.3.
- [Release notes](https://github.com/hashicorp/go-plugin/releases)
- [Changelog](https://github.com/hashicorp/go-plugin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/go-plugin/compare/v1.6.2...v1.6.3)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/go-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-03 10:11:53 +00:00
dependabot[bot] ba05cb7f35
Bump the aws-sdk group across 1 directory with 2 updates (#5830)
Bumps the aws-sdk group with 2 updates in the / directory: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.200.0 to 1.202.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.200.0...service/ec2/v1.202.1)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.73.0 to 1.75.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.73.0...service/s3/v1.75.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-01 07:41:47 +00:00
Sorin Dumitru 79dc6c0351
Fix flaky test TestUpstreamProcessTaintedAuthorityBackoff (#5805)
We need to wait for the backoff to hit the clock.After() call before moving the clock

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-01-31 12:18:18 -03:00
Agustín Martínez Fayó f21ab10c98
Introduce Sorin Dumitru as a CODEOWNER (#5827)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-01-30 18:36:31 -03:00
dependabot[bot] 6952f3c5f9
Bump github.com/sigstore/rekor from 1.3.8 to 1.3.9 (#5825)
Bumps [github.com/sigstore/rekor](https://github.com/sigstore/rekor) from 1.3.8 to 1.3.9.
- [Release notes](https://github.com/sigstore/rekor/releases)
- [Changelog](https://github.com/sigstore/rekor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/rekor/compare/v1.3.8...v1.3.9)

---
updated-dependencies:
- dependency-name: github.com/sigstore/rekor
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-30 18:09:03 -03:00
dependabot[bot] 81c4d29107
Bump google.golang.org/api from 0.217.0 to 0.219.0 (#5823)
* Bump google.golang.org/api from 0.217.0 to 0.219.0

Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.217.0 to 0.219.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.217.0...v0.219.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Regenerate .pb.go files

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-01-30 16:09:51 -03:00
dependabot[bot] 138f283d7d
Bump github.com/aws/aws-sdk-go-v2 from 1.33.0 to 1.34.0 (#5820)
Bumps [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) from 1.33.0 to 1.34.0.
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.33.0...v1.34.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-28 16:55:07 -03:00
Carlo Teubner 33f2cc9a90
golangci-lint: enable copyloopvar & address issues (#5741)
Add the copyloopvar linter, which enforces not creating explicit copies
of the for loop iterator variable, which is no longer necessary as of
Go 1.22.

Signed-off-by: Carlo Teubner <carlo@cteubner.net>
2025-01-28 15:05:29 -03:00
dependabot[bot] 93587cc58e
Bump github.com/sigstore/rekor from 1.3.7 to 1.3.8 (#5800)
Bumps [github.com/sigstore/rekor](https://github.com/sigstore/rekor) from 1.3.7 to 1.3.8.
- [Release notes](https://github.com/sigstore/rekor/releases)
- [Changelog](https://github.com/sigstore/rekor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/rekor/compare/v1.3.7...v1.3.8)

---
updated-dependencies:
- dependency-name: github.com/sigstore/rekor
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-24 16:46:28 -03:00
Caleb Jonasson 605a4ca239
Docker documentation was incorrectly referencing an invalid tag format (#5809)
Signed-off-by: calebjonasson <caleb.jonasson@gmail.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-01-24 15:26:54 -03:00
Sorin Dumitru ab1b3411e8
Close fakedatastore when test finishes (#5804)
Generally this isn't needed because the DB object gets cleaned up when the process exits. But when running  I something get crashes with lots of goroutine stack traces from database pools.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-01-24 13:16:33 -03:00
Ryan Turner 26f547d08b
Update to Go 1.23.5 (#5795)
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2025-01-24 12:44:03 -03:00
Sorin Dumitru aa532ce382
Temporarily ignore kindes/node:v1.32.1 to unblock CI (#5814)
See https://github.com/kubernetes-sigs/kind/issues/3853 for issues

fixes #5812

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-01-24 11:47:15 -03:00
dependabot[bot] c71fc9111a
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5799)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.199.1 to 1.200.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.199.1...service/ec2/v1.200.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-23 10:38:32 -03:00
dependabot[bot] 50976c35a4
Bump github.com/GoogleCloudPlatform/cloudsql-proxy from 1.37.3 to 1.37.4 (#5794)
Bumps [github.com/GoogleCloudPlatform/cloudsql-proxy](https://github.com/GoogleCloudPlatform/cloudsql-proxy) from 1.37.3 to 1.37.4.
- [Release notes](https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases)
- [Changelog](https://github.com/GoogleCloudPlatform/cloud-sql-proxy/blob/v1.37.4/CHANGELOG.md)
- [Commits](https://github.com/GoogleCloudPlatform/cloudsql-proxy/compare/v1.37.3...v1.37.4)

---
updated-dependencies:
- dependency-name: github.com/GoogleCloudPlatform/cloudsql-proxy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 16:05:57 -03:00
dependabot[bot] 349018c3da
Bump github.com/google/go-containerregistry from 0.20.2 to 0.20.3 (#5792)
Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.20.2 to 0.20.3.
- [Release notes](https://github.com/google/go-containerregistry/releases)
- [Changelog](https://github.com/google/go-containerregistry/blob/main/.goreleaser.yml)
- [Commits](https://github.com/google/go-containerregistry/compare/v0.20.2...v0.20.3)

---
updated-dependencies:
- dependency-name: github.com/google/go-containerregistry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-21 11:25:25 -03:00
Ryan Turner 5521b425e7
Remove usage of deprecated grpc-go methods (#5725)
* Remove usage of deprecated grpc-go methods

Replace usage of deprecated `grpc.Dial()`/`grpc.DialContext()` methods
with `grpc.NewClient()`. Also remove usage of `grpc.WithBlock()`,
`grpc.FailOnNonTempDialError()`, and `grpc.WithReturnConnectionError()`
options.

The combination of these changes results in a couple behavioral changes
when setting up gRPC clients:

1. gRPC will no longer dial when creating the client. Instead, it will
wait until the client is used for the first time with an RPC invocation.

2. gRPC uses the DNS resolver by default when building the
`*grpc.ClientConn` using `grpc.NewClient()`, whereas previously it used
to resolve addresses the `passthrough` resolver by default. The result
of this change in behavior is that for any invocations of
`grpc.Dial()`/`grpc.DialContext()` that did not specify a URI scheme,
gRPC now implicitly tries to resolve the address passed to
`grpc.NewClient()` using DNS. This breaks some assumptions in the code.
The workaround to preserve the previous address resolution behavior is
to prepend addresses with no scheme defined with the resolver URI scheme
`passthrough:`.

Also refactored some test-related code in `cmd/spire-server/cli/common`
into a new `test/clitest` package, since it is not intended
for use in production code.

Fixes #5152.

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2025-01-20 13:38:55 -03:00
jenshornan 05c641aa0b
Svidstore gcp region (#5718)
* Add support for regions
* Add support for multiple regions
* Add that regions selector is immutable

Signed-off-by: Jens Hörnström <jens.hornstrom@gmail.com>
2025-01-20 13:08:10 -03:00
dependabot[bot] 50d73f49b5
Bump google.golang.org/protobuf from 1.36.2 to 1.36.3 (#5791)
* Bump google.golang.org/protobuf from 1.36.2 to 1.36.3

Bumps google.golang.org/protobuf from 1.36.2 to 1.36.3.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Regenerate .pb.go files

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-01-20 12:39:26 -03:00
dependabot[bot] 23b524356b
Bump github.com/docker/docker (#5793)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 27.4.1+incompatible to 27.5.0+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.4.1...v27.5.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-17 13:42:02 -08:00
dependabot[bot] 5015374576
Bump github.com/hashicorp/vault/sdk from 0.14.0 to 0.14.1 (#5790)
Bumps [github.com/hashicorp/vault/sdk](https://github.com/hashicorp/vault) from 0.14.0 to 0.14.1.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG-v1.10-v1.15.md)
- [Commits](https://github.com/hashicorp/vault/compare/sdk/v0.14.0...sdk/v0.14.1)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-17 11:19:07 -08:00
dependabot[bot] 4e2bc5ed30
Bump github.com/Azure/azure-sdk-for-go/sdk/azidentity (#5785)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azidentity` from 1.8.0 to 1.8.1
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.8.0...sdk/azidentity/v1.8.1)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-16 13:31:31 -08:00
dependabot[bot] a208df7186
Bump sigs.k8s.io/controller-runtime from 0.19.4 to 0.20.0 (#5787)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.19.4 to 0.20.0.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.19.4...v0.20.0)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-16 11:35:25 -08:00
dependabot[bot] 87f5a06f2d
Bump the k8s-io group with 5 updates (#5786)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.0` | `0.32.1` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.32.0` | `0.32.1` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.0` | `0.32.1` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.32.0` | `0.32.1` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.32.0` | `0.32.1` |


Updates `k8s.io/api` from 0.32.0 to 0.32.1
- [Commits](https://github.com/kubernetes/api/compare/v0.32.0...v0.32.1)

Updates `k8s.io/apimachinery` from 0.32.0 to 0.32.1
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.32.0...v0.32.1)

Updates `k8s.io/client-go` from 0.32.0 to 0.32.1
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.32.0...v0.32.1)

Updates `k8s.io/kube-aggregator` from 0.32.0 to 0.32.1
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.32.0...v0.32.1)

Updates `k8s.io/mount-utils` from 0.32.0 to 0.32.1
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.32.0...v0.32.1)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-16 11:07:10 -08:00
dependabot[bot] f091810e5c
Bump the aws-sdk group with 5 updates (#5784)
Bumps the aws-sdk group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.28.3` | `1.29.0` |
| [github.com/aws/aws-sdk-go-v2/credentials](https://github.com/aws/aws-sdk-go-v2) | `1.17.44` | `1.17.53` |
| [github.com/aws/aws-sdk-go-v2/feature/ec2/imds](https://github.com/aws/aws-sdk-go-v2) | `1.16.19` | `1.16.24` |
| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.72.0` | `1.73.0` |
| [github.com/aws/aws-sdk-go-v2/service/sts](https://github.com/aws/aws-sdk-go-v2) | `1.33.1` | `1.33.8` |


Updates `github.com/aws/aws-sdk-go-v2/config` from 1.28.3 to 1.29.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.28.3...v1.29.0)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.44 to 1.17.53
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/credentials/v1.17.44...credentials/v1.17.53)

Updates `github.com/aws/aws-sdk-go-v2/feature/ec2/imds` from 1.16.19 to 1.16.24
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ram/v1.16.19...service/ram/v1.16.24)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.72.0 to 1.73.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.72.0...service/s3/v1.73.0)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.33.1 to 1.33.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.33.1...service/fms/v1.33.8)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/ec2/imds
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-16 10:14:28 -08:00
dependabot[bot] 5012e1bed8
Bump github.com/hashicorp/go-metrics from 0.5.3 to 0.5.4 (#5782)
Bumps [github.com/hashicorp/go-metrics](https://github.com/hashicorp/go-metrics) from 0.5.3 to 0.5.4.
- [Release notes](https://github.com/hashicorp/go-metrics/releases)
- [Commits](https://github.com/hashicorp/go-metrics/compare/v0.5.3...v0.5.4)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/go-metrics
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-15 11:54:47 -08:00
dependabot[bot] 6b6c0e1d74
Bump google.golang.org/api from 0.214.0 to 0.217.0 (#5781)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.214.0 to 0.217.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.214.0...v0.217.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-15 11:25:23 -08:00
dependabot[bot] a93df1d9c8
Bump google.golang.org/grpc from 1.69.2 to 1.69.4 (#5779)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.69.2 to 1.69.4.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.69.2...v1.69.4)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-15 10:49:15 -08:00
dependabot[bot] 278521c793
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5777)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.198.0 to 1.199.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.198.0...service/ec2/v1.199.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-15 10:18:18 -08:00
dependabot[bot] d272210700
Bump actions/upload-artifact from 4.4.3 to 4.6.0 (#5773)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.4.3 to 4.6.0.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](b4b15b8c7c...65c4c4a1dd)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-14 17:08:02 -08:00
dependabot[bot] ac1e60fd83
Bump github.com/sigstore/sigstore from 1.8.11 to 1.8.12 (#5767)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.8.11 to 1.8.12.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.8.11...v1.8.12)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-14 16:40:09 -08:00
Ryan Turner 07bfe791a5
Clean up integration test Docker warnings (#5762)
Docker doesn't like it when Dockerfile keywords on the same line don't
match in capitalization, e.g. `FROM foo as bar`.

Also remove deprecated `version` property from a Docker Compose file.

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-01-14 16:10:40 -08:00
dependabot[bot] f118a472a8
Bump sigs.k8s.io/controller-runtime from 0.19.3 to 0.19.4 (#5768)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.19.3 to 0.19.4.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.19.3...v0.19.4)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-14 14:56:26 -08:00
Ryan Turner 6a22b99dfc
Remove github.com/zeebo/errs dependency (#5716)
* Remove github.com/zeebo/errs dependency

We don't really use this dependency for much other than to group some
errors together with a common error message prefix. The same can now
be accomplished with a couple custom error types and the `errors`
standard library package.

This package also wasn't consistently adopted throughout the project, so
at this point it's probably better to just rely on the standard library
functionality, since it's sufficient for the project's use cases.

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2025-01-14 13:37:53 -08:00
dependabot[bot] 649411e07c
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#5765)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.49.0 to 1.50.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.49.0...spanner/v1.50.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-14 12:56:47 -08:00
Sorin Dumitru c780197273
Upgrade protobuf dependency to 1.36.2 (#5772)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-01-14 16:47:17 -03:00
Grace Ajibade a49eaad627
Enable optional trust domain label for all metrics (#5673)
* Enable optional trust domain label for all metrics

Signed-off-by: gajibade <gajibade@bloomberg.net>

* Added enableTrustDomainLabel to MetricsConfig and updated tests

Signed-off-by: gajibade <gajibade@bloomberg.net>

* Clean up

Signed-off-by: gajibade <gajibade@bloomberg.net>

* clean up

Signed-off-by: gajibade <gajibade@bloomberg.net>

---------

Signed-off-by: gajibade <gajibade@bloomberg.net>
Co-authored-by: gajibade <gajibade@bloomberg.net>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-01-09 17:37:35 -03:00
Carlo Teubner ddabe36ae4
golangci-lint: add nilerr & misc error reporting improvements (#5742)
* golangci-lint: add nilerr & address issues

Signed-off-by: Carlo Teubner <carlo@cteubner.net>

* Change a few 'errors.New' to 'fmt.Errorf'

These were not found by a linter but just something I noticed where it
would be better to include a bit more info.

Signed-off-by: Carlo Teubner <carlo@cteubner.net>

---------

Signed-off-by: Carlo Teubner <carlo@cteubner.net>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2025-01-09 16:34:19 -03:00
Carlo Teubner 68ee015453
golangci-lint: add gofmt (#5738)
Note that unlike goimports (which we already use and which includes most
of the gofmt functionality), this gofmt linter is equivalent to "gofmt
-s" i.e. including some code simplifications.

Bring current code base into compliance with the new linter.

Signed-off-by: Carlo Teubner <carlo@cteubner.net>
2025-01-09 15:57:20 -03:00
dependabot[bot] 15e08ba8d6
Bump github.com/Azure/azure-sdk-for-go/sdk/azcore in the azure-sdk group (#5763)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.16.0 to 1.17.0
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.16.0...sdk/azcore/v1.17.0)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-09 11:46:55 -03:00
Nikhil Babu df376209ea
Update regctl-installer dependency to latest SHA for Github Actions (#5730)
Signed-off-by: Nikhil Babu <nikhilbabu213@gmail.com>
2025-01-09 08:54:04 -03:00
Carlo Teubner bd0a2a00d5
golangci-lint: add intrange & update code (#5740)
Add the 'intrange' linter, which enforces usage of the hip new-ish
"range over int" feature in Go.

Signed-off-by: Carlo Teubner <carlo@cteubner.net>
2025-01-08 23:55:24 -03:00
Carlo Teubner 75204e6472
golangci-lint: add wastedassign & update code (#5743)
This linter caught an oversight that is probably inconsequential, but it
shows its potential to catch more serious oversights as well.

Signed-off-by: Carlo Teubner <carlo@cteubner.net>
2025-01-08 23:26:28 -03:00
Carlo Teubner 803b107147
Enable more govet checks and address issues (#5739)
It turns out that the 'govet' linter has a few more tricks up its
sleeve, you just need to enable them.

This find a couple of bugs in the tests which are also being fixed in
this commit:

1. The spire-server tests for BatchCreateFederatedBundle and friends
   were accidentally not including JWT keys in the bundle they were
   testing. This ended up only affecting assertions on log message
   fields, which are being fixed here.
   The fix for this engendered a bit of refactoring to enable access to
   the required JWT struct conversion function.
2. The spire-server tests for the CA journal were _almost_ failing in
   their attempt to list CA journals; it ended up working anyway because
   a conversion between different struct types happened to be
   unnecessary because gorm could work with either one due to matching
   struct field names.

Signed-off-by: Carlo Teubner <carlo@cteubner.net>
2025-01-08 21:38:08 -03:00
dependabot[bot] ecd3f463ad
Bump the aws-sdk group with 2 updates (#5758)
Bumps the aws-sdk group with 2 updates: [github.com/aws/aws-sdk-go-v2/service/organizations](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/organizations` from 1.36.0 to 1.37.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.37.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.36.0...service/s3/v1.37.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.71.0 to 1.72.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.71.0...service/s3/v1.72.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/organizations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-07 16:15:12 -03:00
Sorin Dumitru b2e432cb04
svidstore: ParseMetadata to handle ':' in values (#5750)
It's possible that the metadata stored in entry selectors for the SvidStore plugins will contain ':'. For example the AWS secret manager one can specify an arn, which can include ':'. Modify the parsing to take this into account

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2025-01-03 10:15:58 -03:00
kfox1111 acdaee592a
Enable expand env for oidc discovery provider (#5689)
* Enable expand env for oidc discovery provider

Fixes: https://github.com/spiffe/spire/issues/5688

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix test

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix lint

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Add test

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix lint

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

* Fix Lint

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>

---------

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-01-02 19:58:03 -03:00
dependabot[bot] 5ff6a34db5
Bump google.golang.org/protobuf from 1.36.0 to 1.36.1 (#5753)
* Bump google.golang.org/protobuf from 1.36.0 to 1.36.1

Bumps google.golang.org/protobuf from 1.36.0 to 1.36.1.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* generate code

Signed-off-by: Marcos Yacob <marcos.yacob@hpe.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Marcos Yacob <marcos.yacob@hpe.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcos Yacob <marcos.yacob@hpe.com>
2025-01-02 15:47:14 -03:00
dependabot[bot] f8b12163ac
Bump google.golang.org/grpc from 1.68.1 to 1.69.2 (#5734)
* Bump google.golang.org/grpc from 1.68.1 to 1.69.2

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.68.1 to 1.69.2.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.68.1...v1.69.2)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Run go mod tidy

Signed-off-by: Marcos Yacob <marcos.yacob@hpe.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Marcos Yacob <marcos.yacob@hpe.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcos Yacob <marcos.yacob@hpe.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2025-01-02 14:09:58 -03:00
dependabot[bot] d4b0de73d9
Bump github.com/shirou/gopsutil/v4 from 4.24.11 to 4.24.12 (#5756)
Bumps [github.com/shirou/gopsutil/v4](https://github.com/shirou/gopsutil) from 4.24.11 to 4.24.12.
- [Release notes](https://github.com/shirou/gopsutil/releases)
- [Commits](https://github.com/shirou/gopsutil/compare/v4.24.11...v4.24.12)

---
updated-dependencies:
- dependency-name: github.com/shirou/gopsutil/v4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-02 11:44:22 -03:00
dependabot[bot] 802ea39381
Bump github.com/googleapis/gax-go/v2 from 2.14.0 to 2.14.1 (#5744)
Bumps [github.com/googleapis/gax-go/v2](https://github.com/googleapis/gax-go) from 2.14.0 to 2.14.1.
- [Release notes](https://github.com/googleapis/gax-go/releases)
- [Commits](https://github.com/googleapis/gax-go/compare/v2.14.0...v2.14.1)

---
updated-dependencies:
- dependency-name: github.com/googleapis/gax-go/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-31 15:37:00 -03:00
dependabot[bot] 9efbd1c212
Bump github.com/jackc/pgx/v5 from 5.7.1 to 5.7.2 (#5751)
Bumps [github.com/jackc/pgx/v5](https://github.com/jackc/pgx) from 5.7.1 to 5.7.2.
- [Changelog](https://github.com/jackc/pgx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jackc/pgx/compare/v5.7.1...v5.7.2)

---
updated-dependencies:
- dependency-name: github.com/jackc/pgx/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-31 14:21:39 -03:00
James Hiew e3e8033894
Fix CompareObjectHandles check to run if syscall is available (#5749)
Check would previously be skipped if CompareObjectHandles syscall was found

Signed-off-by: James Hiew <james@hiew.net>
2024-12-31 08:45:36 -03:00
dependabot[bot] c2bbf6b00e
Bump github.com/envoyproxy/go-control-plane from 0.13.1 to 0.13.2 (#5752)
Bumps [github.com/envoyproxy/go-control-plane](https://github.com/envoyproxy/go-control-plane) from 0.13.1 to 0.13.2.
- [Release notes](https://github.com/envoyproxy/go-control-plane/releases)
- [Changelog](https://github.com/envoyproxy/go-control-plane/blob/main/CHANGELOG.md)
- [Commits](https://github.com/envoyproxy/go-control-plane/compare/v0.13.1...v0.13.2)

---
updated-dependencies:
- dependency-name: github.com/envoyproxy/go-control-plane
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-30 23:46:15 -03:00
dependabot[bot] c761302ff6
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#5747)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.48.0 to 1.49.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.48.0...spanner/v1.49.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-30 10:16:45 -03:00
Carlo Teubner 6928ff1833
doc: Fix telemetry config links (#5720)
Signed-off-by: Carlo Teubner <cteubner1@bloomberg.net>
2024-12-19 14:05:55 -03:00
dependabot[bot] d759f55883
Bump google.golang.org/protobuf from 1.35.2 to 1.36.0 (#5722)
* Bump google.golang.org/protobuf from 1.35.2 to 1.36.0

Bumps google.golang.org/protobuf from 1.35.2 to 1.36.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Generate proto files

Signed-off-by: Marcos Yacob <marcos.yacob@hpe.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Marcos Yacob <marcos.yacob@hpe.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcos Yacob <marcos.yacob@hpe.com>
2024-12-19 13:21:59 -03:00
dependabot[bot] 80b11f245c
Bump github.com/docker/docker (#5732)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 27.4.0+incompatible to 27.4.1+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.4.0...v27.4.1)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-19 11:40:49 -03:00
dependabot[bot] 4761b11216
Bump github.com/google/go-tpm from 0.9.2 to 0.9.3 (#5733)
Bumps [github.com/google/go-tpm](https://github.com/google/go-tpm) from 0.9.2 to 0.9.3.
- [Release notes](https://github.com/google/go-tpm/releases)
- [Commits](https://github.com/google/go-tpm/compare/v0.9.2...v0.9.3)

---
updated-dependencies:
- dependency-name: github.com/google/go-tpm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-19 11:13:40 -03:00
dependabot[bot] ef736065dc
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5729)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.197.0 to 1.198.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.197.0...service/ec2/v1.198.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-19 10:35:41 -03:00
dependabot[bot] 9010c8bc64
Bump docker/setup-buildx-action from 3.7.1 to 3.8.0 (#5726)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.7.1 to 3.8.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](c47758b77c...6524bf65af)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 16:08:47 -03:00
dependabot[bot] 50cc52b402
Bump github.com/google/go-tpm from 0.9.1 to 0.9.2 (#5724)
Bumps [github.com/google/go-tpm](https://github.com/google/go-tpm) from 0.9.1 to 0.9.2.
- [Release notes](https://github.com/google/go-tpm/releases)
- [Commits](https://github.com/google/go-tpm/compare/v0.9.1...v0.9.2)

---
updated-dependencies:
- dependency-name: github.com/google/go-tpm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 13:36:46 -03:00
dependabot[bot] e83f8844e1
Bump google.golang.org/api from 0.211.0 to 0.212.0 (#5723)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.211.0 to 0.212.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.211.0...v0.212.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 11:17:04 -03:00
dependabot[bot] 70e86f05d8
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5721)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.196.0 to 1.197.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.196.0...service/ec2/v1.197.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-17 10:45:22 -03:00
Ryan Turner 5c023a0633
Remove dependency on github.com/lestrrat-go/jwx (#5715)
We were using this package in only one place where we were parsing a
JWK. go-jose, which we use extensively throughout the project, already
provides this functionality. So we can eliminate this dependency by
leveraging that existing functionality in go-jose.

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2024-12-16 13:36:12 -03:00
Ryan Turner 4d2298042c
Bump gopsutil to v4 (#5714)
v3 is no longer maintained other than for security fixes. The breaking
change in v4 that impacts our code is that `process.Uids()` and
`process.Gids()` now returns values of type `uint32` instead of `int32`.

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2024-12-16 12:05:29 -03:00
Ryan Turner c06b91e51c
Bump Go to v1.23.4 (#5712)
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2024-12-16 10:09:24 -03:00
kfox1111 befc54f99d
x509pop server plugin support for servers trust bundle (#5572)
* x509pop server plugin support for servers trust bundle
Enables the x509pop node attestor server plugin to be
configured to use the SPIRE Servers own trust bundle.

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2024-12-16 09:24:32 -03:00
dependabot[bot] 65d6f003f7
Bump github.com/sigstore/sigstore from 1.8.10 to 1.8.11 (#5711)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.8.10 to 1.8.11.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.8.10...v1.8.11)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-13 11:18:12 -08:00
dependabot[bot] c8f94c4b55
Bump github.com/GoogleCloudPlatform/cloudsql-proxy from 1.37.2 to 1.37.3 (#5706)
Bumps [github.com/GoogleCloudPlatform/cloudsql-proxy](https://github.com/GoogleCloudPlatform/cloudsql-proxy) from 1.37.2 to 1.37.3.
- [Release notes](https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases)
- [Changelog](https://github.com/GoogleCloudPlatform/cloud-sql-proxy/blob/v1.37.3/CHANGELOG.md)
- [Commits](https://github.com/GoogleCloudPlatform/cloudsql-proxy/compare/v1.37.2...v1.37.3)

---
updated-dependencies:
- dependency-name: github.com/GoogleCloudPlatform/cloudsql-proxy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 14:19:19 -08:00
Ryan Turner 11fba75466
Bump versions on main after v1.11.1 release (#5708)
* Update CHANGELOG with v1.11.1 release (#5698)

* Update with v1.11.1 release

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Signed-off-by: Ryan Turner <rturner3@users.noreply.github.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>

* Bump versions after v1.11.1 release

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Signed-off-by: Ryan Turner <rturner3@users.noreply.github.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-12-12 13:20:44 -08:00
dependabot[bot] e2924bf4e3
Bump the k8s-io group with 5 updates (#5705)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.31.4` | `0.32.0` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.31.4` | `0.32.0` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.31.4` | `0.32.0` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.31.4` | `0.32.0` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.31.4` | `0.32.0` |


Updates `k8s.io/api` from 0.31.4 to 0.32.0
- [Commits](https://github.com/kubernetes/api/compare/v0.31.4...v0.32.0)

Updates `k8s.io/apimachinery` from 0.31.4 to 0.32.0
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.31.4...v0.32.0)

Updates `k8s.io/client-go` from 0.31.4 to 0.32.0
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.31.4...v0.32.0)

Updates `k8s.io/kube-aggregator` from 0.31.4 to 0.32.0
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.31.4...v0.32.0)

Updates `k8s.io/mount-utils` from 0.31.4 to 0.32.0
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.31.4...v0.32.0)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 11:09:13 -08:00
dependabot[bot] 25ecc2c19e
Bump the aws-sdk group across 1 directory with 4 updates (#5695)
Bumps the aws-sdk group with 4 updates in the / directory: [github.com/aws/aws-sdk-go-v2/feature/rds/auth](https://github.com/aws/aws-sdk-go-v2), [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2), [github.com/aws/aws-sdk-go-v2/service/organizations](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/feature/rds/auth` from 1.4.2 to 1.5.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/pi/v1.5.1/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/mq/v1.4.2...service/pi/v1.5.1)

Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.194.0 to 1.196.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.194.0...service/ec2/v1.196.0)

Updates `github.com/aws/aws-sdk-go-v2/service/organizations` from 1.35.1 to 1.36.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.36.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/fms/v1.35.1...service/s3/v1.36.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.69.0 to 1.71.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.69.0...service/s3/v1.71.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/rds/auth
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/organizations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 10:36:32 -08:00
dependabot[bot] 82dc630768
Bump golang.org/x/crypto from 0.30.0 to 0.31.0 (#5704)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.30.0 to 0.31.0.
- [Commits](https://github.com/golang/crypto/compare/v0.30.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-12 09:52:07 -08:00
dependabot[bot] 78229b2a02
Bump google.golang.org/grpc from 1.68.0 to 1.68.1 (#5701)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.68.0 to 1.68.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.68.0...v1.68.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-11 17:17:46 -08:00
dependabot[bot] 935bc31e3b
Bump github.com/docker/docker (#5702)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 27.3.1+incompatible to 27.4.0+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.3.1...v27.4.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-11 15:45:29 -08:00
dependabot[bot] c94a570908
Bump the k8s-io group with 5 updates (#5700)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.31.3` | `0.31.4` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.31.3` | `0.31.4` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.31.3` | `0.31.4` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.31.3` | `0.31.4` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.31.3` | `0.31.4` |


Updates `k8s.io/api` from 0.31.3 to 0.31.4
- [Commits](https://github.com/kubernetes/api/compare/v0.31.3...v0.31.4)

Updates `k8s.io/apimachinery` from 0.31.3 to 0.31.4
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.31.3...v0.31.4)

Updates `k8s.io/client-go` from 0.31.3 to 0.31.4
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.31.3...v0.31.4)

Updates `k8s.io/kube-aggregator` from 0.31.3 to 0.31.4
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.31.3...v0.31.4)

Updates `k8s.io/mount-utils` from 0.31.3 to 0.31.4
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.31.3...v0.31.4)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-11 13:11:27 -08:00
dependabot[bot] 478d79ead0
Bump actions/setup-go from 5.1.0 to 5.2.0 (#5699)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](41dfa10bad...3041bf56c9)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-11 10:55:58 -08:00
dependabot[bot] 687d2db635
Bump the google-cloud-sdk group with 2 updates (#5694)
Bumps the google-cloud-sdk group with 2 updates: [cloud.google.com/go/iam](https://github.com/googleapis/google-cloud-go) and [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/iam` from 1.2.2 to 1.3.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/iam/v1.2.2...iam/v1.3.0)

Updates `cloud.google.com/go/storage` from 1.47.0 to 1.48.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.47.0...spanner/v1.48.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
- dependency-name: cloud.google.com/go/storage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 14:20:47 -08:00
dependabot[bot] 768bdbecf1
Bump google.golang.org/api from 0.209.0 to 0.211.0 (#5693)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.209.0 to 0.211.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.209.0...v0.211.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 13:08:40 -08:00
dependabot[bot] b585e01b31
Bump msys2/setup-msys2 from 2.25.0 to 2.26.0 (#5691)
Bumps [msys2/setup-msys2](https://github.com/msys2/setup-msys2) from 2.25.0 to 2.26.0.
- [Release notes](https://github.com/msys2/setup-msys2/releases)
- [Changelog](https://github.com/msys2/setup-msys2/blob/main/CHANGELOG.md)
- [Commits](c52d1fa9c7...d44ca8e88d)

---
updated-dependencies:
- dependency-name: msys2/setup-msys2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 16:18:51 -03:00
dependabot[bot] a89ce437e2
Bump sigs.k8s.io/controller-runtime from 0.19.2 to 0.19.3 (#5676)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.19.2 to 0.19.3.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.19.2...v0.19.3)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 15:51:12 -03:00
dependabot[bot] 0206502ef6
Bump github.com/sigstore/rekor from 1.3.6 to 1.3.7 (#5672)
Bumps [github.com/sigstore/rekor](https://github.com/sigstore/rekor) from 1.3.6 to 1.3.7.
- [Release notes](https://github.com/sigstore/rekor/releases)
- [Changelog](https://github.com/sigstore/rekor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/rekor/compare/v1.3.6...v1.3.7)

---
updated-dependencies:
- dependency-name: github.com/sigstore/rekor
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 15:11:29 -03:00
dependabot[bot] 2a4506ad2e
Bump github.com/GoogleCloudPlatform/cloudsql-proxy from 1.37.1 to 1.37.2 (#5669)
Bumps [github.com/GoogleCloudPlatform/cloudsql-proxy](https://github.com/GoogleCloudPlatform/cloudsql-proxy) from 1.37.1 to 1.37.2.
- [Release notes](https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases)
- [Changelog](https://github.com/GoogleCloudPlatform/cloud-sql-proxy/blob/v1.37.2/CHANGELOG.md)
- [Commits](https://github.com/GoogleCloudPlatform/cloudsql-proxy/compare/v1.37.1...v1.37.2)

---
updated-dependencies:
- dependency-name: github.com/GoogleCloudPlatform/cloudsql-proxy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 14:37:02 -03:00
dependabot[bot] 7b3181d814
Bump actions/cache from 4.1.2 to 4.2.0 (#5684)
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.2 to 4.2.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](6849a64899...1bd1e32a3b)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-06 09:16:52 -08:00
Sorin Dumitru 683f59a337
agent: Accept registration entries with RevisionNumber 0 (#5680)
When using the SyncAuthorizedEntries API we verify that the
RevisionNumber of the entries is at least 1. Unfortunately,
the RevisionNumber as assigned by spire-server starts at 0,
leading to the following error:
```
WARN[0004] Received malformed entry revision from SPIRE server; are the server and agent versions compatible?  entry_id=f1a26ecf-1043-4905-b5d9-789e60f88695 revision_number=0 subsystem_name=manager
````

I'm guessing the check is there in the unlikely case of a wrap-around,
so I'm keeping it and verifying that the RevisionNumber is positive.

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2024-12-05 17:17:26 -03:00
Szilárd Vincze a0dd78b198
Flexible handling of IPv6 addresses (#5623)
Signed-off-by: Szilard Vincze <szilard.vincze@est.tech>
2024-12-05 16:09:37 -03:00
Ayush Luthra 40fb0df46b
Configurable JWT Issuer for the OIDC Discovery Provider (#5657)
* Adding support for configurable jwt issuer + test cases

Signed-off-by: Luthra, Ayush <Ayush.Luthra@fmr.com>

* Moving verifyhost check + adding more test cases

Signed-off-by: Luthra, Ayush <Ayush.Luthra@fmr.com>

* Adding test case of jwt issuer with just a host

Signed-off-by: Luthra, Ayush <Ayush.Luthra@fmr.com>

* Updating readme docs + fixing spacing

Signed-off-by: Luthra, Ayush <Ayush.Luthra@fmr.com>

* Fixing spacing in readme table

Signed-off-by: Luthra, Ayush <Ayush.Luthra@fmr.com>

* fixing windows test cases + minor refactor

Signed-off-by: Luthra, Ayush <Ayush.Luthra@fmr.com>

---------

Signed-off-by: Luthra, Ayush <Ayush.Luthra@fmr.com>
2024-12-03 17:02:12 -03:00
dependabot[bot] 791c8e34fa
Bump sigs.k8s.io/controller-runtime from 0.19.1 to 0.19.2 (#5671)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.19.1 to 0.19.2.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.19.1...v0.19.2)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-27 21:40:25 -03:00
dependabot[bot] 7228a60ce3
Bump github.com/lestrrat-go/jwx/v2 from 2.1.2 to 2.1.3 (#5668)
Bumps [github.com/lestrrat-go/jwx/v2](https://github.com/lestrrat-go/jwx) from 2.1.2 to 2.1.3.
- [Release notes](https://github.com/lestrrat-go/jwx/releases)
- [Changelog](https://github.com/lestrrat-go/jwx/blob/v2.1.3/Changes)
- [Commits](https://github.com/lestrrat-go/jwx/compare/v2.1.2...v2.1.3)

---
updated-dependencies:
- dependency-name: github.com/lestrrat-go/jwx/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-27 21:02:53 -03:00
dependabot[bot] b0965b6dec
Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 (#5670)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-27 16:03:24 -03:00
Hugo Landau ef5a697991
Allow requiring use of a post-quantum-safe KEM (#5601)
* Allow configuration of mandatory PQ KEM: implementation
* Allow configuration of mandatory PQ KEM: docs
* Allow configuration of mandatory PQ KEM: tests

---------

Signed-off-by: Hugo Landau <hl@messier42.com>
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2024-11-27 12:35:57 -03:00
dependabot[bot] ae25343d43
Bump google.golang.org/api from 0.204.0 to 0.209.0 (#5662)
* Bump google.golang.org/api from 0.204.0 to 0.209.0

Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.204.0 to 0.209.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.204.0...v0.209.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update protoc-gen-go version

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-11-27 11:09:22 -03:00
dependabot[bot] 20954d7540
Bump actions/dependency-review-action from 4.4.0 to 4.5.0 (#5658)
Bumps [actions/dependency-review-action](https://github.com/actions/dependency-review-action) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/actions/dependency-review-action/releases)
- [Commits](4081bf99e2...3b139cfc5f)

---
updated-dependencies:
- dependency-name: actions/dependency-review-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-27 09:04:21 -03:00
dependabot[bot] a2a71646a7
Bump msys2/setup-msys2 from 2.24.1 to 2.25.0 (#5651)
Bumps [msys2/setup-msys2](https://github.com/msys2/setup-msys2) from 2.24.1 to 2.25.0.
- [Release notes](https://github.com/msys2/setup-msys2/releases)
- [Changelog](https://github.com/msys2/setup-msys2/blob/main/CHANGELOG.md)
- [Commits](ddf331adae...c52d1fa9c7)

---
updated-dependencies:
- dependency-name: msys2/setup-msys2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-27 08:35:34 -03:00
dependabot[bot] a42f0a39b0
Bump the aws-sdk group across 1 directory with 5 updates (#5667)
Bumps the aws-sdk group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) | `1.187.0` | `1.194.0` |
| [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2) | `1.37.0` | `1.38.1` |
| [github.com/aws/aws-sdk-go-v2/service/organizations](https://github.com/aws/aws-sdk-go-v2) | `1.34.0` | `1.35.1` |
| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.66.2` | `1.69.0` |
| [github.com/aws/aws-sdk-go-v2/service/sts](https://github.com/aws/aws-sdk-go-v2) | `1.32.3` | `1.33.1` |



Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.187.0 to 1.194.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.187.0...service/ec2/v1.194.0)

Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.37.0 to 1.38.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.38.1/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.37.0...service/s3/v1.38.1)

Updates `github.com/aws/aws-sdk-go-v2/service/organizations` from 1.34.0 to 1.35.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.34.0...service/fms/v1.35.1)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.66.2 to 1.69.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.66.2...service/s3/v1.69.0)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.32.3 to 1.33.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.33.1/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.32.3...service/s3/v1.33.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/organizations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-27 07:44:09 -03:00
dependabot[bot] ad4410787c
Bump the k8s-io group with 5 updates (#5661)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.31.2` | `0.31.3` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.31.2` | `0.31.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.31.2` | `0.31.3` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.31.2` | `0.31.3` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.31.2` | `0.31.3` |


Updates `k8s.io/api` from 0.31.2 to 0.31.3
- [Commits](https://github.com/kubernetes/api/compare/v0.31.2...v0.31.3)

Updates `k8s.io/apimachinery` from 0.31.2 to 0.31.3
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.31.2...v0.31.3)

Updates `k8s.io/client-go` from 0.31.2 to 0.31.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.31.2...v0.31.3)

Updates `k8s.io/kube-aggregator` from 0.31.2 to 0.31.3
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.31.2...v0.31.3)

Updates `k8s.io/mount-utils` from 0.31.2 to 0.31.3
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.31.2...v0.31.3)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-26 23:18:16 -03:00
dependabot[bot] 6d726a2af1
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#5656)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.46.0 to 1.47.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.46.0...spanner/v1.47.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-26 22:26:49 -03:00
dependabot[bot] 4db02379dc
Bump github.com/hashicorp/hcl from 1.0.1-vault-6 to 1.0.1-vault-7 (#5646)
Bumps [github.com/hashicorp/hcl](https://github.com/hashicorp/hcl) from 1.0.1-vault-6 to 1.0.1-vault-7.
- [Release notes](https://github.com/hashicorp/hcl/releases)
- [Changelog](https://github.com/hashicorp/hcl/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/hcl/compare/v1.0.1-vault-6...v1.0.1-vault-7)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/hcl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-26 21:36:10 -03:00
Emmanuel Ferdman 53b84ecb11
Update `telemetry.md` reference (#5650)
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2024-11-26 19:00:49 -03:00
Sorin Dumitru 34c697a00f
spire-agent: limit JWT-SVID cache size (#5633)
* spire-agent: use a LRU cache for the JWT-SVID cache

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2024-11-21 12:31:30 -08:00
dependabot[bot] bcf001750e
Bump golang.org/x/sync from 0.8.0 to 0.9.0 (#5645)
Bumps [golang.org/x/sync](https://github.com/golang/sync) from 0.8.0 to 0.9.0.
- [Commits](https://github.com/golang/sync/compare/v0.8.0...v0.9.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sync
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-21 16:33:07 -03:00
dependabot[bot] bb711a011b
Bump golang.org/x/time from 0.7.0 to 0.8.0 (#5644)
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.7.0 to 0.8.0.
- [Commits](https://github.com/golang/time/compare/v0.7.0...v0.8.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-20 11:29:20 -03:00
Agustín Martínez Fayó 5677207e78
Fix for TestRotator flaky test (#5643)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-11-19 16:04:27 -03:00
dependabot[bot] d564650fc2
Bump google.golang.org/grpc from 1.67.1 to 1.68.0 (#5640)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.67.1 to 1.68.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.67.1...v1.68.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-19 14:52:30 -03:00
kfox1111 a5a4269c71
Add basic documentation about the template engine (#5625)
* Add basic documentation about the template engine
* Update doc/template_engine.md

Signed-off-by: kfox1111 <Kevin.Fox@pnnl.gov>
2024-11-19 12:33:40 -03:00
Agustín Martínez Fayó a746e9835c
Rely on the authority ID instead of the issued time when updating the journal (#5622)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-11-19 11:05:23 -03:00
nweisenauer a8857bafda
Fixes how upstream-authority-ejbca integration test calls kubectl and helm (#5613)
* call tool binaries from prepared path

00-setup-kind downloads kubectl, helm and kind to ./bin folder
upstream-authority-ejbca test now calls the binaries from this prepared bin folder

Signed-off-by: Nico Weisenauer <137267159+nweisenauer-sap@users.noreply.github.com>

* fixes bin path inside conf folder

Signed-off-by: Nico Weisenauer <137267159+nweisenauer-sap@users.noreply.github.com>

---------

Signed-off-by: Nico Weisenauer <137267159+nweisenauer-sap@users.noreply.github.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-11-08 12:29:41 -03:00
dependabot[bot] 0d701488b4
Bump github.com/envoyproxy/go-control-plane from 0.13.0 to 0.13.1 (#5636)
Bumps [github.com/envoyproxy/go-control-plane](https://github.com/envoyproxy/go-control-plane) from 0.13.0 to 0.13.1.
- [Release notes](https://github.com/envoyproxy/go-control-plane/releases)
- [Changelog](https://github.com/envoyproxy/go-control-plane/blob/main/CHANGELOG.md)
- [Commits](https://github.com/envoyproxy/go-control-plane/compare/v0.13.0...v0.13.1)

---
updated-dependencies:
- dependency-name: github.com/envoyproxy/go-control-plane
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 11:26:46 -03:00
Agustín Martínez Fayó 970122c321
Update URL to download kubectl for integration tests (#5642)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-11-08 10:45:09 -03:00
Sorin Dumitru 6fd9e75d47
spire-server/agent: log version at start up (#5637)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2024-11-05 16:04:23 -07:00
dependabot[bot] ac5eb6aa0f
Bump github.com/hashicorp/hcl from 1.0.1-vault-5 to 1.0.1-vault-6 (#5635)
Bumps [github.com/hashicorp/hcl](https://github.com/hashicorp/hcl) from 1.0.1-vault-5 to 1.0.1-vault-6.
- [Release notes](https://github.com/hashicorp/hcl/releases)
- [Changelog](https://github.com/hashicorp/hcl/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/hcl/compare/v1.0.1-vault-5...v1.0.1-vault-6)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/hcl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-05 17:15:54 -03:00
dependabot[bot] 3445432e00
Bump sigs.k8s.io/controller-runtime from 0.19.0 to 0.19.1 (#5634)
Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.19.0 to 0.19.1.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.19.0...v0.19.1)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-05 16:33:59 -03:00
dependabot[bot] 3d257b2070
Bump github.com/hashicorp/go-plugin from 1.6.1 to 1.6.2 (#5630)
Bumps [github.com/hashicorp/go-plugin](https://github.com/hashicorp/go-plugin) from 1.6.1 to 1.6.2.
- [Release notes](https://github.com/hashicorp/go-plugin/releases)
- [Changelog](https://github.com/hashicorp/go-plugin/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/go-plugin/compare/v1.6.1...v1.6.2)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/go-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-05 16:04:32 -03:00
dependabot[bot] 9fa2afd769
Bump google.golang.org/api from 0.203.0 to 0.204.0 (#5629)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.203.0 to 0.204.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.203.0...v0.204.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-05 15:22:22 -03:00
dependabot[bot] 4d1c8e7b02
Bump github.com/open-policy-agent/opa from 0.69.0 to 0.70.0 (#5628)
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 0.69.0 to 0.70.0.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v0.69.0...v0.70.0)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-05 14:37:53 -03:00
dependabot[bot] 4a4670c248
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#5627)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.45.0 to 1.46.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/pubsub/v1.45.0...spanner/v1.46.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-05 14:09:06 -03:00
dependabot[bot] 98ad13af13
Bump github.com/zeebo/errs from 1.3.0 to 1.4.0 (#5581)
* Bump github.com/zeebo/errs from 1.3.0 to 1.4.0

Bumps [github.com/zeebo/errs](https://github.com/zeebo/errs) from 1.3.0 to 1.4.0.
- [Commits](https://github.com/zeebo/errs/compare/v1.3.0...v1.4.0)

---
updated-dependencies:
- dependency-name: github.com/zeebo/errs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Use errors.As instead of the deprecated errs.Unwrap function

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2024-11-05 11:59:17 -03:00
Keegan Witt 20d4242832
Spelling and grammar fixes (#5571)
Signed-off-by: Keegan Witt <keeganwitt@gmail.com>
2024-11-04 16:18:44 -07:00
dependabot[bot] 89ee655ca4
Bump actions/setup-python from 5.2.0 to 5.3.0 (#5606)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5.2.0 to 5.3.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](f677139bbe...0b93645e9f)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 23:46:45 -03:00
dependabot[bot] bf50f9768a
Bump the k8s-io group with 5 updates (#5617)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.31.1` | `0.31.2` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.31.1` | `0.31.2` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.31.1` | `0.31.2` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.31.1` | `0.31.2` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.31.1` | `0.31.2` |


Updates `k8s.io/api` from 0.31.1 to 0.31.2
- [Commits](https://github.com/kubernetes/api/compare/v0.31.1...v0.31.2)

Updates `k8s.io/apimachinery` from 0.31.1 to 0.31.2
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.31.1...v0.31.2)

Updates `k8s.io/client-go` from 0.31.1 to 0.31.2
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.31.1...v0.31.2)

Updates `k8s.io/kube-aggregator` from 0.31.1 to 0.31.2
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.31.1...v0.31.2)

Updates `k8s.io/mount-utils` from 0.31.1 to 0.31.2
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.31.1...v0.31.2)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 23:13:19 -03:00
dependabot[bot] 6d7e66f042
Bump github.com/lestrrat-go/jwx/v2 from 2.1.1 to 2.1.2 (#5618)
Bumps [github.com/lestrrat-go/jwx/v2](https://github.com/lestrrat-go/jwx) from 2.1.1 to 2.1.2.
- [Release notes](https://github.com/lestrrat-go/jwx/releases)
- [Changelog](https://github.com/lestrrat-go/jwx/blob/develop/v3/Changes)
- [Commits](https://github.com/lestrrat-go/jwx/compare/v2.1.1...v2.1.2)

---
updated-dependencies:
- dependency-name: github.com/lestrrat-go/jwx/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 22:37:32 -03:00
dependabot[bot] 0a8e074d8c
Bump github.com/GoogleCloudPlatform/cloudsql-proxy from 1.37.0 to 1.37.1 (#5619)
Bumps [github.com/GoogleCloudPlatform/cloudsql-proxy](https://github.com/GoogleCloudPlatform/cloudsql-proxy) from 1.37.0 to 1.37.1.
- [Release notes](https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases)
- [Changelog](https://github.com/GoogleCloudPlatform/cloud-sql-proxy/blob/v1.37.1/CHANGELOG.md)
- [Commits](https://github.com/GoogleCloudPlatform/cloudsql-proxy/compare/v1.37.0...v1.37.1)

---
updated-dependencies:
- dependency-name: github.com/GoogleCloudPlatform/cloudsql-proxy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 16:36:05 -03:00
dependabot[bot] 17d7067f06
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5616)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.186.1 to 1.187.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.186.1...service/ec2/v1.187.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 15:55:37 -03:00
Marcos Yacob 530930d134
Resolve flakiness in Evit agent IT (#5621)
* Evict IT is trying to ban an agent that is not initialized yet, retry until agent is present

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-11-01 15:05:37 -03:00
Marcos Yacob 714110de8e
Stop preparing a new authority before tainting (#5614)
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-10-31 19:03:14 -03:00
Andrew Harding 2287067116
Use timestamp invalidate kubelet response cache (#5620)
Changes the K8s workload attestor to invalidate the cache response based
on a timestamp instead of kicking off a goroutine.

While this means that the plugin will always have a cached response in
memory, it simplifies the code for both the plugin and tests. In
practice, only an idle agent would waste memory holding onto the
response.

Signed-off-by: Andrew Harding <azdagron@gmail.com>
2024-10-31 17:09:35 -03:00
dependabot[bot] e6920857b8
Bump actions/setup-go from 5.0.2 to 5.1.0 (#5605)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5.0.2 to 5.1.0.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](0a12ed9d6a...41dfa10bad)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-31 08:25:57 -03:00
dependabot[bot] 902c21a67f
Bump actions/checkout from 4.2.1 to 4.2.2 (#5600)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.1 to 4.2.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](eef61447b9...11bd71901b)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-31 06:52:59 -03:00
dependabot[bot] 9051f2fb58
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#5603)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.44.0 to 1.45.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/pubsub/v1.44.0...pubsub/v1.45.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-30 22:21:31 -03:00
dependabot[bot] 23b8f7a2ea
Bump google.golang.org/api from 0.200.0 to 0.203.0 (#5599)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.200.0 to 0.203.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.200.0...v0.203.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-30 18:28:14 -03:00
dependabot[bot] 548e5bed27
Bump the aws-sdk group across 1 directory with 6 updates (#5612)
Bumps the aws-sdk group with 3 updates in the / directory: [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2), [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/config` from 1.27.33 to 1.28.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.27.33...config/v1.28.1)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.32 to 1.17.42
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/credentials/v1.17.32...credentials/v1.17.42)

Updates `github.com/aws/aws-sdk-go-v2/feature/ec2/imds` from 1.16.13 to 1.16.18
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.16.13...service/ram/v1.16.18)

Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.182.0 to 1.186.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.182.0...service/ec2/v1.186.1)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.65.0 to 1.66.2
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.65.0...service/s3/v1.66.2)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.32.0 to 1.32.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.32.0...v1.32.3)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/ec2/imds
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-30 16:07:00 -03:00
dependabot[bot] 8571e0a2c7
Bump github.com/Azure/azure-sdk-for-go/sdk/azcore (#5591)
Bumps the azure-sdk group with 1 update in the / directory: [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.14.0 to 1.16.0
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.14.0...sdk/azcore/v1.16.0)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-30 14:51:00 -03:00
dependabot[bot] a53b196712
Bump actions/dependency-review-action from 4.3.4 to 4.4.0 (#5610)
Bumps [actions/dependency-review-action](https://github.com/actions/dependency-review-action) from 4.3.4 to 4.4.0.
- [Release notes](https://github.com/actions/dependency-review-action/releases)
- [Commits](5a2ce3f5b9...4081bf99e2)

---
updated-dependencies:
- dependency-name: actions/dependency-review-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 11:21:21 -03:00
Andrew Harding 4a70b8b2d7
Update CHANGELOG and version after 1.11.0 release (#5609)
* Update CHANGELOG and version after 1.11.0 release

Signed-off-by: Andrew Harding <azdagron@gmail.com>

* remove extra newline

Signed-off-by: Andrew Harding <azdagron@gmail.com>

---------

Signed-off-by: Andrew Harding <azdagron@gmail.com>
2024-10-28 18:40:11 -03:00
dependabot[bot] 8eeb884435
Bump github.com/prometheus/client_golang from 1.20.4 to 1.20.5 (#5580)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.4 to 1.20.5.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.4...v1.20.5)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-24 11:31:04 -03:00
kfox1111 915b0e7724
Add sprig functions (#5593)
Fixes: #5575

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2024-10-23 15:21:54 -06:00
dependabot[bot] a573d647df
Bump github.com/sigstore/sigstore from 1.8.9 to 1.8.10 (#5579)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.8.9 to 1.8.10.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.8.9...v1.8.10)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-23 17:51:03 -03:00
dependabot[bot] 80facb470a
Bump actions/cache from 4.1.1 to 4.1.2 (#5597)
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.1 to 4.1.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](3624ceb22c...6849a64899)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-23 17:16:05 -03:00
kfox1111 2d784fc74a
Allow escaping $ in config files that use expand env (#5576)
* Allow escaping $ in config files that use expand env

Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2024-10-17 18:31:37 -03:00
Sorin Dumitru d7d1ccde86
Return InvalidArgument for invalid input entries (#5506)
fixes #5444

Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2024-10-17 17:21:52 -03:00
Agustín Martínez Fayó c8d35fed00
Update telemetry documentation with metrics related with forced rotation (#5589)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-10-17 16:35:44 -03:00
Agustín Martínez Fayó a67d0563c6
Add documentation for `spire-server localauthority` and `spire-server upstreamauthority` commands (#5588)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-10-17 16:09:16 -03:00
Agustín Martínez Fayó 7abee0acc3
Remove `forced_rotation` feature flag (#5586)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-10-17 15:34:51 -03:00
Edwin Buck 518621220d
Implement cache update deduplication per fetch cycle (#5509)
Signed-off-by: Edwin Buck <edwbuck@gmail.com>
2024-10-17 11:54:56 -06:00
Marcos Yacob 20ad838822
Force rotation: adds an integration test to verify that the JWT autho… (#5583)
* Force rotation: adds an integration test to verify that the JWT authority correctly handles forced rotation. Ensures that JWT tokens are invalidated and reissued as expected.

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-10-16 16:54:38 -03:00
Agustín Martínez Fayó b80bf4e567
Forced rotation: Remove cached JWT-SVIDs using tainted keys (#5565)
* Remove from the agent cache the JWT-SVIDs using tainted keys

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-10-16 00:11:23 -03:00
kfox1111 371571425d
Add missing TrustDomain support in x509pop template (#5577)
Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2024-10-15 08:12:46 -06:00
dependabot[bot] 12a68dfdf7
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5569)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.181.0 to 1.182.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.181.0...service/ec2/v1.182.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-14 11:33:11 -03:00
dependabot[bot] 77e2c2ac07
Bump google.golang.org/api from 0.199.0 to 0.200.0 (#5566)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.199.0 to 0.200.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.199.0...v0.200.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-12 10:24:18 -03:00
dependabot[bot] 248ee0e31f
Bump google.golang.org/protobuf from 1.34.2 to 1.35.1 (#5550)
* Bump google.golang.org/protobuf from 1.34.2 to 1.35.1

Bumps google.golang.org/protobuf from 1.34.2 to 1.35.1.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update generated files

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
2024-10-11 10:57:23 -03:00
dependabot[bot] b1d603f7cb
Bump github.com/Azure/azure-sdk-for-go/sdk/azidentity (#5562)
Bumps the azure-sdk group with 1 update: [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go).


Updates `github.com/Azure/azure-sdk-for-go/sdk/azidentity` from 1.7.0 to 1.8.0
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.7.0...sdk/azcore/v1.8.0)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: azure-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-10 16:25:01 -03:00
dependabot[bot] c744ba19fe
Bump actions/cache from 4.1.0 to 4.1.1 (#5559)
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](2cdf405574...3624ceb22c)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-10 14:27:03 -03:00
dependabot[bot] 8fd25a24bd
Bump github.com/mattn/go-sqlite3 from 1.14.23 to 1.14.24 (#5557)
Bumps [github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) from 1.14.23 to 1.14.24.
- [Release notes](https://github.com/mattn/go-sqlite3/releases)
- [Commits](https://github.com/mattn/go-sqlite3/compare/v1.14.23...v1.14.24)

---
updated-dependencies:
- dependency-name: github.com/mattn/go-sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-10 13:42:15 -03:00
dependabot[bot] f1437815a5
Bump actions/upload-artifact from 4.4.2 to 4.4.3 (#5564)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.4.2 to 4.4.3.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](84480863f2...b4b15b8c7c)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-10 10:01:24 -03:00
Agustín Martínez Fayó 3b4de184dd
When processing tainted authorities in the agent cache, use the bundles from the cache update, not the initial bundles (#5560)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-10-09 20:21:03 -03:00
dependabot[bot] 0ab6497d47
Bump golang.org/x/net from 0.29.0 to 0.30.0 (#5556)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.29.0 to 0.30.0.
- [Commits](https://github.com/golang/net/compare/v0.29.0...v0.30.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 15:19:49 -03:00
dependabot[bot] 8d431bd365
Bump github.com/spiffe/go-spiffe/v2 from 2.3.0 to 2.4.0 (#5555)
Bumps [github.com/spiffe/go-spiffe/v2](https://github.com/spiffe/go-spiffe) from 2.3.0 to 2.4.0.
- [Release notes](https://github.com/spiffe/go-spiffe/releases)
- [Changelog](https://github.com/spiffe/go-spiffe/blob/main/CHANGELOG.md)
- [Commits](https://github.com/spiffe/go-spiffe/compare/v2.3.0...v2.4.0)

---
updated-dependencies:
- dependency-name: github.com/spiffe/go-spiffe/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 12:40:57 -03:00
dependabot[bot] 22030ab88a
Bump actions/checkout from 4.2.0 to 4.2.1 (#5553)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.0 to 4.2.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](d632683dd7...eef61447b9)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 11:51:38 -03:00
dependabot[bot] 9ea47abb3f
Bump actions/upload-artifact from 4.4.0 to 4.4.2 (#5558)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.4.0 to 4.4.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](50769540e7...84480863f2)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 10:27:18 -03:00
Marcos Yacob 82701eaf01
Add integration tests for force rotation and revocation (#5526)
* Add integration tests for force rotation and revocation

- Self-singed authority: Starts a nested SPIRE server to test force rotation and revocation scenarios.
- Upstream authority: Use a disk-based upstream authority to test force rotation and revocation scenarios.

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-10-08 22:51:34 -03:00
dependabot[bot] 202205fc02
Bump actions/cache from 4.0.2 to 4.1.0 (#5546)
Bumps [actions/cache](https://github.com/actions/cache) from 4.0.2 to 4.1.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](0c45773b62...2cdf405574)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 10:11:24 -03:00
dependabot[bot] 4b674af67b
Bump docker/setup-buildx-action from 3.7.0 to 3.7.1 (#5547)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](8026d2bc36...c47758b77c)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 16:37:11 -03:00
dependabot[bot] bc2374816f
Bump the aws-sdk group with 9 updates (#5548)
Bumps the aws-sdk group with 9 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/service/acmpca](https://github.com/aws/aws-sdk-go-v2) | `1.36.3` | `1.37.0` |
| [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) | `1.180.0` | `1.181.0` |
| [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2) | `1.36.3` | `1.37.0` |
| [github.com/aws/aws-sdk-go-v2/service/kms](https://github.com/aws/aws-sdk-go-v2) | `1.36.3` | `1.37.0` |
| [github.com/aws/aws-sdk-go-v2/service/organizations](https://github.com/aws/aws-sdk-go-v2) | `1.33.1` | `1.34.0` |
| [github.com/aws/aws-sdk-go-v2/service/rolesanywhere](https://github.com/aws/aws-sdk-go-v2) | `1.15.3` | `1.16.0` |
| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.64.0` | `1.65.0` |
| [github.com/aws/aws-sdk-go-v2/service/secretsmanager](https://github.com/aws/aws-sdk-go-v2) | `1.33.3` | `1.34.0` |
| [github.com/aws/aws-sdk-go-v2/service/sts](https://github.com/aws/aws-sdk-go-v2) | `1.31.3` | `1.32.0` |


Updates `github.com/aws/aws-sdk-go-v2/service/acmpca` from 1.36.3 to 1.37.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.37.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ssm/v1.36.3...service/s3/v1.37.0)

Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.180.0 to 1.181.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.180.0...service/ec2/v1.181.0)

Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.36.3 to 1.37.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.37.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ssm/v1.36.3...service/s3/v1.37.0)

Updates `github.com/aws/aws-sdk-go-v2/service/kms` from 1.36.3 to 1.37.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.37.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ssm/v1.36.3...service/s3/v1.37.0)

Updates `github.com/aws/aws-sdk-go-v2/service/organizations` from 1.33.1 to 1.34.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.34.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.33.1...service/s3/v1.34.0)

Updates `github.com/aws/aws-sdk-go-v2/service/rolesanywhere` from 1.15.3 to 1.16.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/v1.16.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.15.3...v1.16.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.64.0 to 1.65.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.64.0...service/s3/v1.65.0)

Updates `github.com/aws/aws-sdk-go-v2/service/secretsmanager` from 1.33.3 to 1.34.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.34.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/fms/v1.33.3...service/s3/v1.34.0)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.31.3 to 1.32.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.31.3...v1.32.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/acmpca
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/kms
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/organizations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/rolesanywhere
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/secretsmanager
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 14:37:07 -03:00
dependabot[bot] 383ae3de3d
Bump github.com/sigstore/cosign/v2 from 2.4.0 to 2.4.1 (#5552)
Bumps [github.com/sigstore/cosign/v2](https://github.com/sigstore/cosign) from 2.4.0 to 2.4.1.
- [Release notes](https://github.com/sigstore/cosign/releases)
- [Changelog](https://github.com/sigstore/cosign/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sigstore/cosign/compare/v2.4.0...v2.4.1)

---
updated-dependencies:
- dependency-name: github.com/sigstore/cosign/v2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 14:07:27 -03:00
dependabot[bot] 3f73fc2ead
Bump sigstore/cosign-installer from 3.6.0 to 3.7.0 (#5545)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](4959ce089c...dc72c7d5c4)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 12:31:33 -03:00
Ryan Turner aa7ef27a50
Eliminate some raciness from gcpkms plugin tests (#5544)
* Eliminate some raciness from gcpkms plugin tests

`TestDisposeActiveCryptoKeys` has a race condition where a goroutine
that was processing keys for disposal was executing in parallel to some
assertions on state of the same keys. Rework this test to address
this race in the following ways:

- Enhance the fake KMS client used in the test to consider the filter condition
  for the `spire-last-update` label passed in the `ListCryptoKeys()`
  request. The test was not considering this field before, even though
  it is one of the primary factors in the plugin determining how to
  handle the key.
- Enrich the crypto keys set up in the fake KMS client by setting the
  `spire-last-update` label such that the plugin recognizes these keys
  as active based on last update time.
- Assert that the keys are not scheduled for destruction. The
  destruction of the keys is handled asynchronously in the plugin.
  The current test could have passed if the keys were queued for
  destruction, but the other goroutine processing the destruction
  operations hadn't completed yet. This is a potential source of raciness
  in the test.
- Make the mock clock used in the tests start at `time.Now()` instead of
  the Unix epoch because starting at the epoch causes some weird times
  to generated in the tests that are before the Unix epoch.

Making these changes broke a couple other tests. Summary of changes to
fix those tests:

`TestDisposeStaleCryptoKeys`:

- Start setting the `spire-last-update` label in the crypto keys set up
  in the fake KMS client so that the new filtering logic in
  `ListCryptoKeys()` in the fake KMS client gets exercised.
- Set up an unbuffered `chan error` for the `keepActiveCryptoKeySignal`
  so that we can block the goroutine that is renewing the active key
  last update time. Without blocking this goroutine, it will keep
  renewing the last update time of the active keys, potentially before
  another parallel goroutine can process it as stale.
- Advance the mock clock by the maximum of:
    - The duration that is the frequency of how often the stale key disposal
    goroutine runs
    - The maximum stale duration of a key
  The way the test is currently written assumes that the stale key disposal
  goroutine will run more frequently than the maximum stale duration, but it
  doesn't necessarily need to be the case.

`TestKeepActiveCryptoKeys`:

- Base the times in the test off of the current time rather than the
  Unix epoch as a start to align with other tests.

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2024-10-05 14:40:00 -07:00
dependabot[bot] ebd5a1f7b5
Bump cloud.google.com/go/storage in the google-cloud-sdk group (#5539)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/storage` from 1.43.0 to 1.44.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/pubsub/v1.43.0...spanner/v1.44.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/storage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-05 13:30:48 -07:00
Edwin Buck 500e291bbd
Fix undesirable regex pattern compliation approach. (#5537)
closes #5515

Signed-off-by: Edwin Buck <edwbuck@gmail.com>
2024-10-05 10:39:51 -06:00
Andrew Harding 3d48ac3474
Fix data race in agent manager tests (#5543)
Signed-off-by: Andrew Harding <azdagron@gmail.com>
2024-10-05 08:15:24 -06:00
dependabot[bot] 0665536ba9
Bump golang.org/x/time from 0.6.0 to 0.7.0 (#5540)
Bumps [golang.org/x/time](https://github.com/golang/time) from 0.6.0 to 0.7.0.
- [Commits](https://github.com/golang/time/compare/v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-04 14:48:42 -07:00
dependabot[bot] a716305379
Bump golang.org/x/crypto from 0.27.0 to 0.28.0 (#5542)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.27.0 to 0.28.0.
- [Commits](https://github.com/golang/crypto/compare/v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-04 13:49:09 -07:00
dependabot[bot] a89c5b9226
Bump github.com/aws/aws-sdk-go-v2/service/ec2 in the aws-sdk group (#5538)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.179.2 to 1.180.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.179.2...service/ec2/v1.180.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-04 10:11:11 -07:00
dependabot[bot] 5c2faee427
Bump docker/setup-buildx-action from 3.6.1 to 3.7.0 (#5536)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.6.1 to 3.7.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](988b5a0280...8026d2bc36)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-04 09:20:56 -07:00
dependabot[bot] 962c8cd127
Bump github.com/aws/aws-sdk-go-v2/service/s3 in the aws-sdk group (#5535)
Bumps the aws-sdk group with 1 update: [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.63.3 to 1.64.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.63.3...service/s3/v1.64.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-03 10:17:21 -07:00
Marcos Yacob 3070ee5974
Upgrade golang 1.23.2 (#5534)
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-10-03 13:22:57 -03:00
Ryan Turner c4505eaf57
Remove flaky `gcpkms` TestEnqueueDestruction (#5533)
This test has been historically very flaky on CI.

This test covers a very rare edge case that is difficult to simulate in
tests and is not covered in other plugins. Opened #5532 to create a more
robust test to cover this case.

Closes #3687.

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
2024-10-02 15:39:28 -03:00
Agustín Martínez Fayó 110ec0c321
Have `x509_svid_cache_max_size` as agent config setting (not experimental) (#5531)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-10-02 15:15:20 -03:00
dependabot[bot] 26b2d9323a
Bump github.com/open-policy-agent/opa from 0.68.0 to 0.69.0 (#5528)
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 0.68.0 to 0.69.0.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v0.68.0...v0.69.0)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 22:12:27 -07:00
dependabot[bot] 4c4cd827c0
Bump google.golang.org/api from 0.197.0 to 0.199.0 (#5520)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.197.0 to 0.199.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.197.0...v0.199.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 21:25:08 -07:00
dependabot[bot] 82d6843ec2
Bump google.golang.org/grpc from 1.66.2 to 1.67.1 (#5529)
* Bump google.golang.org/grpc from 1.66.2 to 1.67.1

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.66.2 to 1.67.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.66.2...v1.67.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Configure ALPN correctly in test

Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Ryan Turner <ryan.turner253@icloud.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Turner <ryan.turner253@icloud.com>
2024-10-01 15:22:43 -07:00
dependabot[bot] 5323e76ff3
Bump actions/checkout from 4.1.7 to 4.2.0 (#5519)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.7 to 4.2.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](692973e3d9...d632683dd7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 11:32:43 -07:00
dependabot[bot] 4c43f60857
Bump the aws-sdk group across 1 directory with 9 updates (#5527)
Bumps the aws-sdk group with 9 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2/service/acmpca](https://github.com/aws/aws-sdk-go-v2) | `1.35.0` | `1.36.3` |
| [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2) | `1.177.0` | `1.179.2` |
| [github.com/aws/aws-sdk-go-v2/service/iam](https://github.com/aws/aws-sdk-go-v2) | `1.35.0` | `1.36.3` |
| [github.com/aws/aws-sdk-go-v2/service/kms](https://github.com/aws/aws-sdk-go-v2) | `1.35.3` | `1.36.3` |
| [github.com/aws/aws-sdk-go-v2/service/organizations](https://github.com/aws/aws-sdk-go-v2) | `1.31.0` | `1.33.1` |
| [github.com/aws/aws-sdk-go-v2/service/rolesanywhere](https://github.com/aws/aws-sdk-go-v2) | `1.14.0` | `1.15.3` |
| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.61.0` | `1.63.3` |
| [github.com/aws/aws-sdk-go-v2/service/secretsmanager](https://github.com/aws/aws-sdk-go-v2) | `1.32.1` | `1.33.3` |
| [github.com/aws/aws-sdk-go-v2/service/sts](https://github.com/aws/aws-sdk-go-v2) | `1.30.3` | `1.31.3` |



Updates `github.com/aws/aws-sdk-go-v2/service/acmpca` from 1.35.0 to 1.36.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.35.0...service/ssm/v1.36.3)

Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.177.0 to 1.179.2
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.177.0...service/ec2/v1.179.2)

Updates `github.com/aws/aws-sdk-go-v2/service/iam` from 1.35.0 to 1.36.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.35.0...service/ssm/v1.36.3)

Updates `github.com/aws/aws-sdk-go-v2/service/kms` from 1.35.3 to 1.36.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/iot/v1.35.3...service/ssm/v1.36.3)

Updates `github.com/aws/aws-sdk-go-v2/service/organizations` from 1.31.0 to 1.33.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.33.1/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.31.0...service/s3/v1.33.1)

Updates `github.com/aws/aws-sdk-go-v2/service/rolesanywhere` from 1.14.0 to 1.15.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.14.0...config/v1.15.3)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.61.0 to 1.63.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.61.0...service/s3/v1.63.3)

Updates `github.com/aws/aws-sdk-go-v2/service/secretsmanager` from 1.32.1 to 1.33.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/sns/v1.32.1...service/fms/v1.33.3)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.30.3 to 1.31.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.30.3...service/s3/v1.31.3)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/acmpca
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/kms
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/organizations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/rolesanywhere
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/secretsmanager
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-30 09:54:33 -07:00
dependabot[bot] a772f83e5e
Bump github.com/aws/aws-sdk-go-v2 from 1.30.4 to 1.31.0 (#5510)
Bumps [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) from 1.30.4 to 1.31.0.
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.30.4...v1.31.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-30 09:40:59 -03:00
dependabot[bot] e137e0d8ae
Bump cloud.google.com/go/kms in the google-cloud-sdk group (#5507)
Bumps the google-cloud-sdk group with 1 update: [cloud.google.com/go/kms](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/kms` from 1.19.0 to 1.20.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/kms/v1.19.0...kms/v1.20.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/kms
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-30 08:56:13 -03:00
Marcos Yacob 8f82ebae23
Force rotation X.509 SVIDs in Agent side (#5446)
* Force rotation of X.509 workload SVIDs in lru cache
* Force rotation of X.509 workload SVIDs in store SVID cache
* Force rotation of Agent SVID

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-09-28 09:18:55 -03:00
amoore877 182b594b71
Delete non-LRU cache in SPIRE Agent (#5383)
* Delete non-LRU cache in SPIRE Agent

Signed-off-by: amoore877 <andrew.s.moore@uber.com>
2024-09-27 16:38:42 -03:00
Agustín Martínez Fayó cfb994a283
Add `upstreamauthority` commands and leverage the `UpstreamAuthoritySubjectKeyId` field in `AuthorityState` messages (#5518)
- Add `upstreamauthority revoke` and `upstreamauthority taint` commands
- Leverage the `UpstreamAuthoritySubjectKeyId` field in `AuthorityState` messages

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-27 14:45:05 -03:00
dependabot[bot] e9179be0eb
Bump github.com/docker/docker (#5511)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 27.2.1+incompatible to 27.3.1+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.2.1...v27.3.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-26 15:19:59 -03:00
dependabot[bot] 47b9eb8972
Bump github.com/prometheus/client_golang from 1.20.3 to 1.20.4 (#5498)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.3 to 1.20.4.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.3...v1.20.4)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-26 11:16:03 -03:00
Edwin Buck 41746f0df4
Implement the Validate RPC on built-in plugins (#5303)
The old API performed all configuration checks coupled with plugin
reconfiguration under the Configure() func.

The new API adds a Validation() func that only performs configuration
checks but has no impact on the running plugin.

To facilitate easier user, the pluginconf package was added that makes
it easier to handle the merged code streams through a pluginconf.Status
struct that will capture the first error (for integration with
Configure() while permitting the Validation() to capture all errors
that can be captured.

Unit tests had to be reworked, as a side-effect of using the new
pluginconf package is that all plugins now automatically check their
trustdomain, instead of each plugin checking it in a haphazard manner.

Occasionally, very small fixes were performed on plugins, and plugin
coding standards were tweaked in small ways to be more similar to each
other.

Signed-off-by: Edwin Buck <edwbuck@gmail.com>
2024-09-23 17:18:45 -06:00
Marcos Yacob 2328715f5f
Fix flaky TestUpstreamProcessTaintedAuthority test (#5504)
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-09-22 09:24:15 -03:00
Agustín Martínez Fayó 3d158ce563
Fix version support policy in Releasing document (#5499)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-18 10:59:26 -03:00
dependabot[bot] 29115b7584
Bump the k8s-io group with 5 updates (#5492)
Bumps the k8s-io group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.31.0` | `0.31.1` |
| [k8s.io/apimachinery](https://github.com/kubernetes/apimachinery) | `0.31.0` | `0.31.1` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.31.0` | `0.31.1` |
| [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) | `0.31.0` | `0.31.1` |
| [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils) | `0.31.0` | `0.31.1` |


Updates `k8s.io/api` from 0.31.0 to 0.31.1
- [Commits](https://github.com/kubernetes/api/compare/v0.31.0...v0.31.1)

Updates `k8s.io/apimachinery` from 0.31.0 to 0.31.1
- [Commits](https://github.com/kubernetes/apimachinery/compare/v0.31.0...v0.31.1)

Updates `k8s.io/client-go` from 0.31.0 to 0.31.1
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.31.0...v0.31.1)

Updates `k8s.io/kube-aggregator` from 0.31.0 to 0.31.1
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.31.0...v0.31.1)

Updates `k8s.io/mount-utils` from 0.31.0 to 0.31.1
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.31.0...v0.31.1)

---
updated-dependencies:
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-15 14:57:41 -03:00
dependabot[bot] 37c41ea92f
Bump google.golang.org/api from 0.196.0 to 0.197.0 (#5491)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.196.0 to 0.197.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.196.0...v0.197.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-15 12:25:53 -03:00
dependabot[bot] 7652a94755
Bump github.com/hashicorp/vault/sdk from 0.13.0 to 0.14.0 (#5490)
Bumps [github.com/hashicorp/vault/sdk](https://github.com/hashicorp/vault) from 0.13.0 to 0.14.0.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/vault/compare/sdk/v0.13.0...sdk/v0.14.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-15 00:48:37 -03:00
dependabot[bot] eca4c0ff68
Bump google.golang.org/grpc from 1.66.1 to 1.66.2 (#5493)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.66.1 to 1.66.2.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.66.1...v1.66.2)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-14 18:21:20 -03:00
Ryan Turner a81a43d900
No longer test against MySQL 5.7 (#5487)
* No longer test against MySQL 5.7

MySQL 5.7 is EOL as of October 2023.

Stop using MySQL 5.7 in integration tests, since it is not easy for the
project to support end-of-life database versions. Also log a warning
when MySQL 5.7 is used with SPIRE.

Importantly, this commit does not remove any existing support for MySQL
5.7. SPIRE may continue to work for some time with MySQL 5.7, but the
project makes no compatibility guarantees with MySQL 5.7 anymore, and
any existing compatibility with MySQL 5.7 may break at any time without
notice.

It is recommended that all SPIRE users using MySQL as a SQL backend
upgrade to MySQL 8.0.

Signed-off-by: Ryan Turner <turner@uber.com>

* Fix MySQL version check

Signed-off-by: Ryan Turner <turner@uber.com>

---------

Signed-off-by: Ryan Turner <turner@uber.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-14 16:03:56 -03:00
Marcos Yacob 3f3b2053c1
Force rotation intermediate and Server SVIDs (#5431)
* Force rotation of intermediates signed by a compromised authority
* Force rotation of Server SVIDs signed by a compromised authority
* Force rotation of server SVIDs when not using an upstream authority

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-09-14 14:51:29 -03:00
Marcos Yacob bd91b6d72c
Update CHANGELOG and tests to cover 1.10.4 (#5496)
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
2024-09-14 14:02:20 -03:00
dependabot[bot] c03d109626
Bump github.com/hashicorp/vault/api from 1.14.0 to 1.15.0 (#5489)
Bumps [github.com/hashicorp/vault/api](https://github.com/hashicorp/vault) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/hashicorp/vault/releases)
- [Changelog](https://github.com/hashicorp/vault/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/vault/compare/v1.14.0...v1.15.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/vault/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-14 10:07:15 -03:00
Faisal Memon 69cebe009e
AWS KMS CustomerMasterKeySpec to KeySpec (#5477)
* AWS KMS CustomerMasterKeySpec to KeySpec

Signed-off-by: Faisal Memon <fymemon@yahoo.com>
2024-09-13 10:05:50 -03:00
Andrew Harding d7ca5f207d
Log panics originating from built-in plugins (#5476)
* Logs panics originating from built-in plugins

Panics are swallowed by the grpc server middleware that hosts the
built-in plugins, making it hard to debug.

This PR changes the panic middleware to log the panic stack to the ERROR
log.

Also changed the plugintest framework to wire up a logger to the
testing.T so we can observe these in tests.

```
ERRO[0000] Plugin panicked                               cause="oh no" external=false plugin_name=disk plugin_type=UpstreamAuthority stack="goroutine 84 [running]:\nruntime/debug.Stack()\n\t/Users/azdagron/sdk/go1.23.0/src/runtime/debug/stack.go:26 +0x64\ngithub.com/spiffe/spire/pkg/common/catalog.convertPanic({0x106b43a90, 0x1400028a8c0}, {0x1060c5900, 0x106aa42c0})\n\t/Users/azdagron/spiffe/spire/pkg/common/catalog/host.go:69 +0xb0\ngithub.com/spiffe/spire/pkg/common/catalog.newBuiltInServer.unaryPanicInterceptor.func3.1()\n\t/Users/azdagron/spiffe/spire/pkg/common/catalog/host.go:59 +0x54\npanic({0x1060c5900?, 0x106aa42c0?})\n\t/Users/azdagron/sdk/go1.23.0/src/runtime/panic.go:785 +0x124\ngithub.com/spiffe/spire/pkg/server/plugin/upstreamauthority/disk.(*Plugin).Configure(0x108b4ba80?, {0x1067789a0?, 0x106abf0f0?}, 0x14000399f80?)\n\t/Users/azdagron/spiffe/spire/pkg/server/plugin/upstreamauthority/disk/disk.go:76 +0x2c\ngithub.com/spiffe/spire-plugin-sdk/proto/spire/service/common/config/v1._Config_Configure_Handler.func1({0x106b0f3f8?, 0x14000962120?}, {0x1066e0260?, 0x14000399240?})\n\t/Users/azdagron/go/pkg/mod/github.com/spiffe/spire-plugin-sdk@v1.4.4-0.20230721151831-bf67dde4721d/proto/spire/service/common/config/v1/config_grpc.pb.go:96 +0xd0\ngithub.com/spiffe/spire/pkg/common/catalog.newBuiltInServer.unaryPanicInterceptor.func3({0x106b0f3f8?, 0x14000962120?}, {0x1066e0260?, 0x14000399240?}, 0x14000931828?, 0x102920bcc?)\n\t/Users/azdagron/spiffe/spire/pkg/common/catalog/host.go:62 +0x78\ngoogle.golang.org/grpc.getChainUnaryHandler.func1({0x106b0f3f8, 0x14000962120}, {0x1066e0260, 0x14000399240})\n\t/Users/azdagron/go/pkg/mod/google.golang.org/grpc@v1.66.0/server.go:1211 +0xa0\ngithub.com/spiffe/spire/pkg/common/catalog.(*drainHandlers).UnaryServerInterceptor(0x1400033c3b0, {0x106b0f3f8, 0x14000962120}, {0x1066e0260, 0x14000399240}, 0x0?, 0x140003992c0)\n\t/Users/azdagron/spiffe/spire/pkg/common/catalog/builtin.go:184 +0x90\ngoogle.golang.org/grpc.NewServer.chainUnaryServerInterceptors.chainUnaryInterceptors.func1({0x106b0f3f8, 0x14000962120}, {0x1066e0260, 0x14000399240}, 0x140005c8240, 0x1068e1260?)\n\t/Users/azdagron/go/pkg/mod/google.golang.org/grpc@v1.66.0/server.go:1202 +0x88\ngithub.com/spiffe/spire-plugin-sdk/proto/spire/service/common/config/v1._Config_Configure_Handler({0x1067789a0, 0x14000596780}, {0x106b0f3f8, 0x14000962120}, 0x14000938480, 0x1400039c720)\n\t/Users/azdagron/go/pkg/mod/github.com/spiffe/spire-plugin-sdk@v1.4.4-0.20230721151831-bf67dde4721d/proto/spire/service/common/config/v1/config_grpc.pb.go:98 +0x148\ngoogle.golang.org/grpc.(*Server).processUnaryRPC(0x14000924000, {0x106b0f3f8, 0x14000962090}, {0x106b21480, 0x140000fe1a0}, 0x14000394fc0, 0x1400059cde0, 0x108b4ba40, 0x0)\n\t/Users/azdagron/go/pkg/mod/google.golang.org/grpc@v1.66.0/server.go:1393 +0xb78\ngoogle.golang.org/grpc.(*Server).handleStream(0x14000924000, {0x106b21480, 0x140000fe1a0}, 0x14000394fc0)\n\t/Users/azdagron/go/pkg/mod/google.golang.org/grpc@v1.66.0/server.go:1804 +0xb20\ngoogle.golang.org/grpc.(*Server).serveStreams.func2.1()\n\t/Users/azdagron/go/pkg/mod/google.golang.org/grpc@v1.66.0/server.go:1029 +0x84\ncreated by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 81\n\t/Users/azdagron/go/pkg/mod/google.golang.org/grpc@v1.66.0/server.go:1040 +0x13c\n" subsystem_name=catalog
```

Signed-off-by: Andrew Harding <azdagron@gmail.com>
2024-09-12 21:18:18 -03:00
Sorin Dumitru 2ffe1764d4
Fix "Rettestable" typo in telemetry name (#5269)
Signed-off-by: Sorin Dumitru <sdumitru@bloomberg.net>
2024-09-12 17:05:06 -03:00
Marcel Levy 32eaecaf0b
Remove deprecated -ttl flag from spire server cli (#5483)
* Remove deprecated -ttl flag from spire server cli

This commit removes the deprecated `-ttl` flag from `spire entry
create` and `spire entry update`. Docs are also updated.

See discussion in https://github.com/spiffe/spire/issues/5254

Signed-off-by: Marcel Levy <marcel@spirl.com>

* Remove -ttl from integration tests

Signed-off-by: Marcel Levy <marcel@spirl.com>

* Fix windows unit test

Signed-off-by: Marcel Levy <marcel@spirl.com>

---------

Signed-off-by: Marcel Levy <marcel@spirl.com>
Co-authored-by: Marcos Yacob <marcos.yacob@hpe.com>
2024-09-12 16:22:20 -03:00
dependabot[bot] 92143cb5ea
Bump google.golang.org/grpc from 1.66.0 to 1.66.1 (#5485)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.66.0 to 1.66.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/commits)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 11:40:07 -03:00
dependabot[bot] 86ade3cc8c
Bump github.com/jackc/pgx/v5 from 5.7.0 to 5.7.1 (#5486)
Bumps [github.com/jackc/pgx/v5](https://github.com/jackc/pgx) from 5.7.0 to 5.7.1.
- [Changelog](https://github.com/jackc/pgx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jackc/pgx/compare/v5.7.0...v5.7.1)

---
updated-dependencies:
- dependency-name: github.com/jackc/pgx/v5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 11:01:39 -03:00
dependabot[bot] 0ee32336a4
Bump github.com/docker/docker (#5482)
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 27.2.0+incompatible to 27.2.1+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.2.0...v27.2.1)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 10:00:20 -03:00
dependabot[bot] ec031e6428
Bump github.com/jackc/pgx/v5 from 5.6.0 to 5.7.0 (#5481)
Bumps [github.com/jackc/pgx/v5](https://github.com/jackc/pgx) from 5.6.0 to 5.7.0.
- [Changelog](https://github.com/jackc/pgx/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jackc/pgx/compare/v5.6.0...v5.7.0)

---
updated-dependencies:
- dependency-name: github.com/jackc/pgx/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-10 12:14:56 -03:00
Marco Franssen 281d0b8033
Bump tonistiigi/xx from 1.3.0 to 1.5.0 in Dockerfile (#5448)
Signed-off-by: Marco Franssen <marco.franssen@gmail.com>
2024-09-09 10:56:37 -03:00
Agustín Martínez Fayó d202d4e4f8
Expose already added localauthority commands in the commands list (fflag required) (#5479)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-08 13:45:19 -03:00
Faisal Memon b21a7ffdbd
Fix small typos in PCA unit tests (#5478)
Signed-off-by: Faisal Memon <fymemon@yahoo.com>
2024-09-08 11:46:08 -03:00
dependabot[bot] 67b86c036a
Bump golang.org/x/net from 0.28.0 to 0.29.0 (#5474)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.28.0 to 0.29.0.
- [Commits](https://github.com/golang/net/compare/v0.28.0...v0.29.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-07 09:49:00 -03:00
dependabot[bot] 3232561638
Bump golang.org/x/crypto from 0.26.0 to 0.27.0 (#5473)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.26.0 to 0.27.0.
- [Commits](https://github.com/golang/crypto/compare/v0.26.0...v0.27.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 16:40:27 -03:00
dependabot[bot] 58150b8c4f
Bump github.com/sigstore/sigstore from 1.8.8 to 1.8.9 (#5475)
Bumps [github.com/sigstore/sigstore](https://github.com/sigstore/sigstore) from 1.8.8 to 1.8.9.
- [Release notes](https://github.com/sigstore/sigstore/releases)
- [Commits](https://github.com/sigstore/sigstore/compare/v1.8.8...v1.8.9)

---
updated-dependencies:
- dependency-name: github.com/sigstore/sigstore
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 16:16:13 -03:00
dependabot[bot] 03f86eb43b
Bump google.golang.org/api from 0.195.0 to 0.196.0 (#5472)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.195.0 to 0.196.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.195.0...v0.196.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 15:09:51 -03:00
kfox1111 024435d7e1
Fix test breaking when a proxy is configured on the host (#5471)
Signed-off-by: Kevin Fox <Kevin.Fox@pnnl.gov>
2024-09-06 13:38:01 -03:00
Andrew Harding b64a2255e8
Use new container locator by default (#5454)
Custom matchers can still be used in the docker attestor but require
explicitly disabling the new container locator.

Signed-off-by: Andrew Harding <azdagron@gmail.com>
2024-09-06 08:14:26 -06:00
dependabot[bot] f0ad426bae
Bump github.com/opencontainers/runc from 1.1.13 to 1.1.14 (#5467)
Bumps [github.com/opencontainers/runc](https://github.com/opencontainers/runc) from 1.1.13 to 1.1.14.
- [Release notes](https://github.com/opencontainers/runc/releases)
- [Changelog](https://github.com/opencontainers/runc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/opencontainers/runc/compare/v1.1.13...v1.1.14)

---
updated-dependencies:
- dependency-name: github.com/opencontainers/runc
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-06 09:57:25 -03:00
dependabot[bot] e49fbc3676
Bump golang.org/x/sys from 0.24.0 to 0.25.0 (#5465)
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.24.0 to 0.25.0.
- [Commits](https://github.com/golang/sys/compare/v0.24.0...v0.25.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 18:26:31 -03:00
dependabot[bot] f027c5415f
Bump github.com/mattn/go-sqlite3 from 1.14.22 to 1.14.23 (#5464)
Bumps [github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) from 1.14.22 to 1.14.23.
- [Release notes](https://github.com/mattn/go-sqlite3/releases)
- [Commits](https://github.com/mattn/go-sqlite3/compare/v1.14.22...v1.14.23)

---
updated-dependencies:
- dependency-name: github.com/mattn/go-sqlite3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 16:09:36 -03:00
dependabot[bot] e07dfc6dcf
Bump github.com/prometheus/client_golang from 1.20.2 to 1.20.3 (#5469)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.2 to 1.20.3.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/v1.20.3/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.2...v1.20.3)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 15:14:53 -03:00
dependabot[bot] 1d1e686828
Bump github.com/open-policy-agent/opa from 0.67.1 to 0.68.0 (#5453)
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa) from 0.67.1 to 0.68.0.
- [Release notes](https://github.com/open-policy-agent/opa/releases)
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-policy-agent/opa/compare/v0.67.1...v0.68.0)

---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-05 13:48:06 -03:00
Faisal Memon d6b1a91474
Small typo in AWS PCA Upstream tests (#5432)
Signed-off-by: Faisal Memon <fymemon@yahoo.com>
2024-09-05 13:05:02 -03:00
Andrew Harding 39982e69b1
Fix racy spire upstreamauthority plugin tests (#5468)
The mock clock was not being threaded through everywhere causing
sporadic NotAfter related assertions to fail.

Signed-off-by: Andrew Harding <azdagron@gmail.com>
2024-09-05 12:34:37 -03:00
Hayden 7118533129
Introduce EJBCA UpstreamAuthority plugin for SPIRE Server (#5378)
* feat(ejbca): Initial EJBCA UpstreamAuthority plugin

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

* chore(test): Create EJBCA UpstreamAuthority integraiton test and
refactor EJBCA config to only support certs from file

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

* Resolve bug in EJBCA integration test and resolve linting issue in EJBCA docs

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

* chore(oauth): Remove OAuth from EJBCA UpstreamAuthority plugin

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

* chore(integration): Resolve bug in EJBCA integration test and refactor to use non-OAuth server config

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

* chore(docs): Remove link fragment from EJBCA docs

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

* chore(codereview): Resolve comments from code review

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

* chore(test): Refactor EJBCA integration test to use client_cert_key_path

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

* fix(ejbca): Replace ToPluginProtos with ToPluginFromCertificates

Signed-off-by: Hayden Roszell <hroszell@gmail.com>

---------

Signed-off-by: Hayden Roszell <hroszell@gmail.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-05 11:58:42 -03:00
dependabot[bot] 904f9a9cb4
Bump google.golang.org/grpc from 1.65.0 to 1.66.0 (#5451)
* Bump google.golang.org/grpc from 1.65.0 to 1.66.0

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.65.0 to 1.66.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.65.0...v1.66.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* prevent panic

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
Co-authored-by: Marcos Yacob <marcos.yacob@hpe.com>
2024-09-05 11:02:46 -03:00
dependabot[bot] 5e184c4c1c
Bump github.com/docker/docker from 27.1.2+incompatible to 27.2.0+incompatible (#5456)
* Bump github.com/docker/docker

Bumps [github.com/docker/docker](https://github.com/docker/docker) from 27.1.2+incompatible to 27.2.0+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v27.1.2...v27.2.0)

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

Signed-off-by: dependabot[bot] <support@github.com>

* upgrade version

Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Marcos Yacob <marcosyacob@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcos Yacob <marcosyacob@gmail.com>
Co-authored-by: Marcos Yacob <marcos.yacob@hpe.com>
2024-09-05 10:22:10 -03:00
Agustín Martínez Fayó 763ebe5fbc
Prune non supported migrations (#5466)
* Prune non-supported migrations

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-04 16:36:49 -03:00
Agustín Martínez Fayó 6cb89e8757
Add v1.10.2 and v1.10.3 to the changelog and update upgrade test (#5462)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-04 14:49:04 -03:00
Agustín Martínez Fayó db42b6c315
Revert "add SVID check to agent health check (#5298)" in main branch (#5461)
This reverts commit 033d8d6094.

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-04 14:08:16 -03:00
Agustín Martínez Fayó bf6725d96d
Bump SPIRE to v1.11.0 (#5463)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-04 13:42:07 -03:00
dependabot[bot] 3dc31a8e21
Bump google.golang.org/api from 0.194.0 to 0.195.0 (#5452)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.194.0 to 0.195.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.194.0...v0.195.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 18:20:22 -03:00
dependabot[bot] 6a8524a258
Bump actions/upload-artifact from 4.3.6 to 4.4.0 (#5447)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.6 to 4.4.0.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](834a144ee9...50769540e7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 17:14:01 -03:00
dependabot[bot] 6b428ee75e
Bump actions/setup-python from 5.1.1 to 5.2.0 (#5443)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5.1.1 to 5.2.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](39cd14951b...f677139bbe)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 16:04:19 -03:00
dependabot[bot] fd243f55b2
Bump the aws-sdk group across 1 directory with 3 updates (#5441)
Bumps the aws-sdk group with 3 updates in the / directory: [github.com/aws/aws-sdk-go-v2/service/ec2](https://github.com/aws/aws-sdk-go-v2), [github.com/aws/aws-sdk-go-v2/service/organizations](https://github.com/aws/aws-sdk-go-v2) and [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2).


Updates `github.com/aws/aws-sdk-go-v2/service/ec2` from 1.175.1 to 1.177.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/ec2/v1.175.1...service/ec2/v1.177.0)

Updates `github.com/aws/aws-sdk-go-v2/service/organizations` from 1.30.2 to 1.31.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/service/s3/v1.31.0/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.30.2...service/s3/v1.31.0)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.59.0 to 1.61.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.59.0...service/s3/v1.61.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ec2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/organizations
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: aws-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 14:05:07 -03:00
dependabot[bot] 1d874f2b05
Bump the k8s-io group across 1 directory with 2 updates (#5450)
Bumps the k8s-io group with 2 updates in the / directory: [k8s.io/kube-aggregator](https://github.com/kubernetes/kube-aggregator) and [k8s.io/mount-utils](https://github.com/kubernetes/mount-utils).


Updates `k8s.io/kube-aggregator` from 0.30.3 to 0.31.0
- [Commits](https://github.com/kubernetes/kube-aggregator/compare/v0.30.3...v0.31.0)

Updates `k8s.io/mount-utils` from 0.30.3 to 0.31.0
- [Commits](https://github.com/kubernetes/mount-utils/compare/v0.30.3...v0.31.0)

---
updated-dependencies:
- dependency-name: k8s.io/kube-aggregator
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
- dependency-name: k8s.io/mount-utils
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: k8s-io
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 13:38:21 -03:00
dependabot[bot] 730121dca8
Bump sigs.k8s.io/controller-runtime from 0.18.4 to 0.19.0 (#5405)
* Bump sigs.k8s.io/controller-runtime from 0.18.4 to 0.19.0

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.18.4 to 0.19.0.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.18.4...v0.19.0)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump sigs.k8s.io/controller-runtime from 0.18.4 to 0.19.0

Bumps [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) from 0.18.4 to 0.19.0.
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.18.4...v0.19.0)

---
updated-dependencies:
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* - Updated to not check for nil responses in GetNode, GetPod, and ValidateToken functions
- Replced NewSimpleClientset() (deprecated) in favor of NewClientset()
- Updated tests to make sure that nil results are converted to empty responses

Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-09-02 13:12:01 -03:00
dependabot[bot] 3979cd4ca0
Bump github.com/google/btree from 1.1.2 to 1.1.3 (#5438)
Bumps [github.com/google/btree](https://github.com/google/btree) from 1.1.2 to 1.1.3.
- [Commits](https://github.com/google/btree/compare/v1.1.2...v1.1.3)

---
updated-dependencies:
- dependency-name: github.com/google/btree
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:21:48 -03:00
dependabot[bot] dd0ea1e359
Bump the google-cloud-sdk group with 4 updates (#5437)
Bumps the google-cloud-sdk group with 4 updates: [cloud.google.com/go/iam](https://github.com/googleapis/google-cloud-go), [cloud.google.com/go/kms](https://github.com/googleapis/google-cloud-go), [cloud.google.com/go/secretmanager](https://github.com/googleapis/google-cloud-go) and [cloud.google.com/go/security](https://github.com/googleapis/google-cloud-go).


Updates `cloud.google.com/go/iam` from 1.1.12 to 1.2.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/iam/v1.1.12...iot/v1.2.0)

Updates `cloud.google.com/go/kms` from 1.18.4 to 1.19.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/kms/v1.18.4...kms/v1.19.0)

Updates `cloud.google.com/go/secretmanager` from 1.13.5 to 1.14.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/automl/v1.13.5...kms/v1.14.0)

Updates `cloud.google.com/go/security` from 1.17.4 to 1.18.0
- [Release notes](https://github.com/googleapis/google-cloud-go/releases)
- [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md)
- [Commits](https://github.com/googleapis/google-cloud-go/compare/retail/v1.17.4...kms/v1.18.0)

---
updated-dependencies:
- dependency-name: cloud.google.com/go/iam
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
- dependency-name: cloud.google.com/go/kms
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
- dependency-name: cloud.google.com/go/secretmanager
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
- dependency-name: cloud.google.com/go/security
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: google-cloud-sdk
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 10:18:39 -03:00
Steven Dang e91897bd74
Add gauge metrics to track missedEvents and cache sizes (#5411)
Signed-off-by: stevend <stevend@uber.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-27 16:37:03 -03:00
Faisal Memon 7982e3995b
Fix spire_server.md formatting (#5433)
Signed-off-by: Faisal Memon <fymemon@yahoo.com>
Co-authored-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-27 15:07:22 -03:00
dependabot[bot] 68fd559b6c
Bump github.com/GoogleCloudPlatform/cloudsql-proxy from 1.36.0 to 1.37.0 (#5403)
Bumps [github.com/GoogleCloudPlatform/cloudsql-proxy](https://github.com/GoogleCloudPlatform/cloudsql-proxy) from 1.36.0 to 1.37.0.
- [Release notes](https://github.com/GoogleCloudPlatform/cloudsql-proxy/releases)
- [Changelog](https://github.com/GoogleCloudPlatform/cloud-sql-proxy/blob/v1.37.0/CHANGELOG.md)
- [Commits](https://github.com/GoogleCloudPlatform/cloudsql-proxy/compare/v1.36.0...v1.37.0)

---
updated-dependencies:
- dependency-name: github.com/GoogleCloudPlatform/cloudsql-proxy
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-27 12:22:31 -03:00
Faisal Memon ca751018a4
Update spire_server.md (#5430)
Signed-off-by: Faisal Memon <fymemon@yahoo.com>
2024-08-26 19:24:09 -03:00
dependabot[bot] 6e9b8a3715
Bump github.com/prometheus/client_golang from 1.19.1 to 1.20.2 (#5429)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.19.1 to 1.20.2.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.19.1...v1.20.2)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 13:15:47 -06:00
dependabot[bot] 1883ed693c
Bump google.golang.org/api from 0.192.0 to 0.194.0 (#5415)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.192.0 to 0.194.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.192.0...v0.194.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 11:13:50 -06:00
Andrew Harding cfb4f27ba9
Fix racy manager tests (#5428)
This PR fixes races in the manager tests when utilizing the fake
upstream authority. The fake upstream authority implementation did not
use the test clock set up by the tests, which caused expected time
fields on certificates to be populated with real time, causing sporadic
test failures when they diverged.

Threading the test clock into the fake upstream authority fixes the
races.

Signed-off-by: Andrew Harding <azdagron@gmail.com>
2024-08-26 10:26:14 -03:00
Kevin Nisbet 48397e9f66
Add microcaching and merging of parallel requests to kubelet in the k8s workload attestor (#5408)
Adds a short lived cache for the responses from Kubelet reducing memory and CPU usage of the k8s workload attestor plugin.

Signed-off-by: Kevin Nisbet <kevin.nisbet+github@xybyte.com>
2024-08-25 19:40:07 -06:00
Agustín Martínez Fayó 755ace1134
Small changes in tests for localauthority server commands (#5426)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-25 11:00:43 -03:00
amoore877 6e3b32c965
Eagerly fail a test suite if a step is not executable (#5389)
Signed-off-by: amoore877 <andrew.s.moore@uber.com>
2024-08-24 09:33:31 -06:00
amoore877 1eb43407b8
reduce flakiness in evict-agent CI (#5386)
Signed-off-by: amoore877 <andrew.s.moore@uber.com>
2024-08-24 08:57:51 -06:00
Agustín Martínez Fayó d4215536b3
Add `localauthority jwt revoke` server command (#5425)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-23 22:03:19 -03:00
Agustín Martínez Fayó f3d3b5214b
Add `localauthority x509 revoke` server command (#5424)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-23 21:36:16 -03:00
Agustín Martínez Fayó 5abec25ffa
Add `localauthority jwt taint` server command (#5423)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-23 20:10:41 -03:00
Agustín Martínez Fayó 5d445fd64f
Add `localauthority x509 taint` server command (#5422)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-23 19:00:40 -03:00
Agustín Martínez Fayó 4e802eeb64
Add `localauthority jwt activate` server command (#5421)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-23 18:34:58 -03:00
Agustín Martínez Fayó 4e21243ed2
Add `localauthority x509 activate` server command (#5420)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-23 18:01:46 -03:00
Agustín Martínez Fayó 3766a42a09
Add `localauthority x509 prepare` server command (#5419)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-23 17:22:03 -03:00
Agustín Martínez Fayó 5c6b0f422b
Add `localauthority jwt prepare` server command (#5418)
Signed-off-by: Agustín Martínez Fayó <amartinezfayo@gmail.com>
2024-08-23 15:54:53 -03:00
835 changed files with 34556 additions and 13645 deletions

View File

@ -10,9 +10,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up Python 3.x
uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0
with:
python-version: '3.x'
- name: Check DCO

View File

@ -10,6 +10,6 @@ jobs:
steps:
- name: 'Checkout Repository'
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: 'Dependency Review'
uses: actions/dependency-review-action@5a2ce3f5b92ee19cbb1541a4984c76d921601d7c # v4.3.4
uses: actions/dependency-review-action@3b139cfc5fae8b618d3eae3675e383bb1769c019 # v4.5.0

View File

@ -19,13 +19,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Install cosign
uses: sigstore/cosign-installer@4959ce089c160fddf62f7b42464195ba1a56d382 # v3.6.0
uses: sigstore/cosign-installer@dc72c7d5c4d10cd6bcb8cf6e3fd625a9e5e537da # v3.7.0
with:
cosign-release: v2.2.3
- name: Install regctl
uses: regclient/actions/regctl-installer@b6614f5f56245066b533343a85f4109bdc38c8cc # main
uses: regclient/actions/regctl-installer@ce5fd131e371ffcdd7508b478cb223b3511a9183 # main
- name: Build images
run: make images
- name: Log in to GHCR

View File

@ -19,13 +19,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Setup dep cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@ -43,18 +43,18 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Setup build tool cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
@ -80,13 +80,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@ -104,13 +104,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@ -128,13 +128,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Install regctl
uses: regclient/actions/regctl-installer@b6614f5f56245066b533343a85f4109bdc38c8cc # main
uses: regclient/actions/regctl-installer@ce5fd131e371ffcdd7508b478cb223b3511a9183 # main
- name: Download archived images
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
@ -146,7 +146,7 @@ jobs:
- name: Build artifacts
run: ./.github/workflows/scripts/build_artifacts.sh ${{ runner.os }}
- name: Archive artifacts
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: binaries-linux
path: ./artifacts/
@ -162,31 +162,31 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
- name: Set up QEMU
uses: docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3.2.0
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@988b5a0280414f521da01fcc63a27aeeb4b104db # v3.6.1
uses: docker/setup-buildx-action@6524bf65af31da8d45b59e8c27de4bd072b392f5 # v3.8.0
- name: Build images
run: make images-no-load
- name: Export images
run: tar -czvf images.tar.gz *-image.tar
- name: Archive images
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: images
path: images.tar.gz
@ -202,12 +202,12 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Load cached executables
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ./bin/
key: ${{ runner.os }}-executables-${{ hashFiles('**/*.exe') }}
key: ${{ runner.os }}-executables-${{ github.sha }}
- name: Build images
run: make images-windows
- name: Export images
@ -215,7 +215,7 @@ jobs:
docker save spire-server-windows:latest-local spire-agent-windows:latest-local oidc-discovery-provider-windows:latest-local -o images-windows.tar
gzip images-windows.tar
- name: Archive images
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: images-windows
path: images-windows.tar.gz
@ -228,7 +228,7 @@ jobs:
contents: read
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- id: set-matrix
name: Collect versions
run: |
@ -239,10 +239,9 @@ jobs:
outputs:
test: ${{ steps.set-matrix.outputs.test }}
integration:
name: integration (linux)
runs-on: ubuntu-22.04
name: integration (${{ matrix.arch }}) (${{ strategy.job-index}}/${{ strategy.job-total }})
runs-on: ${{ matrix.runs-on }}
needs: [cache-deps, images]
timeout-minutes: 45
@ -252,11 +251,17 @@ jobs:
strategy:
fail-fast: false
matrix:
num_runners: [5]
runner_id: [1, 2, 3, 4, 5]
arch: [x64, arm64]
num_runners: [10]
runner_id: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
include:
- arch: x64
runs-on: ubuntu-22.04
- arch: arm64
runs-on: ubuntu-22.04-arm
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
# The "upgrade" integration test needs the history to ensure
# that the version number in the source code has been bumped as
@ -264,18 +269,18 @@ jobs:
# fetch depth of zero.
fetch-depth: 0
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Install regctl
uses: regclient/actions/regctl-installer@b6614f5f56245066b533343a85f4109bdc38c8cc # main
uses: regclient/actions/regctl-installer@ce5fd131e371ffcdd7508b478cb223b3511a9183 # main
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
@ -294,13 +299,12 @@ jobs:
THIS_RUNNER: ${{ matrix.runner_id }}
TERM: dumb
CICD_TARGET_BRANCH: ${{ github.event.pull_request.base.ref }}
IGNORE_SUITES: ${{ matrix.arch == 'arm64' && 'suites/upstream-authority-ejbca' || '' }} # Waiting for EJBCA to support arm64 (https://github.com/spiffe/spire/issues/6060)
run: ./.github/workflows/scripts/split.sh | xargs ./test/integration/test.sh
integration-k8s:
name: integration-k8s
runs-on: ubuntu-22.04
name: integration-k8s-${{ matrix.test[0] }}-${{ matrix.arch }}
runs-on: ${{ matrix.runs-on }}
needs: [cache-deps, images, build-matrix]
timeout-minutes: 45
@ -310,13 +314,21 @@ jobs:
strategy:
fail-fast: false
matrix:
num_runners: [1]
runner_id: [1]
#Test elements should be added as [KubeCTLVersion, K8s-image, KindVersion]
test: ${{ fromJson(needs.build-matrix.outputs.test) }}
arch: [x64, arm64]
include:
- arch: x64
runs-on: ubuntu-22.04
num_runners: 1
runner_id: 1
- arch: arm64
runs-on: ubuntu-22.04-arm
num_runners: 1
runner_id: 1
#Test elements should be added as [KubeCTLVersion, K8s-image, KindVersion]
test: ${{ fromJson(needs.build-matrix.outputs.test) }}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
# The "upgrade" integration test needs the history to ensure
# that the version number in the source code has been bumped as
@ -324,18 +336,18 @@ jobs:
# fetch depth of zero.
fetch-depth: 0
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Install regctl
uses: regclient/actions/regctl-installer@b6614f5f56245066b533343a85f4109bdc38c8cc # main
uses: regclient/actions/regctl-installer@ce5fd131e371ffcdd7508b478cb223b3511a9183 # main
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
@ -379,24 +391,24 @@ jobs:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
cache: true
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
- name: Install msys2
uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
uses: msys2/setup-msys2@d44ca8e88d8b43d56cf5670f91747359d5537f97 # v2.26.0
with:
msystem: MINGW64
update: true
@ -429,14 +441,14 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
cache: true
- name: Setup dep cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@ -462,24 +474,24 @@ jobs:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
cache: true
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Setup build tool cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
- name: Install msys2
uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
uses: msys2/setup-msys2@d44ca8e88d8b43d56cf5670f91747359d5537f97 # v2.26.0
with:
msystem: MINGW64
update: true
@ -511,19 +523,19 @@ jobs:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
cache: true
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Install msys2
uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
uses: msys2/setup-msys2@d44ca8e88d8b43d56cf5670f91747359d5537f97 # v2.26.0
with:
msystem: MINGW64
update: true
@ -551,24 +563,24 @@ jobs:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
cache: true
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
- name: Install msys2
uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
uses: msys2/setup-msys2@d44ca8e88d8b43d56cf5670f91747359d5537f97 # v2.26.0
with:
msystem: MINGW64
update: true
@ -577,21 +589,21 @@ jobs:
- name: Build binaries
run: make build
- name: Setup executables cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ./bin/
key: ${{ runner.os }}-executables-${{ hashFiles('**/*.exe') }}
key: ${{ runner.os }}-executables-${{ github.sha }}
- name: Build artifacts
run: ./.github/workflows/scripts/build_artifacts.sh ${{ runner.os }}
- name: Archive artifacts
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: binaries-windows
path: ./artifacts/
success:
runs-on: ubuntu-22.04
needs: [lint, unit-test, unit-test-race-detector, artifacts, integration, lint-windows, unit-test-windows, artifacts-windows, integration-windows]
needs: [lint, unit-test, unit-test-race-detector, artifacts, integration, integration-k8s, lint-windows, unit-test-windows, artifacts-windows, integration-windows]
timeout-minutes: 30
permissions:
contents: read

View File

@ -13,13 +13,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Setup dep cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@ -36,18 +36,18 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Setup build tool cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
@ -72,13 +72,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@ -95,13 +95,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@ -119,13 +119,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Install regctl
uses: regclient/actions/regctl-installer@b6614f5f56245066b533343a85f4109bdc38c8cc # main
uses: regclient/actions/regctl-installer@ce5fd131e371ffcdd7508b478cb223b3511a9183 # main
- name: Download archived images
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
@ -137,7 +137,7 @@ jobs:
- name: Build artifacts
run: ./.github/workflows/scripts/build_artifacts.sh ${{ runner.os }}
- name: Archive artifacts
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: binaries-linux
path: ./artifacts/
@ -152,18 +152,18 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
@ -172,7 +172,7 @@ jobs:
- name: Export images
run: tar -czvf images.tar.gz *-image.tar
- name: Archive images
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: images
path: images.tar.gz
@ -187,12 +187,12 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Load cached executables
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ./bin/
key: ${{ runner.os }}-executables-${{ hashFiles('**/*.exe') }}
key: ${{ runner.os }}-executables-${{ github.sha }}
- name: Build images
run: make images-windows
- name: Export images
@ -200,7 +200,7 @@ jobs:
docker save spire-server-windows:latest-local spire-agent-windows:latest-local oidc-discovery-provider-windows:latest-local -o images-windows.tar
gzip images-windows.tar
- name: Archive images
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: images-windows
path: images-windows.tar.gz
@ -213,7 +213,7 @@ jobs:
contents: read
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- id: set-matrix
name: Collect versions
run: |
@ -225,9 +225,10 @@ jobs:
test: ${{ steps.set-matrix.outputs.test }}
integration:
name: integration (linux)
runs-on: ubuntu-22.04
name: integration (${{ matrix.arch }}) (${{ strategy.job-index}}/${{ strategy.job-total }})
runs-on: ${{ matrix.runs-on }}
needs: [cache-deps, images]
timeout-minutes: 45
permissions:
contents: read
@ -235,11 +236,17 @@ jobs:
strategy:
fail-fast: false
matrix:
num_runners: [5]
runner_id: [1, 2, 3, 4, 5]
arch: [x64, arm64]
num_runners: [10]
runner_id: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
include:
- arch: x64
runs-on: ubuntu-22.04
- arch: arm64
runs-on: ubuntu-22.04-arm
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
# The "upgrade" integration test needs the history to ensure
# that the version number in the source code has been bumped as
@ -256,18 +263,18 @@ jobs:
- name: Fix tag annotations
run: git fetch --tags --force
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Install regctl
uses: regclient/actions/regctl-installer@b6614f5f56245066b533343a85f4109bdc38c8cc # main
uses: regclient/actions/regctl-installer@ce5fd131e371ffcdd7508b478cb223b3511a9183 # main
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
@ -285,14 +292,15 @@ jobs:
NUM_RUNNERS: ${{ matrix.num_runners }}
THIS_RUNNER: ${{ matrix.runner_id }}
TERM: dumb
IGNORE_SUITES: ${{ matrix.arch == 'arm64' && 'suites/upstream-authority-ejbca' || '' }} # Waiting for EJBCA to support arm64 (https://github.com/spiffe/spire/issues/6060)
# We don't need to specify CICD_TARGET_BRANCH since the upgrade
# integration test will detect the annotated tag for version checking.
# CICD_TARGET_BRANCH:
run: ./.github/workflows/scripts/split.sh | xargs ./test/integration/test.sh
integration-k8s:
name: integration-k8s
runs-on: ubuntu-22.04
name: integration-k8s-${{ matrix.test[0] }}-${{ matrix.arch }}
runs-on: ${{ matrix.runs-on }}
needs: [cache-deps, images, build-matrix]
timeout-minutes: 45
@ -302,13 +310,21 @@ jobs:
strategy:
fail-fast: false
matrix:
num_runners: [1]
runner_id: [1]
#Test elements should be added as [KubeCTLVersion, K8s-image, KindVersion]
test: ${{ fromJson(needs.build-matrix.outputs.test) }}
arch: [x64, arm64]
include:
- arch: x64
runs-on: ubuntu-22.04
num_runners: 1
runner_id: 1
- arch: arm64
runs-on: ubuntu-22.04-arm
num_runners: 1
runner_id: 1
#Test elements should be added as [KubeCTLVersion, K8s-image, KindVersion]
test: ${{ fromJson(needs.build-matrix.outputs.test) }}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
# The "upgrade" integration test needs the history to ensure
# that the version number in the source code has been bumped as
@ -316,18 +332,18 @@ jobs:
# fetch depth of zero.
fetch-depth: 0
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Install regctl
uses: regclient/actions/regctl-installer@b6614f5f56245066b533343a85f4109bdc38c8cc # main
uses: regclient/actions/regctl-installer@ce5fd131e371ffcdd7508b478cb223b3511a9183 # main
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
@ -364,23 +380,23 @@ jobs:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
- name: Install msys2
uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
uses: msys2/setup-msys2@d44ca8e88d8b43d56cf5670f91747359d5537f97 # v2.26.0
with:
msystem: MINGW64
update: true
@ -407,13 +423,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Setup dep cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
@ -433,23 +449,23 @@ jobs:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Setup build tool cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
- name: Install msys2
uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
uses: msys2/setup-msys2@d44ca8e88d8b43d56cf5670f91747359d5537f97 # v2.26.0
with:
msystem: MINGW64
update: true
@ -475,18 +491,18 @@ jobs:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Install msys2
uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
uses: msys2/setup-msys2@d44ca8e88d8b43d56cf5670f91747359d5537f97 # v2.26.0
with:
msystem: MINGW64
update: true
@ -508,23 +524,23 @@ jobs:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Setup go
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- name: Load cached deps
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
- name: Load cached build tools
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: .build
key: ${{ runner.os }}-tools-${{ hashFiles('.go-version','Makefile') }}
- name: Install msys2
uses: msys2/setup-msys2@ddf331adaebd714795f1042345e6ca57bd66cea8 # v2.24.1
uses: msys2/setup-msys2@d44ca8e88d8b43d56cf5670f91747359d5537f97 # v2.26.0
with:
msystem: MINGW64
update: true
@ -535,25 +551,25 @@ jobs:
- name: Build artifacts
run: ./.github/workflows/scripts/build_artifacts.sh ${{ runner.os }}
- name: Setup executables cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
with:
path: ./bin/
key: ${{ runner.os }}-executables-${{ hashFiles('**/*.exe') }}
key: ${{ runner.os }}-executables-${{ github.sha }}
- name: Archive artifacts
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4
uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4
with:
name: binaries-windows
path: ./artifacts/
publish-artifacts:
runs-on: ubuntu-22.04
needs: [lint, unit-test, unit-test-race-detector, artifacts, integration, lint-windows, unit-test-windows, artifacts-windows, integration-windows]
needs: [lint, unit-test, unit-test-race-detector, artifacts, integration, integration-k8s, lint-windows, unit-test-windows, artifacts-windows, integration-windows]
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Download archived Linux artifacts
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
@ -568,7 +584,7 @@ jobs:
- name: Create Release
env:
# GH_REPO is required for older releases of `gh`. Until we're
# reasonably confident that that the gh release is new enough,
# reasonably confident that the gh release is new enough,
# set GH_REPO to the repository to create the release in.
#
# See https://github.com/cli/cli/issues/3556
@ -579,7 +595,7 @@ jobs:
publish-images:
runs-on: ubuntu-22.04
needs: [lint, unit-test, unit-test-race-detector, artifacts, integration, lint-windows, unit-test-windows, artifacts-windows, integration-windows]
needs: [lint, unit-test, unit-test-race-detector, artifacts, integration, integration-k8s, lint-windows, unit-test-windows, artifacts-windows, integration-windows]
permissions:
contents: read
id-token: write
@ -587,13 +603,13 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Install cosign
uses: sigstore/cosign-installer@4959ce089c160fddf62f7b42464195ba1a56d382 # v3.6.0
uses: sigstore/cosign-installer@dc72c7d5c4d10cd6bcb8cf6e3fd625a9e5e537da # v3.7.0
with:
cosign-release: v2.2.3
- name: Install regctl
uses: regclient/actions/regctl-installer@b6614f5f56245066b533343a85f4109bdc38c8cc # main
uses: regclient/actions/regctl-installer@ce5fd131e371ffcdd7508b478cb223b3511a9183 # main
- name: Download archived images
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:

View File

@ -23,6 +23,13 @@
declare -A tags_map
for element in "${tags_sorted[@]}"; do
# Skip 1.32.1 until either a new version of kind is released the problem
# with the kindest/node:1.32.1 image is fixed. See upstream kind issue:
# https://github.com/kubernetes-sigs/kind/issues/3853
if [[ "$element" == "v1.32.1" ]]; then
continue
fi
# Element is in this form: "X.XX.YY"
# If not, continue
num_dots=$(echo "$element" | grep -o '\.' | wc -l)

View File

@ -16,7 +16,24 @@ jobs:
days-before-issue-stale: 365 # 1 year
days-before-issue-close: 30
stale-issue-label: "stale"
exempt-issue-labels: "blocked" # Ignore blocked issues
stale-issue-message: "This issue is stale because it has been open for 365 days with no activity."
close-issue-message: "This issue was closed because it has been inactive for 30 days since being marked as stale."
days-before-pr-stale: -1 # Don't handle PRs
days-before-pr-close: -1 # Don't handle PRs
process-stale-blocked-issues:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e # v9.0.0
with:
only-labels: "blocked"
days-before-issue-stale: 30
days-before-issue-close: -1 # Don't close blocked issues
stale-issue-label: "stale"
stale-issue-message: "This issue has been in the blocked state for 30 days, marking as stale so the blocking issue is re-checked."
days-before-pr-stale: -1 # Don't handle PRs
days-before-pr-close: -1 # Don't handle PRs

View File

@ -1 +1 @@
1.23.0
1.24.4

View File

@ -1,34 +1,87 @@
version: "2"
run:
# timeout for analysis, e.g. 30s, 5m, default is 1m
timeout: 12m
issues:
exclude-dirs:
- testdata$
- test/mock
exclude-files:
- ".*\\.pb\\.go"
linters:
enable:
- bodyclose
- copyloopvar
- durationcheck
- errorlint
- goimports
- revive
- exptostd
- gocritic
- gosec
- intrange
- mirror
- misspell
- nakedret
- nilnesserr
- nolintlint
- predeclared
- reassign
- revive
- unconvert
- unparam
- wastedassign
- whitespace
- gocritic
- nolintlint
linters-settings:
revive:
# minimal confidence for issues, default is 0.8
confidence: 0.0
settings:
govet:
enable:
- sortslice
- unusedwrite
revive:
confidence: 0
rules:
- name: atomic
- name: bool-literal-in-expr
- name: constant-logical-expr
- name: context-as-argument
- name: datarace
- name: error-naming
- name: error-return
- name: errorf
- name: identical-branches
- name: if-return
- name: increment-decrement
- name: modifies-value-receiver
- name: optimize-operands-order
- name: range
- name: receiver-naming
- name: redundant-import-alias
- name: redundant-test-main-exit
- name: string-of-int
- name: time-equal
- name: unconditional-recursion
- name: unnecessary-stmt
- name: unreachable-code
- name: use-any
- name: use-errors-new
- name: useless-break
- name: var-declaration
- name: waitgroup-by-value
staticcheck:
checks:
- all
- -ST1003
- -QF1001
- -QF1008
exclusions:
generated: lax
presets:
- comments
- common-false-positives
- legacy
- std-error-handling
rules:
- name: unused-parameter
disabled: true
- linters:
- gosec
path: (.*_test\.go$)|(^test/.*)
text: integer overflow conversion
- linters:
- revive
text: Import alias "v1" is redundant
formatters:
enable:
- gofmt
- goimports
exclusions:
generated: lax

View File

@ -1,3 +1,3 @@
golangci_lint v1.60.1
golangci-lint v2.1.6
markdown_lint v0.37.0
protoc 24.4
protoc 29.4

View File

@ -1,5 +1,206 @@
# Changelog
## [1.12.4] - 2025-07-01
### Added
- `k8s_configmap` BundlePublisher plugin (#6105, #6139)
- UpstreamAuthority.SubscribeToLocalBundle RPC to stream updates in the local trust bundle (#6090)
- Integration tests running on ARM64 platform (#6059)
- The OIDC Discovery Provider can now read the trust bundle from a file (#6025)
### Changed
- The "Container id not found" log message in the `k8s` WorkloadAttestor has been lowered to Debug level (#6128)
- Improvements in lookup performance for entries (#6100, #6034)
- Agent no longer pulls the bundle from `trust_bundle_url` if it is not required (#6065)
### Fixed
- The `subject_types_supported` value in the discovery document is now properly populated by the OIDC Discovery Provider (#6126)
- SPIRE Server gRPC servers are now gracefully stopped (#6076)
## [1.12.3] - 2025-06-17
### Security
- Fixed an issue in spire-agent where the WorkloadAPI.ValidateJWTSVID endpoint did not enforce the presence of the exp (expiration) claim in JWT-SVIDs, as required by the SPIFFE specification.
This vulnerability has limited impact: by default, SPIRE does not issue JWT-SVIDs without an expiration claim. Exploitation would require federating with a misconfigured or non-compliant trust domain.
Thanks to Edoardo Geraci for reporting this issue.
## [1.12.2] - 2025-05-19
### Fixed
- Regression where PolicyCredentials set by CredentialComposer plugins were not correctly applied to CA certificates. (#6074)
## [1.12.1] - 2025-05-06
### Added
- Support for Unix sockets in trust bundle URLs (#5932)
- Documentation improvements and additions (#5989, #6012)
### Changed
- `sql_transaction_timeout` replaced by `event_timeout` and value reduced to 15 minutes (#5966)
- Experimental events-based cache performance improvements by batch fetching updated entries (#5970)
- Improved error messages when retrieving CGroups (#6030).
### Fixed
- Corrected invalid `user-agent` value in OIDC Discovery Provider debug logs (#5981).
## [1.12.0] - 2025-03-21
### Added
- Support for any S3 compatible object storage such as MinIO in the `aws_s3` BundlePublisher plugin (#5757)
- Support for Rego V1 in the authorization policy engine (#5769)
- Support for SAN-based selectors in the `x509pop` NodeAttestor plugin (#5775)
### Changed
- Agents now use the SyncAuthorizedEntries API for periodically synchronization of authorized entries by default (#5906)
- Timestamps in logs are now formatted to include nanoseconds (#5798)
- Improved entry lookup performance in NewJWTSVID and BatchNewX509SVID server RPCs (#5819)
- Increased the maximum number of idle database connections to 100 (#5853)
- The maximum idle time per database connection is now set to 30 seconds (#5853)
- Small documentation improvements (#5873, #5876)
- The experimental events-based cache now supports reading events from read-only replicas when data staleness is tolerated, enhancing read performance (#5911)
- The `use_legacy_downstream_x509_ca_ttl` server setting is now set to false by default (#5917)
### Deprecated
- `use_sync_authorized_entries` experimental agent setting (#5906)
- `use_legacy_downstream_x509_ca_ttl` server setting (#5917)
### Removed
- The deprecated `k8s_sat` NodeAttestor plugin (#5703)
### Fixed
- Issue where agents did not receive entry updates when new entries with the same entry ID were created while `use_sync_authorized_entries` was enabled (#5764)
## [1.11.3] - 2025-06-17
### Security
- Fixed an issue in spire-agent where the WorkloadAPI.ValidateJWTSVID endpoint did not enforce the presence of the exp (expiration) claim in JWT-SVIDs, as required by the SPIFFE specification.
This vulnerability has limited impact: by default, SPIRE does not issue JWT-SVIDs without an expiration claim. Exploitation would require federating with a misconfigured or non-compliant trust domain.
Thanks to Edoardo Geraci for reporting this issue.
## [1.11.2] - 2025-02-13
### Added
- `gcp_secretmanager` SVIDStore plugin now supports specifying the regions where secrets are created (#5718)
- Support for expanding environment variables in the OIDC Discovery Provider configuration (#5689)
- Support for optionally enabling `trust_domain` label for all metrics (#5673)
- The JWKS URI returned in the discovery document can now be configured in the OIDC Discovery Provider (#5690)
- A server path prefix can now be specified in the OIDC Discovery Provider (#5690)
### Changed
- Small documentation improvements (#5809, #5720)
### Fixed
- Regression in the hydration of the experimental event-based cache that caused a delay in availability (#5842)
- Do not log an error when the Envoy SDS v3 API connection has been closed cleanly (#5835)
- SVIDStore plugins to properly parse metadata in entry selectors containing ':' characters (#5750)
- Compatibility with deployments that use a server port other than 443 when the `jwt_issuer` configuration is set in the OIDC Discovery Provider (#5690)
- Domain verification is now properly done when setting the `jwt_issuer` configuration in the OIDC Discovery Provider (#5690)
### Security
- Fixed to properly call the CompareObjectHandles function when it's available on Windows systems, as an extra security measure in the peertracker (#5749)
## [1.11.1] - 2024-12-12
### Added
- The Go based text/template engine used in various plugins has been extended to include a set of functions from the SPRIG library (#5593, #5625)
- The JWT-SVID cache in the agent is now configurable (#5633)
- The JWT issuer is now configurable in the OIDC Discovery Provider (#5657)
### Changed
- CA journal now relies on the authority ID instead of the issued time when updating the status of keys (#5622)
### Fixed
- Spelling and grammar fixes (#5571)
- Handling of IPv6 address consistently for the binding address of the server and health checks (#5623)
- Link to Telemetry documentation in the Contributing guide (#5650)
- Handling of registration entries with revision number 0 when the agent syncs entries with the server (#5680)
### Known Issues
- Setting the new `jwt_issuer` configuration property in oidc-discovery-provider is not compatible with deployments that use a server port other than 443 (#5696)
- Domain verification is bypassed when setting the new `jwt_issuer` configuration property in oidc-discovery-provider (#5697)
## [1.11.0] - 2024-10-24
### Added
- Support for forced rotation and revocation (<https://github.com/orgs/spiffe/projects/21>)
- New EJBCA UpstreamAuthority plugin for SPIRE Server (#5378)
- Support for variables in templates contained in the config file (#5576)
- Support for the configuration validation RPC on all built-in plugins (#5303)
- Improved logging when built-in plugins panic (#5476)
- Improved CPU and memory resource usage for concurrent Kubernetes Workload attestation (#5408)
- Documentation additions and improvements (#5589, #5588, #5499, #5433, #5430, #5269)
### Changed
- SPIRE Agent LRU identity cache is now unconditionally enabled. The LRU size can be controlled via the `x509_svid_cache_max_size` configuration option. (#5383, #5531)
- Entry API RPCs return per-entry InvalidArgument status when creating/updating malformed entries (#5506)
- Support for CGroups v2 in K8s and Docker workload attestors is now enabled by default (#5454)
### Removed
- Deprecated -ttl flag from the SPIRE Server `entry create` and `entry update` commands (#5483)
- Official support for MySQL 5.X. While SPIRE may continue to work with this version, no explicit testing will be performed by the project (#5487)
### Fixed
- Missing TrustDomain field passed to x509pop path template (#5577)
- Behavior in the experimental events-based cache causing duplicate entries/agents evaluation in the same cycle (#5509)
## [1.10.4] - 2024-09-12
### Fixed
- Add missing commits to spire-plugin-sdk and spire-api-sdk releases (spiffe/spire-api-sdk#66, spiffe/spire-plugin-sdk#39)
## [1.10.3] - 2024-09-03
### Fixed
- Regression in agent health check, requiring the agent to have an SVID on disk to be healthy (#5459)
## [1.10.2] - 2024-09-03
### Added
- `http_challenge` NodeAttestor plugin (#4909)
- Experimental support for validating container image signatures through Sigstore selectors in the docker Workload Attestor (#5272)
- Metrics for monitoring the event-based cache (#5411)
### Changed
- Delegated Identity API to allow subscription by process ID (#5272)
- Agent Debug endpoint to count SVIDs by type (#5352)
- Agent health check to report an unhealthy status until the Agent SVID is attested (#5298)
- Small documentation improvements (#5393)
### Fixed
- `aws_iid` NodeAttestor to properly handle multiple network interfaces (#5300)
- Server configuration to correctly propagate the `sql_transaction_timeout` setting in the experimental events-based cache (#5345)
## [1.10.1] - 2024-08-01
### Added
@ -26,7 +227,7 @@
### Changed
- SPIRE Server and OIDC provider images to use non root users (#4967, #5227)
- SPIRE Server and OIDC provider images to use non-root users (#4967, #5227)
- `k8s_psat` NodeAttestor attestor to no longer fail when a cluster is not configured (#5216)
- Agents are required to renew SVIDs through re-attestation when using a supporting Node Attestor (#5204)
- Small documentation improvements (#5181, #5189)
@ -34,7 +235,7 @@
### Fixed
- PSAT node attestor to cross check the audience fields (#5142)
- PSAT node attestor to cross-check the audience fields (#5142)
- Events-based cache to handle out of order events (#5071)
### Deprecated
@ -1015,7 +1216,7 @@
- Regression preventing agent selectors from showing in `spire-server agent show` command (#2133)
- Issue in the token authentication method of the Vault Upstream Authority plugin (#2110)
- Reporting of errors in server entry cache telemetry (#2091)
- Agent logs an error and automatically shuts down when its SVID has expired and it requires re-attestation (#2065)
- Agent logs an error and automatically shuts down when its SVID has expired, and it requires re-attestation (#2065)
## [0.12.1] - 2021-03-04
@ -1101,7 +1302,7 @@
- Fixed Kubernetes Workload Registrar issues (#1814, #1818, #1823)
- Fixed BatchCreateEntry return value to match docs, returning the contents of an entry if it already exists (#1824)
- Fixed issue preventing brand new deployments from downgrading successfully (#1829)
- Fixed issue preventing brand-new deployments from downgrading successfully (#1829)
- Fixed a regression introduced in 0.11.0 that caused external node attestor plugins that rely on binary data to fail (#1863)
## [0.11.0] - 2020-08-28
@ -1205,7 +1406,7 @@
## [0.9.0] - 2019-11-14
- Users can now opt-out of workload executable hashing when enabling the workload path as a selector (#1078)
- Users can now opt out of workload executable hashing when enabling the workload path as a selector (#1078)
- Added M3 support to telemetry and other telemetry and logging improvements (#1059, #1085, #1086, #1094, #1102, #1122,#1138,#1160,#1186,#1208)
- SQL auto-migration can be disabled (#1089)
- SQL schema compatibility checks are aligned with upgrade compatibility guarantees (#1089)

View File

@ -1,27 +1,27 @@
* @evan2645 @amartinezfayo @azdagron @MarcosDY @rturner3
* @evan2645 @amartinezfayo @sorindumitru @MarcosDY @rturner3
##########################################
# Maintainers
##########################################
# Evan Gilman
# VMware, Inc
# SPIRL, Inc.
# @evan2645
# Agustin Martínez Fayó
# Hewlett-Packard Enterprise
# @amartinezfayo
# Andrew Harding
# VMware, Inc
# @azdagron
# Sorin Dumitru
# Bloomberg L.P.
# @sorindumitru
# Marcos Yacob
# Hewlett-Packard Enterprise
# @MarcosDY
# Ryan Turner
# Uber Technologies, Inc
# Cielara AI
# @rturner3
##########################################
@ -29,5 +29,5 @@
##########################################
# Umair Khan
# Hewlett-Packard Enterprise
# Stacklet, Inc.
# @umairmkhan

View File

@ -45,7 +45,7 @@ toolchain and other build related files are cached under the `.build` folder
### Development in Docker
You can either build SPIRE on your host or in a Ubuntu docker container. In
You can either build SPIRE on your host or in an Ubuntu docker container. In
both cases you will use the same Makefile commands.
To build SPIRE within a container, first build the development image:
@ -105,14 +105,14 @@ Packages should be exported through interfaces. Interaction with packages must b
interfaces
Interfaces should be defined in their own file, named (in lowercase) after the name of the
interface. eg. `foodata.go` implements `type FooData any`
interface. e.g. `foodata.go` implements `type FooData any`
### Metrics
As much as possible, label names should be constants defined in the `telemetry` package. Additionally,
specific metrics should be centrally defined in the `telemetry` package or its subpackages. Functions
desiring metrics should delegate counter, gauge, timer, etc. creation to such packages.
The metrics emitted by SPIRE are listed in the [telemetry document](doc/telemetry.md) and should be kept up to date.
The metrics emitted by SPIRE are listed in the [telemetry document](doc/telemetry/telemetry.md) and should be kept up to date.
In addition, metrics should be unit-tested where reasonable.

View File

@ -2,8 +2,7 @@
# Build stage
ARG goversion
# Use alpine3.18 until go-sqlite works in 3.19
FROM --platform=${BUILDPLATFORM} golang:${goversion}-alpine3.20 as base
FROM --platform=${BUILDPLATFORM} golang:${goversion}-alpine3.22 as base
WORKDIR /spire
RUN apk --no-cache --update add file bash clang lld pkgconfig git make
COPY go.* ./
@ -15,7 +14,7 @@ COPY . .
# when bumping to a new version analyze the new version for security issues
# then use crane to lookup the digest of that version so we are immutable
# crane digest tonistiigi/xx:1.3.0
FROM --platform=$BUILDPLATFORM tonistiigi/xx@sha256:904fe94f236d36d65aeb5a2462f88f2c537b8360475f6342e7599194f291fb7e AS xx
FROM --platform=$BUILDPLATFORM tonistiigi/xx:1.5.0@sha256:0c6a569797744e45955f39d4f7538ac344bfb7ebf0a54006a0a4297b153ccf0f AS xx
FROM --platform=${BUILDPLATFORM} base as builder
ARG TAG

View File

@ -1,4 +1,4 @@
FROM ubuntu:xenial
FROM ubuntu:24.04
WORKDIR /spire
RUN apt-get update && apt-get -y install \
curl unzip git build-essential ca-certificates libssl-dev

View File

@ -31,9 +31,9 @@ This section of the document can and should be updated as the above consideratio
### Changes in Maintainership
SPIRE maintainers are appointed according to the [process described in the governance document][2]. Maintainers may voluntarily step down at any time. Unseating a maintainer against their will requires a unanimous vote with the exception of the unseated.
SPIRE maintainers are appointed according to the [process described in the governance document][2]. Maintainers may voluntarily step down at any time. Unseating a maintainer against their will requires a unanimous vote except the unseated.
Unseating a maintainer is an extraordinary circumstance. A process to do so is necessary, but its use is not intended. Careful consideration should be made when voting in a new maintainer, particularly in validating that they pledge to uphold the terms of this document. To ensure that these decisions are not taken lightly, and to maintain long term project stability and foresight, no more than one maintainer can be involuntarily unseated in any given nine month period.
Unseating a maintainer is an extraordinary circumstance. A process to do so is necessary, but its use is not intended. Careful consideration should be made when voting in a new maintainer, particularly in validating that they pledge to uphold the terms of this document. To ensure that these decisions are not taken lightly, and to maintain long term project stability and foresight, no more than one maintainer can be involuntarily unseated in any given nine-month period.
The CNCF MUST be notified of any changes in maintainership via the CNCF Service Desk.
@ -103,7 +103,7 @@ This is a very important aspect of SPIRE maintainership. Adoption and contributi
## Product Management and Roadmap Curation
In addition to the maintainer seats, the SPIRE project designates one product manager seat. While maintainers strive to ensure that project development and direction is a function of community needs, and interact with end users and contributors on a daily basis, the product manager works to clarify user needs by gathering additional information and context. This includes, but is not limited to, conducting user research and field testing to better inform maintainers, and communicating project development information to the community.
In addition to the maintainer seats, the SPIRE project designates one product manager seat. While maintainers strive to ensure that project development and direction is a function of community needs, and interact with end users and contributors on a daily basis, the product manager works to clarify user needs by gathering additional information and context. This includes, but is not limited to, conducting user research and field-testing to better inform maintainers, and communicating project development information to the community.
Maintainers are expected to have heavy participation in the community, but it may be impractical to dedicate themselves to gathering and analyzing community feedback and end-user pain points. Based on data collection, the role of the product manager is intended to aid maintainers to validate the desirability, feasibility, and viability of efforts to help drive project direction and priorities in long term planning.

View File

@ -32,6 +32,7 @@ help:
@echo " $(cyan)race-test$(reset) - run unit tests with race detection"
@echo " $(cyan)integration$(reset) - run integration tests (requires Docker images)"
@echo " support 'SUITES' variable for executing specific tests"
@echo " and 'IGNORE_SUITES' variable for ignoring tests"
@echo " e.g. SUITES='suites/join-token suites/k8s' make integration"
@echo " $(cyan)integration-windows$(reset) - run integration tests for windows (requires Docker images)"
@echo " support 'SUITES' variable for executing specific tests"
@ -103,6 +104,8 @@ else
$(error unsupported ARCH: $(arch1))
endif
ignore_suites := $(IGNORE_SUITES)
############################################################################
# Docker TLS detection for buildx
############################################################################
@ -136,9 +139,8 @@ endif
go_path := PATH="$(go_bin_dir):$(PATH)"
golangci_lint_version := $(shell awk '/golangci_lint/{print $$2}' .spire-tool-versions)
golangci_lint_version := $(shell awk '/golangci-lint/{print $$2}' .spire-tool-versions)
golangci_lint_dir = $(build_dir)/golangci_lint/$(golangci_lint_version)
golangci_lint_bin = $(golangci_lint_dir)/golangci-lint
golangci_lint_cache = $(golangci_lint_dir)/cache
markdown_lint_version := $(shell awk '/markdown_lint/{print $$2}' .spire-tool-versions)
@ -310,11 +312,11 @@ integration:
ifeq ($(os1), windows)
$(error Integration tests are not supported on windows)
else
$(E)$(go_path) ./test/integration/test.sh $(SUITES)
$(E)$(go_path) IGNORE_SUITES='$(ignore_suites)' ./test/integration/test.sh $(SUITES)
endif
integration-windows:
$(E)$(go_path) ./test/integration/test-windows.sh $(SUITES)
$(E)$(go_path) IGNORE_SUITES='$(ignore_suites)' ./test/integration/test-windows.sh $(SUITES)
#############################################################################
# Docker Images
@ -402,8 +404,11 @@ endif
lint: lint-code lint-md
lint-code: $(golangci_lint_bin)
$(E)PATH="$(go_bin_dir):$(PATH)" GOLANGCI_LINT_CACHE="$(golangci_lint_cache)" $(golangci_lint_bin) run ./...
lint-code: | go-check
$(E)mkdir -p $(golangci_lint_cache)
$(E)$(go_path) GOLANGCI_LINT_CACHE="$(golangci_lint_cache)" \
go run github.com/golangci/golangci-lint/v2/cmd/golangci-lint@$(golangci_lint_version) \
run --max-issues-per-linter=0 --max-same-issues=0 ./...
lint-md:
$(E)docker run --rm -v "$(DIR):/workdir" $(markdown_lint_image) "**/*.md"
@ -507,7 +512,7 @@ endif
go-bin-path: go-check
@echo "$(go_bin_dir):${PATH}"
install-toolchain: install-protoc install-golangci-lint install-protoc-gen-go install-protoc-gen-doc | go-check
install-toolchain: install-protoc install-protoc-gen-go | go-check
install-protoc: $(protoc_bin)
@ -517,15 +522,6 @@ $(protoc_bin):
$(E)mkdir -p $(protoc_dir)
$(E)curl -sSfL $(protoc_url) -o $(build_dir)/tmp.zip; unzip -q -d $(protoc_dir) $(build_dir)/tmp.zip; rm $(build_dir)/tmp.zip
install-golangci-lint: $(golangci_lint_bin)
$(golangci_lint_bin): | go-check
@echo "Installing golangci-lint $(golangci_lint_version)..."
$(E)rm -rf $(dir $(golangci_lint_dir))
$(E)mkdir -p $(golangci_lint_dir)
$(E)mkdir -p $(golangci_lint_cache)
$(E)GOBIN=$(golangci_lint_dir) $(go_path) go install github.com/golangci/golangci-lint/cmd/golangci-lint@$(golangci_lint_version)
install-protoc-gen-go: $(protoc_gen_go_bin)
$(protoc_gen_go_bin): | go-check

View File

@ -61,8 +61,8 @@ The SPIFFE community maintains the SPIRE project. Information on the various SIG
A third party security firm ([Cure53](https://cure53.de/)) completed a security audit of SPIFFE and SPIRE in February of 2021. Additionally, the [CNCF Technical Advisory Group for Security](https://github.com/cncf/tag-security) conducted two assessments on SPIFFE and SPIRE in 2018 and 2020. Please find the reports and supporting material, including the threat model exercise results, below.
- [Cure53 Security Audit Report](doc/cure53-report.pdf)
- [SIG-Security SPIFFE/SPIRE Security Assessment: summary](https://github.com/cncf/sig-security/tree/main/assessments/projects/spiffe-spire)
- [SIG-Security SPIFFE/SPIRE Security Assessment: full assessment](https://github.com/cncf/sig-security/blob/main/assessments/projects/spiffe-spire/self-assessment.md)
- [SIG-Security SPIFFE/SPIRE Security Assessment: summary](https://github.com/cncf/sig-security/tree/main/community/assessments/projects/spiffe-spire)
- [SIG-Security SPIFFE/SPIRE Security Assessment: full assessment](https://github.com/cncf/sig-security/blob/main/community/assessments/projects/spiffe-spire/self-assessment.md)
- [Scrutinizing SPIRE to Sensibly Strengthen SPIFFE Security](https://blog.spiffe.io/scrutinizing-spire-security-9c82ba542019)
### Reporting Security Vulnerabilities

View File

@ -1,6 +1,6 @@
# Release and Branch Management
The SPIRE project maintains active support for both the current and the previous major versions. All active development occurs in the `main` branch. Version branches are used for minor releases of the previous major version when necessary.
The SPIRE project maintains active support for both the current and the previous minor versions. All active development occurs in the `main` branch. Version branches are used for patch releases of the previous minor version when necessary.
## Version Branches
@ -14,7 +14,7 @@ The base commit of the release branch is based on the type of release being gene
When a bug is discovered in the latest release that also affects releases of the prior minor version, it is necessary to backport the fix.
Once the version branch is created, the patch is either cherry picked or backported into a PR against the version branch. The version branch is maintained via the same process as the main branch, including PR approval process etc.
Once the version branch is created, the patch is either cherry-picked or backported into a PR against the version branch. The version branch is maintained via the same process as the main branch, including PR approval process etc.
Ensure that the CHANGELOG is updated in both `main` and the version branch to reflect the new release.

View File

@ -15,9 +15,9 @@ import (
"github.com/mitchellh/cli"
"github.com/spiffe/go-spiffe/v2/proto/spiffe/workload"
"github.com/spiffe/go-spiffe/v2/spiffeid"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/x509util"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/fakes/fakeworkloadapi"
"github.com/spiffe/spire/test/spiretest"
"github.com/spiffe/spire/test/testca"
@ -416,9 +416,10 @@ func TestValidateJWTCommand(t *testing.T) {
Claims: &structpb.Struct{
Fields: map[string]*structpb.Value{
"aud": {
Kind: &structpb.Value_ListValue{ListValue: &structpb.ListValue{
Values: []*structpb.Value{{Kind: &structpb.Value_StringValue{StringValue: "foo"}}},
},
Kind: &structpb.Value_ListValue{
ListValue: &structpb.ListValue{
Values: []*structpb.Value{{Kind: &structpb.Value_StringValue{StringValue: "foo"}}},
},
},
},
},
@ -504,7 +505,7 @@ func setupTest(t *testing.T, newCmd func(env *commoncli.Env, clientMaker workloa
}, newWorkloadClient)
test := &apiTest{
addr: common.GetAddr(addr),
addr: clitest.GetAddr(addr),
stdin: stdin,
stdout: stdout,
stderr: stderr,
@ -538,7 +539,7 @@ func (s *apiTest) afterTest(t *testing.T) {
}
func (s *apiTest) args(extra ...string) []string {
return append([]string{common.AddrArg, s.addr}, extra...)
return append([]string{clitest.AddrArg, s.addr}, extra...)
}
func assertOutputBasedOnFormat(t *testing.T, format, stdoutString, expectedStdoutJSON string, expectedStdoutPretty ...string) {

View File

@ -28,7 +28,7 @@ func newWorkloadClient(ctx context.Context, addr net.Addr, timeout time.Duration
if err != nil {
return nil, err
}
conn, err := util.GRPCDialContext(ctx, target)
conn, err := util.NewGRPCClient(target)
if err != nil {
return nil, err
}

View File

@ -79,7 +79,7 @@ func (c *healthCheckCommand) run() error {
if err != nil {
return err
}
conn, err := util.GRPCDialContext(context.Background(), target)
conn, err := util.NewGRPCClient(target)
if err != nil {
return err
}

View File

@ -2,13 +2,11 @@ package run
import (
"context"
"crypto/x509"
"errors"
"flag"
"fmt"
"io"
"net"
"net/http"
"net/url"
"os"
"os/signal"
@ -26,18 +24,18 @@ import (
"github.com/imdario/mergo"
"github.com/mitchellh/cli"
"github.com/sirupsen/logrus"
"github.com/spiffe/go-spiffe/v2/spiffeid"
"github.com/spiffe/spire/pkg/agent"
"github.com/spiffe/spire/pkg/agent/trustbundlesources"
"github.com/spiffe/spire/pkg/agent/workloadkey"
"github.com/spiffe/spire/pkg/common/bundleutil"
"github.com/spiffe/spire/pkg/common/catalog"
common_cli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/config"
"github.com/spiffe/spire/pkg/common/fflag"
"github.com/spiffe/spire/pkg/common/health"
"github.com/spiffe/spire/pkg/common/idutil"
"github.com/spiffe/spire/pkg/common/log"
"github.com/spiffe/spire/pkg/common/pemutil"
"github.com/spiffe/spire/pkg/common/telemetry"
"github.com/spiffe/spire/pkg/common/tlspolicy"
)
const (
@ -53,9 +51,6 @@ const (
defaultDefaultAllBundlesName = "ALL"
defaultDisableSPIFFECertValidation = false
bundleFormatPEM = "pem"
bundleFormatSPIFFE = "spiffe"
minimumAvailabilityTarget = 24 * time.Hour
)
@ -72,7 +67,7 @@ type agentConfig struct {
DataDir string `hcl:"data_dir"`
AdminSocketPath string `hcl:"admin_socket_path"`
InsecureBootstrap bool `hcl:"insecure_bootstrap"`
RetryBootstrap bool `hcl:"retry_bootstrap"`
RetryBootstrap *bool `hcl:"retry_bootstrap"`
JoinToken string `hcl:"join_token"`
LogFile string `hcl:"log_file"`
LogFormat string `hcl:"log_format"`
@ -85,11 +80,14 @@ type agentConfig struct {
WorkloadX509SVIDKeyType string `hcl:"workload_x509_svid_key_type"`
TrustBundleFormat string `hcl:"trust_bundle_format"`
TrustBundlePath string `hcl:"trust_bundle_path"`
TrustBundleUnixSocket string `hcl:"trust_bundle_unix_socket"`
TrustBundleURL string `hcl:"trust_bundle_url"`
TrustDomain string `hcl:"trust_domain"`
AllowUnauthenticatedVerifiers bool `hcl:"allow_unauthenticated_verifiers"`
AllowedForeignJWTClaims []string `hcl:"allowed_foreign_jwt_claims"`
AvailabilityTarget string `hcl:"availability_target"`
X509SVIDCacheMaxSize int `hcl:"x509_svid_cache_max_size"`
JWTSVIDCacheMaxSize int `hcl:"jwt_svid_cache_max_size"`
AuthorizedDelegates []string `hcl:"authorized_delegates"`
@ -117,13 +115,10 @@ type experimentalConfig struct {
SyncInterval string `hcl:"sync_interval"`
NamedPipeName string `hcl:"named_pipe_name"`
AdminNamedPipeName string `hcl:"admin_named_pipe_name"`
UseSyncAuthorizedEntries bool `hcl:"use_sync_authorized_entries"`
UseSyncAuthorizedEntries *bool `hcl:"use_sync_authorized_entries"`
RequirePQKEM bool `hcl:"require_pq_kem"`
Flags fflag.RawConfig `hcl:"feature_flags"`
UnusedKeyPositions map[string][]token.Pos `hcl:",unusedKeyPositions"`
X509SVIDCacheMaxSize int `hcl:"x509_svid_cache_max_size"`
DisableLRUCache bool `hcl:"disable_lru_cache"`
}
type Command struct {
@ -261,16 +256,32 @@ func (c *agentConfig) validate() error {
return errors.New("only one of trust_bundle_url or trust_bundle_path can be specified, not both")
}
if c.TrustBundleFormat != bundleFormatPEM && c.TrustBundleFormat != bundleFormatSPIFFE {
return fmt.Errorf("invalid value for trust_bundle_format, expected %q or %q", bundleFormatPEM, bundleFormatSPIFFE)
if c.TrustBundleFormat != trustbundlesources.BundleFormatPEM && c.TrustBundleFormat != trustbundlesources.BundleFormatSPIFFE {
return fmt.Errorf("invalid value for trust_bundle_format, expected %q or %q", trustbundlesources.BundleFormatPEM, trustbundlesources.BundleFormatSPIFFE)
}
if c.TrustBundleUnixSocket != "" && c.TrustBundleURL == "" {
return errors.New("if trust_bundle_unix_socket is specified, so must be trust_bundle_url")
}
if c.TrustBundleURL != "" {
u, err := url.Parse(c.TrustBundleURL)
if err != nil {
return fmt.Errorf("unable to parse trust bundle URL: %w", err)
}
if u.Scheme != "https" {
if c.TrustBundleUnixSocket != "" {
if u.Scheme != "http" {
return errors.New("trust bundle URL must start with http:// when used with trust bundle unix socket")
}
params := u.Query()
for key := range params {
if strings.HasPrefix(key, "spiffe-") {
return errors.New("trust_bundle_url query params can not start with spiffe-")
}
if strings.HasPrefix(key, "spire-") {
return errors.New("trust_bundle_url query params can not start with spire-")
}
}
} else if u.Scheme != "https" {
return errors.New("trust bundle URL must start with https://")
}
}
@ -304,7 +315,7 @@ func ParseFile(path string, expandEnv bool) (*Config, error) {
// If envTemplate flag is passed, substitute $VARIABLES in configuration file
if expandEnv {
data = os.ExpandEnv(data)
data = config.ExpandEnv(data)
}
if err := hcl.Decode(&c, data); err != nil {
@ -318,6 +329,7 @@ func parseFlags(name string, args []string, output io.Writer) (*agentConfig, err
flags := flag.NewFlagSet(name, flag.ContinueOnError)
flags.SetOutput(output)
c := &agentConfig{}
retryBootstrap := false
flags.StringVar(&c.ConfigPath, "config", defaultConfigPath, "Path to a SPIRE config file")
flags.StringVar(&c.DataDir, "dataDir", "", "A directory the agent can use for its runtime data")
@ -331,10 +343,10 @@ func parseFlags(name string, args []string, output io.Writer) (*agentConfig, err
flags.StringVar(&c.TrustDomain, "trustDomain", "", "The trust domain that this agent belongs to")
flags.StringVar(&c.TrustBundlePath, "trustBundle", "", "Path to the SPIRE server CA bundle")
flags.StringVar(&c.TrustBundleURL, "trustBundleUrl", "", "URL to download the SPIRE server CA bundle")
flags.StringVar(&c.TrustBundleFormat, "trustBundleFormat", "", fmt.Sprintf("Format of the bootstrap trust bundle, %q or %q", bundleFormatPEM, bundleFormatSPIFFE))
flags.StringVar(&c.TrustBundleFormat, "trustBundleFormat", "", fmt.Sprintf("Format of the bootstrap trust bundle, %q or %q", trustbundlesources.BundleFormatPEM, trustbundlesources.BundleFormatSPIFFE))
flags.BoolVar(&c.AllowUnauthenticatedVerifiers, "allowUnauthenticatedVerifiers", false, "If true, the agent permits the retrieval of X509 certificate bundles by unregistered clients")
flags.BoolVar(&c.InsecureBootstrap, "insecureBootstrap", false, "If true, the agent bootstraps without verifying the server's identity")
flags.BoolVar(&c.RetryBootstrap, "retryBootstrap", false, "If true, the agent retries bootstrap with backoff")
flags.BoolVar(&retryBootstrap, "retryBootstrap", true, "If true, the agent retries bootstrap with backoff")
flags.BoolVar(&c.ExpandEnv, "expandEnv", false, "Expand environment variables in SPIRE config file")
c.addOSFlags(flags)
@ -344,6 +356,12 @@ func parseFlags(name string, args []string, output io.Writer) (*agentConfig, err
return nil, err
}
flags.Visit(func(f *flag.Flag) {
if f.Name == "retryBootstrap" {
c.RetryBootstrap = &retryBootstrap
}
})
return c, nil
}
@ -369,87 +387,6 @@ func mergeInput(fileInput *Config, cliInput *agentConfig) (*Config, error) {
return c, nil
}
func parseTrustBundle(bundleBytes []byte, trustBundleContentType string) ([]*x509.Certificate, error) {
switch trustBundleContentType {
case bundleFormatPEM:
bundle, err := pemutil.ParseCertificates(bundleBytes)
if err != nil {
return nil, err
}
return bundle, nil
case bundleFormatSPIFFE:
bundle, err := bundleutil.Unmarshal(spiffeid.TrustDomain{}, bundleBytes)
if err != nil {
return nil, fmt.Errorf("unable to parse SPIFFE trust bundle: %w", err)
}
return bundle.X509Authorities(), nil
}
return nil, fmt.Errorf("unknown trust bundle format: %s", trustBundleContentType)
}
func downloadTrustBundle(trustBundleURL string) ([]byte, error) {
// Download the trust bundle URL from the user specified URL
// We use gosec -- the annotation below will disable a security check that URLs are not tainted
/* #nosec G107 */
resp, err := http.Get(trustBundleURL)
if err != nil {
return nil, fmt.Errorf("unable to fetch trust bundle URL %s: %w", trustBundleURL, err)
}
defer resp.Body.Close()
if resp.StatusCode != http.StatusOK {
return nil, fmt.Errorf("error downloading trust bundle: %s", resp.Status)
}
pemBytes, err := io.ReadAll(resp.Body)
if err != nil {
return nil, fmt.Errorf("unable to read from trust bundle URL %s: %w", trustBundleURL, err)
}
return pemBytes, nil
}
func setupTrustBundle(ac *agent.Config, c *Config) error {
// Either download the trust bundle if TrustBundleURL is set, or read it
// from disk if TrustBundlePath is set
ac.InsecureBootstrap = c.Agent.InsecureBootstrap
var bundleBytes []byte
var err error
switch {
case c.Agent.TrustBundleURL != "":
bundleBytes, err = downloadTrustBundle(c.Agent.TrustBundleURL)
if err != nil {
return err
}
case c.Agent.TrustBundlePath != "":
bundleBytes, err = loadTrustBundle(c.Agent.TrustBundlePath)
if err != nil {
return fmt.Errorf("could not parse trust bundle: %w", err)
}
default:
// If InsecureBootstrap is configured, the bundle is not required
if ac.InsecureBootstrap {
return nil
}
}
bundle, err := parseTrustBundle(bundleBytes, c.Agent.TrustBundleFormat)
if err != nil {
return err
}
if len(bundle) == 0 {
return errors.New("no certificates found in trust bundle")
}
ac.TrustBundle = bundle
return nil
}
func NewAgentConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool) (*agent.Config, error) {
ac := &agent.Config{}
@ -457,8 +394,6 @@ func NewAgentConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool)
return nil, err
}
ac.RetryBootstrap = c.Agent.RetryBootstrap
if c.Agent.Experimental.SyncInterval != "" {
var err error
ac.SyncInterval, err = time.ParseDuration(c.Agent.Experimental.SyncInterval)
@ -467,8 +402,6 @@ func NewAgentConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool)
}
}
ac.UseSyncAuthorizedEntries = c.Agent.Experimental.UseSyncAuthorizedEntries
serverHostPort := net.JoinHostPort(c.Agent.ServerAddress, strconv.Itoa(c.Agent.ServerPort))
ac.ServerAddress = fmt.Sprintf("dns:///%s", serverHostPort)
@ -498,18 +431,27 @@ func NewAgentConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool)
ac.LogReopener = log.ReopenOnSignal(logger, reopenableFile)
}
if c.Agent.Experimental.X509SVIDCacheMaxSize < 0 {
ac.RetryBootstrap = true
if c.Agent.RetryBootstrap != nil {
ac.Log.Warn("The 'retry_bootstrap' configuration is deprecated. It will be removed in SPIRE 1.14. Please test without the flag before upgrading.")
ac.RetryBootstrap = *c.Agent.RetryBootstrap
}
ac.UseSyncAuthorizedEntries = true
if c.Agent.Experimental.UseSyncAuthorizedEntries != nil {
ac.Log.Warn("The 'use_sync_authorized_entries' configuration is deprecated. The option to disable it will be removed in SPIRE 1.13.")
ac.UseSyncAuthorizedEntries = *c.Agent.Experimental.UseSyncAuthorizedEntries
}
if c.Agent.X509SVIDCacheMaxSize < 0 {
return nil, errors.New("x509_svid_cache_max_size should not be negative")
}
if c.Agent.Experimental.X509SVIDCacheMaxSize > 0 || c.Agent.Experimental.DisableLRUCache {
logger.Warn("The `x509_svid_cache_max_size` and `disable_lru_cache` configurations are deprecated. They will be removed in a future release.")
}
ac.X509SVIDCacheMaxSize = c.Agent.Experimental.X509SVIDCacheMaxSize
ac.X509SVIDCacheMaxSize = c.Agent.X509SVIDCacheMaxSize
if c.Agent.Experimental.DisableLRUCache && ac.X509SVIDCacheMaxSize != 0 {
return nil, errors.New("x509_svid_cache_max_size should not be set when disable_lru_cache is set")
if c.Agent.JWTSVIDCacheMaxSize < 0 {
return nil, errors.New("jwt_svid_cache_max_size should not be negative")
}
ac.DisableLRUCache = c.Agent.Experimental.DisableLRUCache
ac.JWTSVIDCacheMaxSize = c.Agent.JWTSVIDCacheMaxSize
td, err := common_cli.ParseTrustDomain(c.Agent.TrustDomain, logger)
if err != nil {
@ -540,11 +482,16 @@ func NewAgentConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool)
}
ac.DisableSPIFFECertValidation = c.Agent.SDS.DisableSPIFFECertValidation
err = setupTrustBundle(ac, c)
if err != nil {
return nil, err
ts := &trustbundlesources.Config{
InsecureBootstrap: c.Agent.InsecureBootstrap,
TrustBundleFormat: c.Agent.TrustBundleFormat,
TrustBundlePath: c.Agent.TrustBundlePath,
TrustBundleURL: c.Agent.TrustBundleURL,
TrustBundleUnixSocket: c.Agent.TrustBundleUnixSocket,
}
ac.TrustBundleSources = trustbundlesources.New(ts, ac.Log.WithField("Logger", "TrustBundleSources"))
ac.WorkloadKeyType = workloadkey.ECP256
if c.Agent.WorkloadX509SVIDKeyType != "" {
ac.WorkloadKeyType, err = workloadkey.KeyTypeFromString(c.Agent.WorkloadX509SVIDKeyType)
@ -595,6 +542,12 @@ func NewAgentConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool)
ac.AvailabilityTarget = t
}
ac.TLSPolicy = tlspolicy.Policy{
RequirePQKEM: c.Agent.Experimental.RequirePQKEM,
}
tlspolicy.LogPolicy(ac.TLSPolicy, log.NewHCLogAdapter(logger, "tlspolicy"))
if cmp.Diff(experimentalConfig{}, c.Agent.Experimental) != "" {
logger.Warn("Experimental features have been enabled. Please see doc/upgrading.md for upgrade and compatibility considerations for experimental features.")
}
@ -683,7 +636,7 @@ func defaultConfig() *Config {
DataDir: defaultDataDir,
LogLevel: defaultLogLevel,
LogFormat: log.DefaultFormat,
TrustBundleFormat: bundleFormatPEM,
TrustBundleFormat: trustbundlesources.BundleFormatPEM,
SDS: sdsConfig{
DefaultBundleName: defaultDefaultBundleName,
DefaultSVIDName: defaultDefaultSVIDName,
@ -696,12 +649,3 @@ func defaultConfig() *Config {
return c
}
func loadTrustBundle(path string) ([]byte, error) {
bundleBytes, err := os.ReadFile(path)
if err != nil {
return nil, err
}
return bundleBytes, nil
}

View File

@ -238,7 +238,7 @@ func mergeInputCasesOS() []mergeInputCase {
},
},
{
msg: "socket_path should be configuable by CLI flag",
msg: "socket_path should be configurable by CLI flag",
fileInput: func(c *Config) {},
cliInput: func(c *agentConfig) {
c.SocketPath = "foo"

View File

@ -2,8 +2,6 @@ package run
import (
"io"
"net/http"
"net/http/httptest"
"os"
"path"
"path/filepath"
@ -39,119 +37,6 @@ type newAgentConfigCase struct {
test func(*testing.T, *agent.Config)
}
func TestDownloadTrustBundle(t *testing.T) {
testTB, _ := os.ReadFile(path.Join(util.ProjectRoot(), "conf/agent/dummy_root_ca.crt"))
testTBSPIFFE := `{
"keys": [
{
"use": "x509-svid",
"kty": "EC",
"crv": "P-384",
"x": "WjB-nSGSxIYiznb84xu5WGDZj80nL7W1c3zf48Why0ma7Y7mCBKzfQkrgDguI4j0",
"y": "Z-0_tDH_r8gtOtLLrIpuMwWHoe4vbVBFte1vj6Xt6WeE8lXwcCvLs_mcmvPqVK9j",
"x5c": [
"MIIBzDCCAVOgAwIBAgIJAJM4DhRH0vmuMAoGCCqGSM49BAMEMB4xCzAJBgNVBAYTAlVTMQ8wDQYDVQQKDAZTUElGRkUwHhcNMTgwNTEzMTkzMzQ3WhcNMjMwNTEyMTkzMzQ3WjAeMQswCQYDVQQGEwJVUzEPMA0GA1UECgwGU1BJRkZFMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEWjB+nSGSxIYiznb84xu5WGDZj80nL7W1c3zf48Why0ma7Y7mCBKzfQkrgDguI4j0Z+0/tDH/r8gtOtLLrIpuMwWHoe4vbVBFte1vj6Xt6WeE8lXwcCvLs/mcmvPqVK9jo10wWzAdBgNVHQ4EFgQUh6XzV6LwNazA+GTEVOdu07o5yOgwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwGQYDVR0RBBIwEIYOc3BpZmZlOi8vbG9jYWwwCgYIKoZIzj0EAwQDZwAwZAIwE4Me13qMC9i6Fkx0h26y09QZIbuRqA9puLg9AeeAAyo5tBzRl1YL0KNEp02VKSYJAjBdeJvqjJ9wW55OGj1JQwDFD7kWeEB6oMlwPbI/5hEY3azJi16I0uN1JSYTSWGSqWc="
]
}
]
}`
cases := []struct {
msg string
status int
fileContents string
format string
expectDownloadError bool
expectParseError bool
}{
{
msg: "if URL is not found, should be an error",
status: http.StatusNotFound,
fileContents: "",
format: bundleFormatPEM,
expectDownloadError: true,
expectParseError: false,
},
{
msg: "if URL returns error 500, should be an error",
status: http.StatusInternalServerError,
fileContents: "",
format: bundleFormatPEM,
expectDownloadError: true,
expectParseError: false,
},
{
msg: "if file is not parseable, should be an error",
status: http.StatusOK,
fileContents: "NON PEM PARSEABLE TEXT HERE",
format: bundleFormatPEM,
expectDownloadError: false,
expectParseError: true,
},
{
msg: "if file is empty, should be an error",
status: http.StatusOK,
fileContents: "",
format: bundleFormatPEM,
expectDownloadError: false,
expectParseError: true,
},
{
msg: "if file is valid, should not be an error",
status: http.StatusOK,
fileContents: string(testTB),
format: bundleFormatPEM,
expectDownloadError: false,
expectParseError: false,
},
{
msg: "if file is not parseable, format is SPIFFE, should not be an error",
status: http.StatusOK,
fileContents: "[}",
format: bundleFormatSPIFFE,
expectDownloadError: false,
expectParseError: true,
},
{
msg: "if file is valid, format is SPIFFE, should not be an error",
status: http.StatusOK,
fileContents: testTBSPIFFE,
format: bundleFormatSPIFFE,
expectDownloadError: false,
expectParseError: false,
},
}
for _, testCase := range cases {
testCase := testCase
t.Run(testCase.msg, func(t *testing.T) {
testServer := httptest.NewServer(http.HandlerFunc(
func(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(testCase.status)
_, _ = io.WriteString(w, testCase.fileContents)
// if err != nil {
// return
// }
}))
defer testServer.Close()
bundleBytes, err := downloadTrustBundle(testServer.URL)
if testCase.expectDownloadError {
require.Error(t, err)
} else {
require.NoError(t, err)
_, err := parseTrustBundle(bundleBytes, testCase.format)
if testCase.expectParseError {
require.Error(t, err)
} else {
require.NoError(t, err)
}
}
})
}
}
func TestMergeInput(t *testing.T) {
cases := []mergeInputCase{
{
@ -615,12 +500,20 @@ func TestMergeInput(t *testing.T) {
require.Equal(t, "bar", c.Agent.TrustDomain)
},
},
{
msg: "require_pq_kem should be configurable by file",
fileInput: func(c *Config) {
c.Agent.Experimental.RequirePQKEM = true
},
cliInput: func(c *agentConfig) {},
test: func(t *testing.T, c *Config) {
require.True(t, c.Agent.Experimental.RequirePQKEM)
},
},
}
cases = append(cases, mergeInputCasesOS()...)
for _, testCase := range cases {
testCase := testCase
fileInput := &Config{Agent: &agentConfig{}}
cliInput := &agentConfig{}
@ -673,7 +566,7 @@ func TestNewAgentConfig(t *testing.T) {
c.Agent.InsecureBootstrap = false
},
test: func(t *testing.T, c *agent.Config) {
require.False(t, c.InsecureBootstrap)
require.False(t, c.TrustBundleSources.GetInsecureBootstrap())
},
},
{
@ -685,13 +578,14 @@ func TestNewAgentConfig(t *testing.T) {
c.Agent.InsecureBootstrap = true
},
test: func(t *testing.T, c *agent.Config) {
require.True(t, c.InsecureBootstrap)
require.True(t, c.TrustBundleSources.GetInsecureBootstrap())
},
},
{
msg: "retry_bootstrap should be correctly set to false",
input: func(c *Config) {
c.Agent.RetryBootstrap = false
rb := false
c.Agent.RetryBootstrap = &rb
},
test: func(t *testing.T, c *agent.Config) {
require.False(t, c.RetryBootstrap)
@ -700,7 +594,8 @@ func TestNewAgentConfig(t *testing.T) {
{
msg: "retry_bootstrap should be correctly set to true",
input: func(c *Config) {
c.Agent.RetryBootstrap = true
rb := true
c.Agent.RetryBootstrap = &rb
},
test: func(t *testing.T, c *agent.Config) {
require.True(t, c.RetryBootstrap)
@ -831,6 +726,51 @@ func TestNewAgentConfig(t *testing.T) {
require.Nil(t, c)
},
},
{
msg: "trust_bundle_url must start with http:// when unix socket",
expectError: true,
requireErrorPrefix: "trust bundle URL must start with http://",
input: func(c *Config) {
// remove trust_bundle_path provided by defaultValidConfig()
c.Agent.TrustBundlePath = ""
c.Agent.TrustBundleURL = "foo.bar"
c.Agent.TrustBundleUnixSocket = "foo.bar"
c.Agent.InsecureBootstrap = false
},
test: func(t *testing.T, c *agent.Config) {
require.Nil(t, c)
},
},
{
msg: "trust_bundle_url query params can not start with spiffe- when unix socket",
expectError: true,
requireErrorPrefix: "trust_bundle_url query params can not start with spiffe-",
input: func(c *Config) {
// remove trust_bundle_path provided by defaultValidConfig()
c.Agent.TrustBundlePath = ""
c.Agent.TrustBundleURL = "http://localhost/trustbundle?spiffe-test=foo"
c.Agent.TrustBundleUnixSocket = "foo.bar"
c.Agent.InsecureBootstrap = false
},
test: func(t *testing.T, c *agent.Config) {
require.Nil(t, c)
},
},
{
msg: "trust_bundle_url query params can not start with spire- when unix socket",
expectError: true,
requireErrorPrefix: "trust_bundle_url query params can not start with spire-",
input: func(c *Config) {
// remove trust_bundle_path provided by defaultValidConfig()
c.Agent.TrustBundlePath = ""
c.Agent.TrustBundleURL = "http://localhost/trustbundle?spire-test=foo"
c.Agent.TrustBundleUnixSocket = "foo.bar"
c.Agent.InsecureBootstrap = false
},
test: func(t *testing.T, c *agent.Config) {
require.Nil(t, c)
},
},
{
msg: "workload_key_type is not set",
input: func(c *Config) {
@ -900,25 +840,7 @@ func TestNewAgentConfig(t *testing.T) {
{
msg: "x509_svid_cache_max_size is set",
input: func(c *Config) {
c.Agent.Experimental.X509SVIDCacheMaxSize = 100
},
logOptions: func(t *testing.T) []log.Option {
return []log.Option{
func(logger *log.Logger) error {
logger.SetOutput(io.Discard)
hook := test.NewLocal(logger.Logger)
t.Cleanup(func() {
spiretest.AssertLogsContainEntries(t, hook.AllEntries(), []spiretest.LogEntry{
{
Level: logrus.WarnLevel,
Message: "The `x509_svid_cache_max_size` and `disable_lru_cache` " +
"configurations are deprecated. They will be removed in a future release.",
},
})
})
return nil
},
}
c.Agent.X509SVIDCacheMaxSize = 100
},
test: func(t *testing.T, c *agent.Config) {
require.EqualValues(t, 100, c.X509SVIDCacheMaxSize)
@ -935,7 +857,7 @@ func TestNewAgentConfig(t *testing.T) {
{
msg: "x509_svid_cache_max_size is zero",
input: func(c *Config) {
c.Agent.Experimental.X509SVIDCacheMaxSize = 0
c.Agent.X509SVIDCacheMaxSize = 0
},
test: func(t *testing.T, c *agent.Config) {
require.EqualValues(t, 0, c.X509SVIDCacheMaxSize)
@ -945,58 +867,12 @@ func TestNewAgentConfig(t *testing.T) {
msg: "x509_svid_cache_max_size is negative",
expectError: true,
input: func(c *Config) {
c.Agent.Experimental.X509SVIDCacheMaxSize = -10
c.Agent.X509SVIDCacheMaxSize = -10
},
test: func(t *testing.T, c *agent.Config) {
require.Nil(t, c)
},
},
{
msg: "disable_lru_cache is set",
input: func(c *Config) {
c.Agent.Experimental.DisableLRUCache = true
},
logOptions: func(t *testing.T) []log.Option {
return []log.Option{
func(logger *log.Logger) error {
logger.SetOutput(io.Discard)
hook := test.NewLocal(logger.Logger)
t.Cleanup(func() {
spiretest.AssertLogsContainEntries(t, hook.AllEntries(), []spiretest.LogEntry{
{
Level: logrus.WarnLevel,
Message: "The `x509_svid_cache_max_size` and `disable_lru_cache` " +
"configurations are deprecated. They will be removed in a future release.",
},
})
})
return nil
},
}
},
test: func(t *testing.T, c *agent.Config) {
require.True(t, c.DisableLRUCache)
},
},
{
msg: "both disable_lru_cache and x509_svid_cache_max_size are set",
expectError: true,
input: func(c *Config) {
c.Agent.Experimental.DisableLRUCache = true
c.Agent.Experimental.X509SVIDCacheMaxSize = 100
},
test: func(t *testing.T, c *agent.Config) {
require.Nil(t, c)
},
},
{
msg: "disable_lru_cache is not set",
input: func(c *Config) {
},
test: func(t *testing.T, c *agent.Config) {
require.False(t, c.DisableLRUCache)
},
},
{
msg: "allowed_foreign_jwt_claims provided",
input: func(c *Config) {
@ -1076,11 +952,26 @@ func TestNewAgentConfig(t *testing.T) {
require.Nil(t, c)
},
},
{
msg: "require PQ KEM is disabled (default)",
input: func(c *Config) {},
test: func(t *testing.T, c *agent.Config) {
require.Equal(t, false, c.TLSPolicy.RequirePQKEM)
},
},
{
msg: "require PQ KEM is enabled",
input: func(c *Config) {
c.Agent.Experimental.RequirePQKEM = true
},
test: func(t *testing.T, c *agent.Config) {
require.Equal(t, true, c.TLSPolicy.RequirePQKEM)
},
},
}
cases = append(cases, newAgentConfigCasesOS(t)...)
for _, testCase := range cases {
testCase := testCase
input := defaultValidConfig()
testCase.input(input)
@ -1243,8 +1134,6 @@ func TestWarnOnUnknownConfig(t *testing.T) {
}
for _, testCase := range cases {
testCase := testCase
c, err := ParseFile(filepath.Join(testFileDir, testCase.confFile), false)
require.NoError(t, err)

View File

@ -224,7 +224,7 @@ func mergeInputCasesOS() []mergeInputCase {
},
},
{
msg: "named_pipe_name should be configuable by CLI flag",
msg: "named_pipe_name should be configurable by CLI flag",
fileInput: func(c *Config) {},
cliInput: func(c *agentConfig) {
c.Experimental.NamedPipeName = "foo"

View File

@ -12,8 +12,8 @@ import (
agentv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/agent/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/cli/agent"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/spiretest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc"
@ -92,10 +92,13 @@ func TestBan(t *testing.T) {
expectStderr: "Error: a SPIFFE ID is required\n",
},
{
name: "wrong UDS path",
args: []string{common.AddrArg, common.AddrValue},
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-spiffeID", "spiffe://example.org/spire/agent/agent1",
},
expectReturnCode: 1,
expectStderr: common.AddrError,
expectStderr: "Error: " + clitest.AddrError,
},
{
name: "server error",
@ -152,10 +155,13 @@ func TestEvict(t *testing.T) {
expectedStderr: "Error: a SPIFFE ID is required\n",
},
{
name: "wrong UDS path",
args: []string{common.AddrArg, common.AddrValue},
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-spiffeID", "spiffe://example.org/spire/agent/agent1",
},
expectedReturnCode: 1,
expectedStderr: common.AddrError,
expectedStderr: "Error: " + clitest.AddrError,
},
{
name: "server error",
@ -221,9 +227,9 @@ func TestCount(t *testing.T) {
},
{
name: "wrong UDS path",
args: []string{common.AddrArg, common.AddrValue},
args: []string{clitest.AddrArg, clitest.AddrValue},
expectedReturnCode: 1,
expectedStderr: common.AddrError,
expectedStderr: "Error: " + clitest.AddrError,
},
{
name: "Count by expiresBefore: month out of range",
@ -448,9 +454,9 @@ func TestList(t *testing.T) {
},
{
name: "wrong UDS path",
args: []string{common.AddrArg, common.AddrValue},
args: []string{clitest.AddrArg, clitest.AddrValue},
expectedReturnCode: 1,
expectedStderr: common.AddrError,
expectedStderr: "Error: " + clitest.AddrError,
},
{
name: "List by expiresBefore: month out of range",
@ -740,10 +746,13 @@ func TestShow(t *testing.T) {
expectedStderr: "Error: rpc error: code = Internal desc = internal server error\n",
},
{
name: "wrong UDS path",
args: []string{common.AddrArg, common.AddrValue},
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-spiffeID", "spiffe://example.org/spire/agent/agent1",
},
expectedReturnCode: 1,
expectedStderr: common.AddrError,
expectedStderr: "Error: " + clitest.AddrError,
},
{
name: "show selectors",
@ -801,7 +810,7 @@ func setupTest(t *testing.T, newClient func(*commoncli.Env) cli.Command) *agentT
stdin: stdin,
stdout: stdout,
stderr: stderr,
args: []string{common.AddrArg, common.GetAddr(addr)},
args: []string{clitest.AddrArg, clitest.GetAddr(addr)},
server: server,
client: client,
}

View File

@ -27,7 +27,7 @@ type countCommand struct {
// Filters agents to those that are banned.
banned commoncli.BoolFlag
// Filters agents by those expires before.
// Filters agents by those that expire before this value.
expiresBefore string
// Filters agents to those matching the attestation type.

View File

@ -28,7 +28,7 @@ type listCommand struct {
// Filters agents to those that are banned.
banned commoncli.BoolFlag
// Filters agents by those expires before.
// Filters agents by those that expire before this value.
expiresBefore string
// Filters agents to those matching the attestation type.

View File

@ -17,7 +17,7 @@ import (
type showCommand struct {
env *commoncli.Env
// SPIFFE ID of the agent being showed
// SPIFFE ID of the agent being shown
spiffeID string
printer cliprinter.Printer
}

View File

@ -1,170 +1,31 @@
package authoritycommon_test
package authoritycommon
import (
"bytes"
"context"
"testing"
"time"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/test/spiretest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc"
)
var (
AvailableFormats = []string{"pretty", "json"}
)
type localAuthorityTest struct {
Stdin *bytes.Buffer
Stdout *bytes.Buffer
Stderr *bytes.Buffer
Args []string
Server *fakeLocalAuthorityServer
Client cli.Command
func PrettyPrintJWTAuthorityState(env *commoncli.Env, authorityState *localauthorityv1.AuthorityState) {
prettyPrintAuthorityState(env, authorityState, false)
}
func (s *localAuthorityTest) afterTest(t *testing.T) {
t.Logf("TEST:%s", t.Name())
t.Logf("STDOUT:\n%s", s.Stdout.String())
t.Logf("STDIN:\n%s", s.Stdin.String())
t.Logf("STDERR:\n%s", s.Stderr.String())
func PrettyPrintX509AuthorityState(env *commoncli.Env, authorityState *localauthorityv1.AuthorityState) {
prettyPrintAuthorityState(env, authorityState, true)
}
func SetupTest(t *testing.T, newClient func(*commoncli.Env) cli.Command) *localAuthorityTest {
server := &fakeLocalAuthorityServer{}
addr := spiretest.StartGRPCServer(t, func(s *grpc.Server) {
localauthorityv1.RegisterLocalAuthorityServer(s, server)
})
stdin := new(bytes.Buffer)
stdout := new(bytes.Buffer)
stderr := new(bytes.Buffer)
client := newClient(&commoncli.Env{
Stdin: stdin,
Stdout: stdout,
Stderr: stderr,
})
test := &localAuthorityTest{
Stdin: stdin,
Stdout: stdout,
Stderr: stderr,
Args: []string{common.AddrArg, common.GetAddr(addr)},
Server: server,
Client: client,
func prettyPrintAuthorityState(env *commoncli.Env, authorityState *localauthorityv1.AuthorityState, includeUpstreamAuthority bool) {
env.Printf(" Authority ID: %s\n", authorityState.AuthorityId)
env.Printf(" Expires at: %s\n", time.Unix(authorityState.ExpiresAt, 0).UTC())
if !includeUpstreamAuthority {
return
}
t.Cleanup(func() {
test.afterTest(t)
})
return test
}
type fakeLocalAuthorityServer struct {
localauthorityv1.UnsafeLocalAuthorityServer
ActiveJWT,
PreparedJWT,
OldJWT,
ActiveX509,
PreparedX509,
OldX509,
TaintedX509,
RevokedX509,
TaintedJWT,
RevokedJWT *localauthorityv1.AuthorityState
Err error
}
func (s *fakeLocalAuthorityServer) GetJWTAuthorityState(context.Context, *localauthorityv1.GetJWTAuthorityStateRequest) (*localauthorityv1.GetJWTAuthorityStateResponse, error) {
return &localauthorityv1.GetJWTAuthorityStateResponse{
Active: s.ActiveJWT,
Prepared: s.PreparedJWT,
Old: s.OldJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) PrepareJWTAuthority(context.Context, *localauthorityv1.PrepareJWTAuthorityRequest) (*localauthorityv1.PrepareJWTAuthorityResponse, error) {
return &localauthorityv1.PrepareJWTAuthorityResponse{
PreparedAuthority: s.PreparedJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) ActivateJWTAuthority(context.Context, *localauthorityv1.ActivateJWTAuthorityRequest) (*localauthorityv1.ActivateJWTAuthorityResponse, error) {
return &localauthorityv1.ActivateJWTAuthorityResponse{
ActivatedAuthority: s.ActiveJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) TaintJWTAuthority(context.Context, *localauthorityv1.TaintJWTAuthorityRequest) (*localauthorityv1.TaintJWTAuthorityResponse, error) {
return &localauthorityv1.TaintJWTAuthorityResponse{
TaintedAuthority: s.TaintedJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) RevokeJWTAuthority(context.Context, *localauthorityv1.RevokeJWTAuthorityRequest) (*localauthorityv1.RevokeJWTAuthorityResponse, error) {
return &localauthorityv1.RevokeJWTAuthorityResponse{
RevokedAuthority: s.RevokedJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) GetX509AuthorityState(context.Context, *localauthorityv1.GetX509AuthorityStateRequest) (*localauthorityv1.GetX509AuthorityStateResponse, error) {
return &localauthorityv1.GetX509AuthorityStateResponse{
Active: s.ActiveX509,
Prepared: s.PreparedX509,
Old: s.OldX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) PrepareX509Authority(context.Context, *localauthorityv1.PrepareX509AuthorityRequest) (*localauthorityv1.PrepareX509AuthorityResponse, error) {
return &localauthorityv1.PrepareX509AuthorityResponse{
PreparedAuthority: s.PreparedX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) ActivateX509Authority(context.Context, *localauthorityv1.ActivateX509AuthorityRequest) (*localauthorityv1.ActivateX509AuthorityResponse, error) {
return &localauthorityv1.ActivateX509AuthorityResponse{
ActivatedAuthority: s.ActiveX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) TaintX509Authority(context.Context, *localauthorityv1.TaintX509AuthorityRequest) (*localauthorityv1.TaintX509AuthorityResponse, error) {
return &localauthorityv1.TaintX509AuthorityResponse{
TaintedAuthority: s.TaintedX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) TaintX509UpstreamAuthority(context.Context, *localauthorityv1.TaintX509UpstreamAuthorityRequest) (*localauthorityv1.TaintX509UpstreamAuthorityResponse, error) {
return &localauthorityv1.TaintX509UpstreamAuthorityResponse{}, s.Err
}
func (s *fakeLocalAuthorityServer) RevokeX509Authority(context.Context, *localauthorityv1.RevokeX509AuthorityRequest) (*localauthorityv1.RevokeX509AuthorityResponse, error) {
return &localauthorityv1.RevokeX509AuthorityResponse{
RevokedAuthority: s.RevokedX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) RevokeX509UpstreamAuthority(context.Context, *localauthorityv1.RevokeX509UpstreamAuthorityRequest) (*localauthorityv1.RevokeX509UpstreamAuthorityResponse, error) {
return &localauthorityv1.RevokeX509UpstreamAuthorityResponse{}, s.Err
}
func RequireOutputBasedOnFormat(t *testing.T, format, stdoutString string, expectedStdoutPretty, expectedStdoutJSON string) {
switch format {
case "pretty":
require.Contains(t, stdoutString, expectedStdoutPretty)
case "json":
if expectedStdoutJSON != "" {
require.JSONEq(t, expectedStdoutJSON, stdoutString)
} else {
require.Empty(t, stdoutString)
}
if authorityState.UpstreamAuthoritySubjectKeyId != "" {
env.Printf(" Upstream authority Subject Key ID: %s\n", authorityState.UpstreamAuthoritySubjectKeyId)
return
}
env.Println(" Upstream authority ID: No upstream authority")
}

View File

@ -0,0 +1,174 @@
package authoritycommontest
import (
"bytes"
"context"
"testing"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/spiretest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc"
)
var AvailableFormats = []string{"pretty", "json"}
type localAuthorityTest struct {
Stdin *bytes.Buffer
Stdout *bytes.Buffer
Stderr *bytes.Buffer
Args []string
Server *fakeLocalAuthorityServer
Client cli.Command
}
func (s *localAuthorityTest) afterTest(t *testing.T) {
t.Logf("TEST:%s", t.Name())
t.Logf("STDOUT:\n%s", s.Stdout.String())
t.Logf("STDIN:\n%s", s.Stdin.String())
t.Logf("STDERR:\n%s", s.Stderr.String())
}
func SetupTest(t *testing.T, newClient func(*commoncli.Env) cli.Command) *localAuthorityTest {
server := &fakeLocalAuthorityServer{}
addr := spiretest.StartGRPCServer(t, func(s *grpc.Server) {
localauthorityv1.RegisterLocalAuthorityServer(s, server)
})
stdin := new(bytes.Buffer)
stdout := new(bytes.Buffer)
stderr := new(bytes.Buffer)
client := newClient(&commoncli.Env{
Stdin: stdin,
Stdout: stdout,
Stderr: stderr,
})
test := &localAuthorityTest{
Stdin: stdin,
Stdout: stdout,
Stderr: stderr,
Args: []string{clitest.AddrArg, clitest.GetAddr(addr)},
Server: server,
Client: client,
}
t.Cleanup(func() {
test.afterTest(t)
})
return test
}
type fakeLocalAuthorityServer struct {
localauthorityv1.UnsafeLocalAuthorityServer
ActiveJWT,
PreparedJWT,
OldJWT,
ActiveX509,
PreparedX509,
OldX509,
TaintedX509,
RevokedX509,
TaintedJWT,
RevokedJWT *localauthorityv1.AuthorityState
TaintedUpstreamAuthoritySubjectKeyId,
RevokedUpstreamAuthoritySubjectKeyId string
Err error
}
func (s *fakeLocalAuthorityServer) GetJWTAuthorityState(context.Context, *localauthorityv1.GetJWTAuthorityStateRequest) (*localauthorityv1.GetJWTAuthorityStateResponse, error) {
return &localauthorityv1.GetJWTAuthorityStateResponse{
Active: s.ActiveJWT,
Prepared: s.PreparedJWT,
Old: s.OldJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) PrepareJWTAuthority(context.Context, *localauthorityv1.PrepareJWTAuthorityRequest) (*localauthorityv1.PrepareJWTAuthorityResponse, error) {
return &localauthorityv1.PrepareJWTAuthorityResponse{
PreparedAuthority: s.PreparedJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) ActivateJWTAuthority(context.Context, *localauthorityv1.ActivateJWTAuthorityRequest) (*localauthorityv1.ActivateJWTAuthorityResponse, error) {
return &localauthorityv1.ActivateJWTAuthorityResponse{
ActivatedAuthority: s.ActiveJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) TaintJWTAuthority(context.Context, *localauthorityv1.TaintJWTAuthorityRequest) (*localauthorityv1.TaintJWTAuthorityResponse, error) {
return &localauthorityv1.TaintJWTAuthorityResponse{
TaintedAuthority: s.TaintedJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) RevokeJWTAuthority(context.Context, *localauthorityv1.RevokeJWTAuthorityRequest) (*localauthorityv1.RevokeJWTAuthorityResponse, error) {
return &localauthorityv1.RevokeJWTAuthorityResponse{
RevokedAuthority: s.RevokedJWT,
}, s.Err
}
func (s *fakeLocalAuthorityServer) GetX509AuthorityState(context.Context, *localauthorityv1.GetX509AuthorityStateRequest) (*localauthorityv1.GetX509AuthorityStateResponse, error) {
return &localauthorityv1.GetX509AuthorityStateResponse{
Active: s.ActiveX509,
Prepared: s.PreparedX509,
Old: s.OldX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) PrepareX509Authority(context.Context, *localauthorityv1.PrepareX509AuthorityRequest) (*localauthorityv1.PrepareX509AuthorityResponse, error) {
return &localauthorityv1.PrepareX509AuthorityResponse{
PreparedAuthority: s.PreparedX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) ActivateX509Authority(context.Context, *localauthorityv1.ActivateX509AuthorityRequest) (*localauthorityv1.ActivateX509AuthorityResponse, error) {
return &localauthorityv1.ActivateX509AuthorityResponse{
ActivatedAuthority: s.ActiveX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) TaintX509Authority(context.Context, *localauthorityv1.TaintX509AuthorityRequest) (*localauthorityv1.TaintX509AuthorityResponse, error) {
return &localauthorityv1.TaintX509AuthorityResponse{
TaintedAuthority: s.TaintedX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) TaintX509UpstreamAuthority(context.Context, *localauthorityv1.TaintX509UpstreamAuthorityRequest) (*localauthorityv1.TaintX509UpstreamAuthorityResponse, error) {
return &localauthorityv1.TaintX509UpstreamAuthorityResponse{
UpstreamAuthoritySubjectKeyId: s.TaintedUpstreamAuthoritySubjectKeyId,
}, s.Err
}
func (s *fakeLocalAuthorityServer) RevokeX509Authority(context.Context, *localauthorityv1.RevokeX509AuthorityRequest) (*localauthorityv1.RevokeX509AuthorityResponse, error) {
return &localauthorityv1.RevokeX509AuthorityResponse{
RevokedAuthority: s.RevokedX509,
}, s.Err
}
func (s *fakeLocalAuthorityServer) RevokeX509UpstreamAuthority(context.Context, *localauthorityv1.RevokeX509UpstreamAuthorityRequest) (*localauthorityv1.RevokeX509UpstreamAuthorityResponse, error) {
return &localauthorityv1.RevokeX509UpstreamAuthorityResponse{
UpstreamAuthoritySubjectKeyId: s.RevokedUpstreamAuthoritySubjectKeyId,
}, s.Err
}
func RequireOutputBasedOnFormat(t *testing.T, format, stdoutString string, expectedStdoutPretty, expectedStdoutJSON string) {
switch format {
case "pretty":
require.Contains(t, stdoutString, expectedStdoutPretty)
case "json":
if expectedStdoutJSON != "" {
require.JSONEq(t, expectedStdoutJSON, stdoutString)
} else {
require.Empty(t, stdoutString)
}
}
}

View File

@ -2,7 +2,6 @@ package bundle
import (
"bytes"
"crypto"
"crypto/x509"
"encoding/json"
"encoding/pem"
@ -17,7 +16,7 @@ import (
"github.com/spiffe/go-spiffe/v2/spiffeid"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/util"
"github.com/zeebo/errs"
"github.com/spiffe/spire/pkg/common/jwtutil"
)
const (
@ -78,7 +77,7 @@ func printBundle(out io.Writer, bundle *types.Bundle) error {
docBytes, err := b.Marshal()
if err != nil {
return errs.Wrap(err)
return err
}
var o bytes.Buffer
@ -86,11 +85,8 @@ func printBundle(out io.Writer, bundle *types.Bundle) error {
return err
}
if _, err := fmt.Fprintln(out, o.String()); err != nil {
return errs.Wrap(err)
}
return nil
_, err = fmt.Fprintln(out, o.String())
return err
}
// bundleFromProto converts a bundle from the given *types.Bundle to *spiffebundle.Bundle
@ -103,7 +99,7 @@ func bundleFromProto(bundleProto *types.Bundle) (*spiffebundle.Bundle, error) {
if err != nil {
return nil, err
}
jwtAuthorities, err := jwtKeysFromProto(bundleProto.JwtAuthorities)
jwtAuthorities, err := jwtutil.JWTKeysFromProto(bundleProto.JwtAuthorities)
if err != nil {
return nil, err
}
@ -132,20 +128,6 @@ func x509CertificatesFromProto(proto []*types.X509Certificate) ([]*x509.Certific
return certs, nil
}
// jwtKeysFromProto converts JWT keys from the given []*types.JWTKey to map[string]crypto.PublicKey.
// The key ID of the public key is used as the key in the returned map.
func jwtKeysFromProto(proto []*types.JWTKey) (map[string]crypto.PublicKey, error) {
keys := make(map[string]crypto.PublicKey)
for i, publicKey := range proto {
jwtSigningKey, err := x509.ParsePKIXPublicKey(publicKey.PublicKey)
if err != nil {
return nil, fmt.Errorf("unable to parse JWT signing key %d: %w", i, err)
}
keys[publicKey.KeyId] = jwtSigningKey
}
return keys, nil
}
func printBundleWithFormat(out io.Writer, bundle *types.Bundle, format string, header bool) error {
if bundle == nil {
return errors.New("no bundle provided")

View File

@ -9,9 +9,9 @@ import (
"github.com/mitchellh/cli"
bundlev1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/bundle/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
common_cli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/pemutil"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/spiretest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc"
@ -203,7 +203,7 @@ func setupTest(t *testing.T, newClient func(*common_cli.Env) cli.Command) *bundl
cert1: cert1,
cert2: cert2,
key1Pkix: key1Pkix,
addr: common.GetAddr(addr),
addr: clitest.GetAddr(addr),
stdin: stdin,
stdout: stdout,
stderr: stderr,
@ -241,7 +241,7 @@ func (s *bundleTest) afterTest(t *testing.T) {
}
func (s *bundleTest) args(extra ...string) []string {
return append([]string{common.AddrArg, s.addr}, extra...)
return append([]string{clitest.AddrArg, s.addr}, extra...)
}
type fakeBundleServer struct {

View File

@ -3,8 +3,6 @@ package cli
import (
"context"
stdlog "log"
"os"
"strings"
"github.com/mitchellh/cli"
"github.com/spiffe/spire/cmd/spire-server/cli/agent"
@ -18,9 +16,9 @@ import (
"github.com/spiffe/spire/cmd/spire-server/cli/logger"
"github.com/spiffe/spire/cmd/spire-server/cli/run"
"github.com/spiffe/spire/cmd/spire-server/cli/token"
"github.com/spiffe/spire/cmd/spire-server/cli/upstreamauthority"
"github.com/spiffe/spire/cmd/spire-server/cli/validate"
"github.com/spiffe/spire/cmd/spire-server/cli/x509"
"github.com/spiffe/spire/pkg/common/fflag"
"github.com/spiffe/spire/pkg/common/log"
"github.com/spiffe/spire/pkg/common/version"
)
@ -129,45 +127,47 @@ func (cc *CLI) Run(ctx context.Context, args []string) int {
"validate": func() (cli.Command, error) {
return validate.NewValidateCommand(), nil
},
"localauthority x509 show": func() (cli.Command, error) {
return localauthority_x509.NewX509ShowCommand(), nil
},
"localauthority x509 prepare": func() (cli.Command, error) {
return localauthority_x509.NewX509PrepareCommand(), nil
},
"localauthority x509 activate": func() (cli.Command, error) {
return localauthority_x509.NewX509ActivateCommand(), nil
},
"localauthority x509 taint": func() (cli.Command, error) {
return localauthority_x509.NewX509TaintCommand(), nil
},
"localauthority x509 revoke": func() (cli.Command, error) {
return localauthority_x509.NewX509RevokeCommand(), nil
},
"localauthority jwt show": func() (cli.Command, error) {
return localauthority_jwt.NewJWTShowCommand(), nil
},
"localauthority jwt prepare": func() (cli.Command, error) {
return localauthority_jwt.NewJWTPrepareCommand(), nil
},
"localauthority jwt activate": func() (cli.Command, error) {
return localauthority_jwt.NewJWTActivateCommand(), nil
},
"localauthority jwt taint": func() (cli.Command, error) {
return localauthority_jwt.NewJWTTaintCommand(), nil
},
"localauthority jwt revoke": func() (cli.Command, error) {
return localauthority_jwt.NewJWTRevokeCommand(), nil
},
"upstreamauthority taint": func() (cli.Command, error) {
return upstreamauthority.NewTaintCommand(), nil
},
"upstreamauthority revoke": func() (cli.Command, error) {
return upstreamauthority.NewRevokeCommand(), nil
},
}
// TODO: Remove this when the forced_rotation feature flag is no longer
// needed. Refer to https://github.com/spiffe/spire/issues/5398.
addCommandsEnabledByFFlags(c.Commands)
exitStatus, err := c.Run()
if err != nil {
stdlog.Println(err)
}
return exitStatus
}
// addCommandsEnabledByFFlags adds commands that are currently available only
// through a feature flag.
// Feature flags support through the fflag package in SPIRE Server is
// designed to work only with the run command and the config file.
// Since feature flags are intended to be used by developers of a specific
// feature only, exposing them through command line arguments is not
// convenient. Instead, we use the SPIRE_SERVER_FFLAGS environment variable
// to read the configured SPIRE Server feature flags from the environment
// when other commands may be enabled through feature flags.
func addCommandsEnabledByFFlags(commands map[string]cli.CommandFactory) {
fflagsEnv := os.Getenv("SPIRE_SERVER_FFLAGS")
fflags := strings.Split(fflagsEnv, " ")
flagForcedRotationFound := false
for _, ff := range fflags {
if ff == string(fflag.FlagForcedRotation) {
flagForcedRotationFound = true
break
}
}
if flagForcedRotationFound {
commands["localauthority x509 show"] = func() (cli.Command, error) {
return localauthority_x509.NewX509ShowCommand(), nil
}
commands["localauthority jwt show"] = func() (cli.Command, error) {
return localauthority_jwt.NewJWTShowCommand(), nil
}
}
}

View File

@ -1,25 +0,0 @@
//go:build windows
package common
import (
"net"
"github.com/spiffe/spire/pkg/common/namedpipe"
)
var (
AddrArg = "-namedPipeName"
AddrError = "Error: connection error: desc = \"transport: error while dialing: open \\\\\\\\.\\\\pipe\\\\does-not-exist: The system cannot find the file specified.\"\n"
AddrOutputUsage = `
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
AddrValue = "\\does-not-exist"
)
func GetAddr(addr net.Addr) string {
return namedpipe.GetPipeName(addr.String())
}

View File

@ -31,7 +31,7 @@ type countCommand struct {
// List of SPIFFE IDs of trust domains the registration entry is federated with
federatesWith StringsFlag
// Whether or not the entry is for a downstream SPIRE server
// Whether the entry is for a downstream SPIRE server
downstream bool
// Match used when filtering by federates with

View File

@ -4,14 +4,16 @@ import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
entryv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/entry/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/util"
serverutil "github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
"github.com/spiffe/spire/pkg/common/idutil"
"github.com/spiffe/spire/pkg/common/util"
"google.golang.org/grpc/codes"
)
@ -21,7 +23,7 @@ func NewCreateCommand() cli.Command {
}
func newCreateCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &createCommand{env: env})
return serverutil.AdaptCommand(env, &createCommand{env: env})
}
type createCommand struct {
@ -45,11 +47,6 @@ type createCommand struct {
// Entry hint, used to disambiguate entries with the same SPIFFE ID
hint string
// TTL for x509 and JWT SVIDs issued to this workload, unless type specific TTLs are set.
// This field is deprecated in favor of the x509SVIDTTL and jwtSVIDTTL fields and will be
// removed in a future release.
ttl int
// TTL for x509 SVIDs issued to this workload
x509SVIDTTL int
@ -59,13 +56,13 @@ type createCommand struct {
// List of SPIFFE IDs of trust domains the registration entry is federated with
federatesWith StringsFlag
// Whether or not the registration entry is for an "admin" workload
// whether the registration entry is for an "admin" workload
admin bool
// Whether or not the entry is for a downstream SPIRE server
// whether the entry is for a downstream SPIRE server
downstream bool
// Whether or not the entry represents a node or group of nodes
// whether the entry represents a node or group of nodes
node bool
// Expiry of entry
@ -94,9 +91,8 @@ func (c *createCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.entryID, "entryID", "", "A custom ID for this registration entry (optional). If not set, a new entry ID will be generated")
f.StringVar(&c.parentID, "parentID", "", "The SPIFFE ID of this record's parent")
f.StringVar(&c.spiffeID, "spiffeID", "", "The SPIFFE ID that this record represents")
f.IntVar(&c.ttl, "ttl", 0, "The lifetime, in seconds, for SVIDs issued based on this registration entry. This flag is deprecated in favor of x509SVIDTTL and jwtSVIDTTL and will be removed in a future version")
f.IntVar(&c.x509SVIDTTL, "x509SVIDTTL", 0, "The lifetime, in seconds, for x509-SVIDs issued based on this registration entry. Overrides ttl flag")
f.IntVar(&c.jwtSVIDTTL, "jwtSVIDTTL", 0, "The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry. Overrides ttl flag")
f.IntVar(&c.x509SVIDTTL, "x509SVIDTTL", 0, "The lifetime, in seconds, for x509-SVIDs issued based on this registration entry.")
f.IntVar(&c.jwtSVIDTTL, "jwtSVIDTTL", 0, "The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry.")
f.StringVar(&c.path, "data", "", "Path to a file containing registration JSON (optional). If set to '-', read the JSON from stdin.")
f.Var(&c.selectors, "selector", "A colon-delimited type:value selector. Can be used more than once")
f.Var(&c.federatesWith, "federatesWith", "SPIFFE ID of a trust domain to federate with. Can be used more than once")
@ -110,7 +106,7 @@ func (c *createCommand) AppendFlags(f *flag.FlagSet) {
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintCreate)
}
func (c *createCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
func (c *createCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient serverutil.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
@ -158,10 +154,6 @@ func (c *createCommand) validate() (err error) {
return errors.New("a SPIFFE ID is required")
}
if c.ttl < 0 {
return errors.New("a positive TTL is required")
}
if c.x509SVIDTTL < 0 {
return errors.New("a positive x509-SVID TTL is required")
}
@ -170,10 +162,6 @@ func (c *createCommand) validate() (err error) {
return errors.New("a positive JWT-SVID TTL is required")
}
if c.ttl > 0 && (c.x509SVIDTTL > 0 || c.jwtSVIDTTL > 0) {
return errors.New("use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag")
}
return nil
}
@ -189,6 +177,16 @@ func (c *createCommand) parseConfig() ([]*types.Entry, error) {
return nil, err
}
x509SvidTTL, err := util.CheckedCast[int32](c.x509SVIDTTL)
if err != nil {
return nil, fmt.Errorf("invalid value for X509 SVID TTL: %w", err)
}
jwtSvidTTL, err := util.CheckedCast[int32](c.jwtSVIDTTL)
if err != nil {
return nil, fmt.Errorf("invalid value for JWT SVID TTL: %w", err)
}
e := &types.Entry{
Id: c.entryID,
ParentId: parentID,
@ -197,26 +195,14 @@ func (c *createCommand) parseConfig() ([]*types.Entry, error) {
ExpiresAt: c.entryExpiry,
DnsNames: c.dnsNames,
StoreSvid: c.storeSVID,
X509SvidTtl: int32(c.x509SVIDTTL),
JwtSvidTtl: int32(c.jwtSVIDTTL),
X509SvidTtl: x509SvidTTL,
JwtSvidTtl: jwtSvidTTL,
Hint: c.hint,
}
// c.ttl is deprecated but usable if the new c.x509Svid field is not used.
// c.ttl should not be used to set the jwtSVIDTTL value because the previous
// behavior was to have a hard-coded 5 minute JWT TTL no matter what the value
// of ttl was set to.
// validate(...) ensures that either the new fields or the deprecated field is
// used, but never a mixture.
//
// https://github.com/spiffe/spire/issues/2700
if e.X509SvidTtl == 0 {
e.X509SvidTtl = int32(c.ttl)
}
selectors := []*types.Selector{}
for _, s := range c.selectors {
cs, err := util.ParseSelector(s)
cs, err := serverutil.ParseSelector(s)
if err != nil {
return nil, err
}
@ -280,7 +266,7 @@ func prettyPrintCreate(env *commoncli.Env, results ...any) error {
for _, r := range failed {
env.ErrPrintf("Failed to create the following entry (code: %s, msg: %q):\n",
codes.Code(r.Status.Code),
util.MustCast[codes.Code](r.Status.Code),
r.Status.Message)
printEntry(r.Entry, env.ErrPrintf)
}

View File

@ -54,7 +54,7 @@ func TestCreate(t *testing.T) {
},
}
fakeRespOKFromCmd2 := &entryv1.BatchCreateEntryResponse{
fakeRespOKFromCmdWithoutJwtTtl := &entryv1.BatchCreateEntryResponse{
Results: []*entryv1.BatchCreateEntryResponse_Result{
{
Entry: &types.Entry{
@ -186,28 +186,16 @@ func TestCreate(t *testing.T) {
expErrJSON: "Error: selector \"unix\" must be formatted as type:value\n",
},
{
name: "Negative TTL",
args: []string{"-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-ttl", "-10"},
expErrPretty: "Error: a positive TTL is required\n",
expErrJSON: "Error: a positive TTL is required\n",
name: "Negative X509SvidTtl",
args: []string{"-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-x509SVIDTTL", "-10"},
expErrPretty: "Error: a positive x509-SVID TTL is required\n",
expErrJSON: "Error: a positive x509-SVID TTL is required\n",
},
{
name: "Invalid TTL and X509SvidTtl",
args: []string{"-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-ttl", "10", "-x509SVIDTTL", "20"},
expErrPretty: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
expErrJSON: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
},
{
name: "Invalid TTL and JwtSvidTtl",
args: []string{"-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-ttl", "10", "-jwtSVIDTTL", "20"},
expErrPretty: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
expErrJSON: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
},
{
name: "Invalid TTL and both X509SvidTtl and JwtSvidTtl",
args: []string{"-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-ttl", "10", "-x509SVIDTTL", "20", "-jwtSVIDTTL", "30"},
expErrPretty: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
expErrJSON: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
name: "Negative jwtSVIDTTL",
args: []string{"-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-jwtSVIDTTL", "-10"},
expErrPretty: "Error: a positive JWT-SVID TTL is required\n",
expErrJSON: "Error: a positive JWT-SVID TTL is required\n",
},
{
name: "Federated node entries",
@ -346,7 +334,7 @@ StoreSvid : true
"-parentID", "spiffe://example.org/parent",
"-selector", "zebra:zebra:2000",
"-selector", "alpha:alpha:2000",
"-ttl", "60",
"-x509SVIDTTL", "60",
"-federatesWith", "spiffe://domaina.test",
"-federatesWith", "spiffe://domainb.test",
"-admin",
@ -376,111 +364,7 @@ StoreSvid : true
},
},
},
fakeResp: fakeRespOKFromCmd2,
expOutPretty: fmt.Sprintf(`Entry ID : entry-id
SPIFFE ID : spiffe://example.org/workload
Parent ID : spiffe://example.org/parent
Revision : 0
Downstream : true
X509-SVID TTL : 60
JWT-SVID TTL : default
Expiration time : %s
Selector : zebra:zebra:2000
Selector : alpha:alpha:2000
FederatesWith : spiffe://domaina.test
FederatesWith : spiffe://domainb.test
DNS name : unu1000
DNS name : ung1000
Admin : true
StoreSvid : true
`, time.Unix(1552410266, 0).UTC()),
expOutJSON: `{
"results": [
{
"status": {
"code": 0,
"message": "OK"
},
"entry": {
"id": "entry-id",
"spiffe_id": {
"trust_domain": "example.org",
"path": "/workload"
},
"parent_id": {
"trust_domain": "example.org",
"path": "/parent"
},
"selectors": [
{
"type": "zebra",
"value": "zebra:2000"
},
{
"type": "alpha",
"value": "alpha:2000"
}
],
"x509_svid_ttl": 60,
"federates_with": [
"spiffe://domaina.test",
"spiffe://domainb.test"
],
"hint": "",
"admin": true,
"created_at": "1547583197",
"downstream": true,
"expires_at": "1552410266",
"dns_names": [
"unu1000",
"ung1000"
],
"revision_number": "0",
"store_svid": true,
"jwt_svid_ttl": 0
}
}
]
}`,
},
{
name: "Create succeeds using deprecated command line arguments",
args: []string{
"-spiffeID", "spiffe://example.org/workload",
"-parentID", "spiffe://example.org/parent",
"-selector", "zebra:zebra:2000",
"-selector", "alpha:alpha:2000",
"-ttl", "60",
"-federatesWith", "spiffe://domaina.test",
"-federatesWith", "spiffe://domainb.test",
"-admin",
"-entryExpiry", "1552410266",
"-dns", "unu1000",
"-dns", "ung1000",
"-downstream",
"-storeSVID",
},
expReq: &entryv1.BatchCreateEntryRequest{
Entries: []*types.Entry{
{
SpiffeId: &types.SPIFFEID{TrustDomain: "example.org", Path: "/workload"},
ParentId: &types.SPIFFEID{TrustDomain: "example.org", Path: "/parent"},
Selectors: []*types.Selector{
{Type: "zebra", Value: "zebra:2000"},
{Type: "alpha", Value: "alpha:2000"},
},
X509SvidTtl: 60,
FederatesWith: []string{"spiffe://domaina.test", "spiffe://domainb.test"},
Admin: true,
ExpiresAt: 1552410266,
DnsNames: []string{"unu1000", "ung1000"},
Downstream: true,
StoreSvid: true,
},
},
},
fakeResp: fakeRespOKFromCmd2,
fakeResp: fakeRespOKFromCmdWithoutJwtTtl,
expOutPretty: fmt.Sprintf(`Entry ID : entry-id
SPIFFE ID : spiffe://example.org/workload
Parent ID : spiffe://example.org/parent

View File

@ -10,9 +10,10 @@ import (
"github.com/mitchellh/cli"
entryv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/entry/v1"
"github.com/spiffe/spire/cmd/spire-server/util"
serverutil "github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
"github.com/spiffe/spire/pkg/common/util"
"google.golang.org/grpc/codes"
)
@ -22,7 +23,7 @@ func NewDeleteCommand() cli.Command {
}
func newDeleteCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &deleteCommand{env: env})
return serverutil.AdaptCommand(env, &deleteCommand{env: env})
}
type deleteCommand struct {
@ -70,7 +71,7 @@ func parseEntryDeleteJSON(path string) ([]string, error) {
return batchDeleteEntryRequest.Ids, nil
}
func (c *deleteCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
func (c *deleteCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient serverutil.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
@ -135,7 +136,7 @@ func (c *deleteCommand) prettyPrintDelete(env *commoncli.Env, results ...any) er
for _, result := range failed {
env.ErrPrintf("Failed to delete entry with ID %s (code: %s, msg: %q)\n",
result.Id,
codes.Code(result.Status.Code),
util.MustCast[codes.Code](result.Status.Code),
result.Status.Message)
}

View File

@ -47,7 +47,7 @@ type showCommand struct {
// List of SPIFFE IDs of trust domains the registration entry is federated with
federatesWith StringsFlag
// Whether or not the entry is for a downstream SPIRE server
// whether the entry is for a downstream SPIRE server
downstream bool
// Match used when filtering by federates with

View File

@ -445,7 +445,7 @@ func getEntries(count int) []*types.Entry {
}
e := []*types.Entry{}
for i := 0; i < count; i++ {
for i := range count {
e = append(e, entries[i])
}

View File

@ -4,13 +4,15 @@ import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
entryv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/entry/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/util"
serverutil "github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
"github.com/spiffe/spire/pkg/common/util"
"google.golang.org/grpc/codes"
)
@ -20,7 +22,7 @@ func NewUpdateCommand() cli.Command {
}
func newUpdateCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &updateCommand{env: env})
return serverutil.AdaptCommand(env, &updateCommand{env: env})
}
type updateCommand struct {
@ -41,12 +43,9 @@ type updateCommand struct {
// Workload spiffeID
spiffeID string
// Whether or not the entry is for a downstream SPIRE server
// whether the entry is for a downstream SPIRE server
downstream bool
// TTL for certificates issued to this workload
ttl int
// TTL for x509 SVIDs issued to this workload
x509SvidTTL int
@ -56,7 +55,7 @@ type updateCommand struct {
// List of SPIFFE IDs of trust domains the registration entry is federated with
federatesWith StringsFlag
// Whether or not the registration entry is for an "admin" workload
// whether the registration entry is for an "admin" workload
admin bool
// Expiry of entry
@ -88,9 +87,8 @@ func (c *updateCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.entryID, "entryID", "", "The Registration Entry ID of the record to update")
f.StringVar(&c.parentID, "parentID", "", "The SPIFFE ID of this record's parent")
f.StringVar(&c.spiffeID, "spiffeID", "", "The SPIFFE ID that this record represents")
f.IntVar(&c.ttl, "ttl", 0, "The lifetime, in seconds, for SVIDs issued based on this registration entry. This flag is deprecated in favor of x509SVIDTTL and jwtSVIDTTL and will be removed in a future version")
f.IntVar(&c.x509SvidTTL, "x509SVIDTTL", 0, "The lifetime, in seconds, for x509-SVIDs issued based on this registration entry. Overrides ttl flag")
f.IntVar(&c.jwtSvidTTL, "jwtSVIDTTL", 0, "The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry. Overrides ttl flag")
f.IntVar(&c.x509SvidTTL, "x509SVIDTTL", 0, "The lifetime, in seconds, for x509-SVIDs issued based on this registration entry.")
f.IntVar(&c.jwtSvidTTL, "jwtSVIDTTL", 0, "The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry.")
f.StringVar(&c.path, "data", "", "Path to a file containing registration JSON (optional). If set to '-', read the JSON from stdin.")
f.Var(&c.selectors, "selector", "A colon-delimited type:value selector. Can be used more than once")
f.Var(&c.federatesWith, "federatesWith", "SPIFFE ID of a trust domain to federate with. Can be used more than once")
@ -103,7 +101,7 @@ func (c *updateCommand) AppendFlags(f *flag.FlagSet) {
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintUpdate)
}
func (c *updateCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
func (c *updateCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient serverutil.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
@ -151,10 +149,6 @@ func (c *updateCommand) validate() (err error) {
return errors.New("a SPIFFE ID is required")
}
if c.ttl < 0 {
return errors.New("a positive TTL is required")
}
if c.x509SvidTTL < 0 {
return errors.New("a positive x509-SVID TTL is required")
}
@ -163,10 +157,6 @@ func (c *updateCommand) validate() (err error) {
return errors.New("a positive JWT-SVID TTL is required")
}
if c.ttl > 0 && (c.x509SvidTTL > 0 || c.jwtSvidTTL > 0) {
return errors.New("use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag")
}
return nil
}
@ -181,6 +171,16 @@ func (c *updateCommand) parseConfig() ([]*types.Entry, error) {
return nil, err
}
x509SvidTTL, err := util.CheckedCast[int32](c.x509SvidTTL)
if err != nil {
return nil, fmt.Errorf("invalid value for X509 SVID TTL: %w", err)
}
jwtSvidTTL, err := util.CheckedCast[int32](c.jwtSvidTTL)
if err != nil {
return nil, fmt.Errorf("invalid value for JWT SVID TTL: %w", err)
}
e := &types.Entry{
Id: c.entryID,
ParentId: parentID,
@ -188,26 +188,14 @@ func (c *updateCommand) parseConfig() ([]*types.Entry, error) {
Downstream: c.downstream,
ExpiresAt: c.entryExpiry,
DnsNames: c.dnsNames,
X509SvidTtl: int32(c.x509SvidTTL),
JwtSvidTtl: int32(c.jwtSvidTTL),
X509SvidTtl: x509SvidTTL,
JwtSvidTtl: jwtSvidTTL,
Hint: c.hint,
}
// c.ttl is deprecated but usable if the new c.x509Svid field is not used.
// c.ttl should not be used to set the jwtSVIDTTL value because the previous
// behavior was to have a hard-coded 5 minute JWT TTL no matter what the value
// of ttl was set to.
// validate(...) ensures that either the new fields or the deprecated field is
// used, but never a mixture.
//
// https://github.com/spiffe/spire/issues/2700
if e.X509SvidTtl == 0 {
e.X509SvidTtl = int32(c.ttl)
}
selectors := []*types.Selector{}
for _, s := range c.selectors {
cs, err := util.ParseSelector(s)
cs, err := serverutil.ParseSelector(s)
if err != nil {
return nil, err
}
@ -264,7 +252,7 @@ func prettyPrintUpdate(env *commoncli.Env, results ...any) error {
// Print entries that failed to be updated
for _, r := range failed {
env.ErrPrintf("Failed to update the following entry (code: %s, msg: %q):\n",
codes.Code(r.Status.Code),
util.MustCast[codes.Code](r.Status.Code),
r.Status.Message)
printEntry(r.Entry, env.ErrPrintf)
}

View File

@ -321,24 +321,6 @@ func TestUpdate(t *testing.T) {
JwtSvidTtl: 300,
}
entry5 := &types.Entry{
Id: "entry-id",
SpiffeId: &types.SPIFFEID{TrustDomain: "example.org", Path: "/workload"},
ParentId: &types.SPIFFEID{TrustDomain: "example.org", Path: "/parent"},
Selectors: []*types.Selector{
{Type: "zebra", Value: "zebra:2000"},
{Type: "alpha", Value: "alpha:2000"},
},
X509SvidTtl: 60,
JwtSvidTtl: 0,
FederatesWith: []string{"spiffe://domaina.test", "spiffe://domainb.test"},
Admin: true,
ExpiresAt: 1552410266,
DnsNames: []string{"unu1000", "ung1000"},
Downstream: true,
Hint: "external",
}
entry2Resp := proto.Clone(entry2).(*types.Entry)
entry2Resp.CreatedAt = 1547583197
entry3Resp := proto.Clone(entry3).(*types.Entry)
@ -416,30 +398,6 @@ func TestUpdate(t *testing.T) {
expErrPretty: "Error: selector \"unix\" must be formatted as type:value\n",
expErrJSON: "Error: selector \"unix\" must be formatted as type:value\n",
},
{
name: "Negative TTL",
args: []string{"-entryID", "entry-id", "-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-ttl", "-10"},
expErrPretty: "Error: a positive TTL is required\n",
expErrJSON: "Error: a positive TTL is required\n",
},
{
name: "Invalid TTL and X509SvidTtl",
args: []string{"-entryID", "entry-id", "-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-ttl", "10", "-x509SVIDTTL", "20"},
expErrPretty: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
expErrJSON: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
},
{
name: "Invalid TTL and JwtSvidTtl",
args: []string{"-entryID", "entry-id", "-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-ttl", "10", "-jwtSVIDTTL", "20"},
expErrPretty: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
expErrJSON: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
},
{
name: "Invalid TTL and both X509SvidTtl and JwtSvidTtl",
args: []string{"-entryID", "entry-id", "-selector", "unix", "-parentID", "spiffe://example.org/parent", "-spiffeID", "spiffe://example.org/workload", "-ttl", "10", "-x509SVIDTTL", "20", "-jwtSVIDTTL", "30"},
expErrPretty: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
expErrJSON: "Error: use x509SVIDTTL and jwtSVIDTTL flags or the deprecated ttl flag\n",
},
{
name: "Server error",
args: []string{"-entryID", "entry-id", "-spiffeID", "spiffe://example.org/workload", "-parentID", "spiffe://example.org/parent", "-selector", "unix:uid:1"},
@ -495,58 +453,6 @@ DNS name : ung1000
Admin : true
Hint : external
`, time.Unix(1552410266, 0).UTC()),
expOutJSON: fmt.Sprintf(`{
"results": [
{
"status": {
"code": 0,
"message": "OK"
},
"entry": %s
}
]
}`, entry0AdminJSON),
},
{
name: "Update succeeds using deprecated command line arguments",
args: []string{
"-entryID", "entry-id",
"-spiffeID", "spiffe://example.org/workload",
"-parentID", "spiffe://example.org/parent",
"-selector", "zebra:zebra:2000",
"-selector", "alpha:alpha:2000",
"-ttl", "60",
"-federatesWith", "spiffe://domaina.test",
"-federatesWith", "spiffe://domainb.test",
"-admin",
"-entryExpiry", "1552410266",
"-dns", "unu1000",
"-dns", "ung1000",
"-downstream",
"-hint", "external",
},
expReq: &entryv1.BatchUpdateEntryRequest{
Entries: []*types.Entry{entry5},
},
fakeResp: fakeRespOKFromCmd,
expOutPretty: fmt.Sprintf(`Entry ID : entry-id
SPIFFE ID : spiffe://example.org/workload
Parent ID : spiffe://example.org/parent
Revision : 0
Downstream : true
X509-SVID TTL : 60
JWT-SVID TTL : 30
Expiration time : %s
Selector : zebra:zebra:2000
Selector : alpha:alpha:2000
FederatesWith : spiffe://domaina.test
FederatesWith : spiffe://domainb.test
DNS name : unu1000
DNS name : ung1000
Admin : true
Hint : external
`, time.Unix(1552410266, 0).UTC()),
expOutJSON: fmt.Sprintf(`{
"results": [

View File

@ -21,7 +21,7 @@ const (
-hint string
The entry hint, used to disambiguate entries with the same SPIFFE ID
-jwtSVIDTTL int
The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry. Overrides ttl flag
The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry.
-node
If set, this entry will be applied to matching nodes rather than workloads
-output value
@ -36,10 +36,8 @@ const (
The SPIFFE ID that this record represents
-storeSVID
A boolean value that, when set, indicates that the resulting issued SVID from this entry must be stored through an SVIDStore plugin
-ttl int
The lifetime, in seconds, for SVIDs issued based on this registration entry. This flag is deprecated in favor of x509SVIDTTL and jwtSVIDTTL and will be removed in a future version
-x509SVIDTTL int
The lifetime, in seconds, for x509-SVIDs issued based on this registration entry. Overrides ttl flag
The lifetime, in seconds, for x509-SVIDs issued based on this registration entry.
`
showUsage = `Usage of entry show:
-downstream
@ -83,7 +81,7 @@ const (
-hint string
The entry hint, used to disambiguate entries with the same SPIFFE ID
-jwtSVIDTTL int
The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry. Overrides ttl flag
The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry.
-output value
Desired output format (pretty, json); default: pretty.
-parentID string
@ -96,10 +94,8 @@ const (
The SPIFFE ID that this record represents
-storeSVID
A boolean value that, when set, indicates that the resulting issued SVID from this entry must be stored through an SVIDStore plugin
-ttl int
The lifetime, in seconds, for SVIDs issued based on this registration entry. This flag is deprecated in favor of x509SVIDTTL and jwtSVIDTTL and will be removed in a future version
-x509SVIDTTL int
The lifetime, in seconds, for x509-SVIDs issued based on this registration entry. Overrides ttl flag
The lifetime, in seconds, for x509-SVIDs issued based on this registration entry.
`
deleteUsage = `Usage of entry delete:
-entryID string

View File

@ -10,8 +10,8 @@ import (
"github.com/mitchellh/cli"
entryv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/entry/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
common_cli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/spiretest"
"github.com/spiffe/spire/test/util"
"github.com/stretchr/testify/assert"
@ -45,7 +45,6 @@ func TestParseEntryJSON(t *testing.T) {
}
for _, testCase := range testCases {
testCase := testCase
t.Run(testCase.name, func(t *testing.T) {
p := testCase.testDataPath
@ -155,7 +154,7 @@ func (e *entryTest) afterTest(t *testing.T) {
}
func (e *entryTest) args(extra ...string) []string {
return append([]string{common.AddrArg, e.addr}, extra...)
return append([]string{clitest.AddrArg, e.addr}, extra...)
}
type fakeEntryServer struct {
@ -242,7 +241,7 @@ func setupTest(t *testing.T, newClient func(*common_cli.Env) cli.Command) *entry
})
test := &entryTest{
addr: common.GetAddr(addr),
addr: clitest.GetAddr(addr),
stdin: stdin,
stdout: stdout,
stderr: stderr,

View File

@ -21,7 +21,7 @@ const (
-hint string
The entry hint, used to disambiguate entries with the same SPIFFE ID
-jwtSVIDTTL int
The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry. Overrides ttl flag
The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry.
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-node
@ -36,10 +36,8 @@ const (
The SPIFFE ID that this record represents
-storeSVID
A boolean value that, when set, indicates that the resulting issued SVID from this entry must be stored through an SVIDStore plugin
-ttl int
The lifetime, in seconds, for SVIDs issued based on this registration entry. This flag is deprecated in favor of x509SVIDTTL and jwtSVIDTTL and will be removed in a future version
-x509SVIDTTL int
The lifetime, in seconds, for x509-SVIDs issued based on this registration entry. Overrides ttl flag
The lifetime, in seconds, for x509-SVIDs issued based on this registration entry.
`
showUsage = `Usage of entry show:
-downstream
@ -83,7 +81,7 @@ const (
-hint string
The entry hint, used to disambiguate entries with the same SPIFFE ID
-jwtSVIDTTL int
The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry. Overrides ttl flag
The lifetime, in seconds, for JWT-SVIDs issued based on this registration entry.
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
@ -96,10 +94,8 @@ const (
The SPIFFE ID that this record represents
-storeSVID
A boolean value that, when set, indicates that the resulting issued SVID from this entry must be stored through an SVIDStore plugin
-ttl int
The lifetime, in seconds, for SVIDs issued based on this registration entry. This flag is deprecated in favor of x509SVIDTTL and jwtSVIDTTL and will be removed in a future version
-x509SVIDTTL int
The lifetime, in seconds, for x509-SVIDs issued based on this registration entry. Overrides ttl flag
The lifetime, in seconds, for x509-SVIDs issued based on this registration entry.
`
deleteUsage = `Usage of entry delete:
-entryID string

View File

@ -11,9 +11,9 @@ import (
"github.com/spiffe/go-spiffe/v2/spiffeid"
trustdomainv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/trustdomain/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
common_cli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/pemutil"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/fakes/fakeserverca"
"github.com/spiffe/spire/test/spiretest"
"github.com/stretchr/testify/require"
@ -124,7 +124,7 @@ func (c *cmdTest) afterTest(t *testing.T) {
}
func (c *cmdTest) args(extra ...string) []string {
return append([]string{common.AddrArg, c.addr}, extra...)
return append([]string{clitest.AddrArg, c.addr}, extra...)
}
type fakeServer struct {
@ -222,7 +222,7 @@ func setupTest(t *testing.T, newClient func(*common_cli.Env) cli.Command) *cmdTe
})
test := &cmdTest{
addr: common.GetAddr(addr),
addr: clitest.GetAddr(addr),
stdin: stdin,
stdout: stdout,
stderr: stderr,
@ -241,7 +241,7 @@ func createBundle(t *testing.T, trustDomain string) (*types.Bundle, string) {
td := spiffeid.RequireTrustDomainFromString(trustDomain)
bundlePath := path.Join(t.TempDir(), "bundle.pem")
ca := fakeserverca.New(t, td, &fakeserverca.Options{})
require.NoError(t, os.WriteFile(bundlePath, pemutil.EncodeCertificates(ca.Bundle()), 0600))
require.NoError(t, os.WriteFile(bundlePath, pemutil.EncodeCertificates(ca.Bundle()), 0o600))
return &types.Bundle{
TrustDomain: td.Name(),
@ -253,13 +253,13 @@ func createBundle(t *testing.T, trustDomain string) (*types.Bundle, string) {
func createCorruptedBundle(t *testing.T) string {
bundlePath := path.Join(t.TempDir(), "bundle.pem")
require.NoError(t, os.WriteFile(bundlePath, []byte("corrupted-bundle"), 0600))
require.NoError(t, os.WriteFile(bundlePath, []byte("corrupted-bundle"), 0o600))
return bundlePath
}
func createJSONDataFile(t *testing.T, data string) string {
jsonDataFilePath := path.Join(t.TempDir(), "bundle.pem")
require.NoError(t, os.WriteFile(jsonDataFilePath, []byte(data), 0600))
require.NoError(t, os.WriteFile(jsonDataFilePath, []byte(data), 0o600))
return jsonDataFilePath
}

View File

@ -9,9 +9,10 @@ import (
"github.com/mitchellh/cli"
trustdomainv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/trustdomain/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/util"
serverutil "github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
"github.com/spiffe/spire/pkg/common/util"
"google.golang.org/grpc/codes"
)
@ -26,7 +27,7 @@ func NewCreateCommand() cli.Command {
}
func newCreateCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &createCommand{env: env})
return serverutil.AdaptCommand(env, &createCommand{env: env})
}
type createCommand struct {
@ -52,7 +53,7 @@ func (c *createCommand) AppendFlags(f *flag.FlagSet) {
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, c.prettyPrintCreate)
}
func (c *createCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
func (c *createCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient serverutil.ServerClient) error {
federationRelationships, err := getRelationships(c.config, c.path)
if err != nil {
return err
@ -101,7 +102,7 @@ func (c *createCommand) prettyPrintCreate(env *commoncli.Env, results ...any) er
for _, r := range failed {
env.Println()
env.ErrPrintf("Failed to create the following federation relationship (code: %s, msg: %q):\n",
codes.Code(r.Status.Code),
util.MustCast[codes.Code](r.Status.Code),
r.Status.Message)
printFederationRelationship(r.FederationRelationship, env.ErrPrintf)
}

View File

@ -9,9 +9,10 @@ import (
"github.com/mitchellh/cli"
trustdomainv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/trustdomain/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/util"
serverutil "github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
"github.com/spiffe/spire/pkg/common/util"
"google.golang.org/grpc/codes"
)
@ -21,7 +22,7 @@ func NewUpdateCommand() cli.Command {
}
func newUpdateCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &updateCommand{env: env})
return serverutil.AdaptCommand(env, &updateCommand{env: env})
}
type updateCommand struct {
@ -47,7 +48,7 @@ func (c *updateCommand) AppendFlags(f *flag.FlagSet) {
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, c.prettyPrintUpdate)
}
func (c *updateCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
func (c *updateCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient serverutil.ServerClient) error {
federationRelationships, err := getRelationships(c.config, c.path)
if err != nil {
return err
@ -97,7 +98,7 @@ func (c *updateCommand) prettyPrintUpdate(env *commoncli.Env, results ...any) er
for _, r := range failed {
env.Println()
env.ErrPrintf("Failed to update the following federation relationship (code: %s, msg: %q):\n",
codes.Code(r.Status.Code),
util.MustCast[codes.Code](r.Status.Code),
r.Status.Message)
printFederationRelationship(r.FederationRelationship, env.ErrPrintf)
}

View File

@ -6,8 +6,8 @@ import (
"testing"
"github.com/mitchellh/cli"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
common_cli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/spiretest"
"github.com/stretchr/testify/suite"
"google.golang.org/grpc"
@ -58,24 +58,24 @@ func (s *HealthCheckSuite) TestBadFlags() {
}
func (s *HealthCheckSuite) TestFailsIfEndpointDoesNotExist() {
code := s.cmd.Run([]string{common.AddrArg, common.AddrValue})
code := s.cmd.Run([]string{clitest.AddrArg, clitest.AddrValue})
s.NotEqual(0, code, "exit code")
s.Equal("", s.stdout.String(), "stdout")
spiretest.AssertHasPrefix(s.T(), s.stderr.String(), common.AddrError)
spiretest.AssertHasPrefix(s.T(), s.stderr.String(), "Error: server is unhealthy: unable to determine health\n")
}
func (s *HealthCheckSuite) TestFailsIfEndpointDoesNotExistVerbose() {
code := s.cmd.Run([]string{common.AddrArg, common.AddrValue, "-verbose"})
code := s.cmd.Run([]string{clitest.AddrArg, clitest.AddrValue, "-verbose"})
s.NotEqual(0, code, "exit code")
s.Equal("", s.stdout.String(), "stdout")
spiretest.AssertHasPrefix(s.T(), s.stderr.String(), common.AddrError)
s.Equal("Checking server health...\n", s.stdout.String(), "stdout")
spiretest.AssertHasPrefix(s.T(), s.stderr.String(), "Failed to check health: "+clitest.AddrError)
}
func (s *HealthCheckSuite) TestSucceedsIfServingStatusServing() {
addr := spiretest.StartGRPCServer(s.T(), func(srv *grpc.Server) {
grpc_health_v1.RegisterHealthServer(srv, withStatus(grpc_health_v1.HealthCheckResponse_SERVING))
})
code := s.cmd.Run([]string{common.AddrArg, common.GetAddr(addr)})
code := s.cmd.Run([]string{clitest.AddrArg, clitest.GetAddr(addr)})
s.Equal(0, code, "exit code")
s.Equal("Server is healthy.\n", s.stdout.String(), "stdout")
s.Equal("", s.stderr.String(), "stderr")
@ -85,7 +85,7 @@ func (s *HealthCheckSuite) TestSucceedsIfServingStatusServingVerbose() {
addr := spiretest.StartGRPCServer(s.T(), func(srv *grpc.Server) {
grpc_health_v1.RegisterHealthServer(srv, withStatus(grpc_health_v1.HealthCheckResponse_SERVING))
})
code := s.cmd.Run([]string{common.AddrArg, common.GetAddr(addr), "-verbose"})
code := s.cmd.Run([]string{clitest.AddrArg, clitest.GetAddr(addr), "-verbose"})
s.Equal(0, code, "exit code")
s.Equal(`Checking server health...
Server is healthy.
@ -97,7 +97,7 @@ func (s *HealthCheckSuite) TestFailsIfServiceStatusOther() {
addr := spiretest.StartGRPCServer(s.T(), func(srv *grpc.Server) {
grpc_health_v1.RegisterHealthServer(srv, withStatus(grpc_health_v1.HealthCheckResponse_NOT_SERVING))
})
code := s.cmd.Run([]string{common.AddrArg, common.GetAddr(addr), "-verbose"})
code := s.cmd.Run([]string{clitest.AddrArg, clitest.GetAddr(addr), "-verbose"})
s.NotEqual(0, code, "exit code")
s.Equal(`Checking server health...
`, s.stdout.String(), "stdout")

View File

@ -12,11 +12,12 @@ import (
"github.com/spiffe/go-spiffe/v2/spiffeid"
svidv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/svid/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/util"
serverutil "github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
"github.com/spiffe/spire/pkg/common/diskutil"
"github.com/spiffe/spire/pkg/common/jwtsvid"
"github.com/spiffe/spire/pkg/common/util"
)
func NewMintCommand() cli.Command {
@ -24,7 +25,7 @@ func NewMintCommand() cli.Command {
}
func newMintCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &mintCommand{env: env})
return serverutil.AdaptCommand(env, &mintCommand{env: env})
}
type mintCommand struct {
@ -52,7 +53,7 @@ func (c *mintCommand) AppendFlags(fs *flag.FlagSet) {
cliprinter.AppendFlagWithCustomPretty(&c.printer, fs, c.env, prettyPrintMint)
}
func (c *mintCommand) Run(ctx context.Context, env *commoncli.Env, serverClient util.ServerClient) error {
func (c *mintCommand) Run(ctx context.Context, env *commoncli.Env, serverClient serverutil.ServerClient) error {
if c.spiffeID == "" {
return errors.New("spiffeID must be specified")
}
@ -63,6 +64,10 @@ func (c *mintCommand) Run(ctx context.Context, env *commoncli.Env, serverClient
if err != nil {
return err
}
ttl, err := ttlToSeconds(c.ttl)
if err != nil {
return fmt.Errorf("invalid value for TTL: %w", err)
}
client := serverClient.NewSVIDClient()
resp, err := client.MintJWTSVID(ctx, &svidv1.MintJWTSVIDRequest{
@ -70,7 +75,7 @@ func (c *mintCommand) Run(ctx context.Context, env *commoncli.Env, serverClient
TrustDomain: spiffeID.TrustDomain().Name(),
Path: spiffeID.Path(),
},
Ttl: ttlToSeconds(c.ttl),
Ttl: ttl,
Audience: c.audience,
})
if err != nil {
@ -132,8 +137,8 @@ func getJWTSVIDEndOfLife(token string) (time.Time, error) {
// ttlToSeconds returns the number of seconds in a duration, rounded up to
// the nearest second
func ttlToSeconds(ttl time.Duration) int32 {
return int32((ttl + time.Second - 1) / time.Second)
func ttlToSeconds(ttl time.Duration) (int32, error) {
return util.CheckedCast[int32]((ttl + time.Second - 1) / time.Second)
}
func prettyPrintMint(env *commoncli.Env, results ...any) error {

View File

@ -16,9 +16,9 @@ import (
"github.com/go-jose/go-jose/v4/jwt"
svidv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/svid/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
common_cli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/pemutil"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/spiretest"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
@ -35,7 +35,7 @@ qNV3lKIL59N7G2B4ojbhfSNneSIIpP448uPxUnaunaQZ+/m7+x9oobIp
availableFormats = []string{"pretty", "json"}
expectedUsage = `Usage of jwt mint:
-audience value
Audience claim that will be included in the SVID. Can be used more than once.` + common.AddrOutputUsage +
Audience claim that will be included in the SVID. Can be used more than once.` + clitest.AddrOutputUsage +
` -spiffeID string
SPIFFE ID of the JWT-SVID
-ttl duration
@ -325,7 +325,7 @@ func TestMintRun(t *testing.T) {
BaseDir: dir,
})
args := []string{common.AddrArg, common.GetAddr(addr)}
args := []string{clitest.AddrArg, clitest.GetAddr(addr)}
if tt.spiffeID != "" {
args = append(args, "-spiffeID", tt.spiffeID)
}

View File

@ -0,0 +1,86 @@
package jwt
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewJWTActivateCommand creates a new "jwt activate" subcommand for "localauthority" command.
func NewJWTActivateCommand() cli.Command {
return NewJWTActivateCommandWithEnv(commoncli.DefaultEnv)
}
// NewJWTActivateCommandWithEnv creates a new "jwt activate" subcommand for "localauthority" command
// using the environment specified
func NewJWTActivateCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &jwtActivateCommand{env: env})
}
type jwtActivateCommand struct {
authorityID string
printer cliprinter.Printer
env *commoncli.Env
}
func (c *jwtActivateCommand) Name() string {
return "localauthority jwt activate"
}
func (*jwtActivateCommand) Synopsis() string {
return "Activates a prepared JWT authority for use, which will cause it to be used for all JWT signing operations serviced by this server going forward"
}
func (c *jwtActivateCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.authorityID, "authorityID", "", "The authority ID of the JWT authority to activate")
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintJWTActivate)
}
// Run executes all logic associated with a single invocation of the
// `spire-server localauthority jwt activate` CLI command
func (c *jwtActivateCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
client := serverClient.NewLocalAuthorityClient()
resp, err := client.ActivateJWTAuthority(ctx, &localauthorityv1.ActivateJWTAuthorityRequest{
AuthorityId: c.authorityID,
})
if err != nil {
return fmt.Errorf("could not activate JWT authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func (c *jwtActivateCommand) validate() error {
if c.authorityID == "" {
return errors.New("an authority ID is required")
}
return nil
}
func prettyPrintJWTActivate(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.ActivateJWTAuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Activated JWT authority:")
if r.ActivatedAuthority == nil {
return errors.New("internal error: expected to have activated JWT authority information")
}
authoritycommon.PrettyPrintJWTAuthorityState(env, r.ActivatedAuthority)
return nil
}

View File

@ -0,0 +1,14 @@
//go:build !windows
package jwt_test
var (
jwtActivateUsage = `Usage of localauthority jwt activate:
-authorityID string
The authority ID of the JWT authority to activate
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
`
)

View File

@ -0,0 +1,92 @@
package jwt_test
import (
"fmt"
"testing"
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/jwt"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestJWTActivateHelp(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTActivateCommandWithEnv)
test.Client.Help()
require.Equal(t, jwtActivateUsage, test.Stderr.String())
}
func TestJWTActivateSynopsys(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTActivateCommandWithEnv)
require.Equal(t, "Activates a prepared JWT authority for use, which will cause it to be used for all JWT signing operations serviced by this server going forward", test.Client.Synopsis())
}
func TestJWTActivate(t *testing.T) {
for _, tt := range []struct {
name string
args []string
expectReturnCode int
expectStdoutPretty string
expectStdoutJSON string
expectStderr string
serverErr error
active, prepared *localauthorityv1.AuthorityState
}{
{
name: "success",
expectReturnCode: 0,
args: []string{"-authorityID", "prepared-id"},
active: &localauthorityv1.AuthorityState{
AuthorityId: "active-id",
ExpiresAt: 1001,
},
prepared: &localauthorityv1.AuthorityState{
AuthorityId: "prepared-id",
ExpiresAt: 1002,
},
expectStdoutPretty: "Activated JWT authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n",
expectStdoutJSON: `{"activated_authority":{"authority_id":"active-id","expires_at":"1001","upstream_authority_subject_key_id":""}}`,
},
{
name: "no authority id",
expectReturnCode: 1,
expectStderr: "Error: an authority ID is required\n",
},
{
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-authorityID", "prepared-id",
},
expectReturnCode: 1,
expectStderr: "Error: could not activate JWT authority: " + clitest.AddrError,
},
{
name: "server error",
args: []string{"-authorityID", "prepared-id"},
serverErr: status.Error(codes.Internal, "internal server error"),
expectReturnCode: 1,
expectStderr: "Error: could not activate JWT authority: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTActivateCommandWithEnv)
test.Server.ActiveJWT = tt.active
test.Server.Err = tt.serverErr
args := tt.args
args = append(args, "-output", format)
returnCode := test.Client.Run(append(test.Args, args...))
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})
}
}
}

View File

@ -0,0 +1,14 @@
//go:build windows
package jwt_test
var (
jwtActivateUsage = `Usage of localauthority jwt activate:
-authorityID string
The authority ID of the JWT authority to activate
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
)

View File

@ -0,0 +1,70 @@
package jwt
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewJWTPrepareCommand creates a new "jwt prepare" subcommand for "localauthority" command.
func NewJWTPrepareCommand() cli.Command {
return NewJWTPrepareCommandWithEnv(commoncli.DefaultEnv)
}
// NewJWTPrepareCommandWithEnv creates a new "jwt prepare" subcommand for "localauthority" command
// using the environment specified
func NewJWTPrepareCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &jwtPrepareCommand{env: env})
}
type jwtPrepareCommand struct {
printer cliprinter.Printer
env *commoncli.Env
}
func (c *jwtPrepareCommand) Name() string {
return "localauthority jwt prepare"
}
func (*jwtPrepareCommand) Synopsis() string {
return "Prepares a new JWT authority for use by generating a new key and injecting it into the bundle"
}
func (c *jwtPrepareCommand) AppendFlags(f *flag.FlagSet) {
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintJWTPrepare)
}
// Run executes all logic associated with a single invocation of the
// `spire-server localauthority jwt prepare` CLI command
func (c *jwtPrepareCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
client := serverClient.NewLocalAuthorityClient()
resp, err := client.PrepareJWTAuthority(ctx, &localauthorityv1.PrepareJWTAuthorityRequest{})
if err != nil {
return fmt.Errorf("could not prepare JWT authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func prettyPrintJWTPrepare(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.PrepareJWTAuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Prepared JWT authority:")
if r.PreparedAuthority == nil {
return errors.New("internal error: expected to have prepared JWT authority information")
}
authoritycommon.PrettyPrintJWTAuthorityState(env, r.PreparedAuthority)
return nil
}

View File

@ -0,0 +1,12 @@
//go:build !windows
package jwt_test
var (
jwtPrepareUsage = `Usage of localauthority jwt prepare:
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
`
)

View File

@ -0,0 +1,78 @@
package jwt_test
import (
"fmt"
"testing"
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/jwt"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestJWTPrepareHelp(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTPrepareCommandWithEnv)
test.Client.Help()
require.Equal(t, jwtPrepareUsage, test.Stderr.String())
}
func TestJWTPrepareSynopsys(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTPrepareCommandWithEnv)
require.Equal(t, "Prepares a new JWT authority for use by generating a new key and injecting it into the bundle", test.Client.Synopsis())
}
func TestJWTPrepare(t *testing.T) {
for _, tt := range []struct {
name string
args []string
expectReturnCode int
expectStdoutPretty string
expectStdoutJSON string
expectStderr string
serverErr error
prepared *localauthorityv1.AuthorityState
}{
{
name: "success",
expectReturnCode: 0,
expectStdoutPretty: "Prepared JWT authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n",
expectStdoutJSON: `{"prepared_authority":{"authority_id":"prepared-id","expires_at":"1002","upstream_authority_subject_key_id":""}}`,
prepared: &localauthorityv1.AuthorityState{
AuthorityId: "prepared-id",
ExpiresAt: 1002,
},
},
{
name: "wrong UDS path",
args: []string{clitest.AddrArg, clitest.AddrValue},
expectReturnCode: 1,
expectStderr: "Error: could not prepare JWT authority: " + clitest.AddrError,
},
{
name: "server error",
serverErr: status.Error(codes.Internal, "internal server error"),
expectReturnCode: 1,
expectStderr: "Error: could not prepare JWT authority: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTPrepareCommandWithEnv)
test.Server.PreparedJWT = tt.prepared
test.Server.Err = tt.serverErr
args := tt.args
args = append(args, "-output", format)
returnCode := test.Client.Run(append(test.Args, args...))
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})
}
}
}

View File

@ -0,0 +1,12 @@
//go:build windows
package jwt_test
var (
jwtPrepareUsage = `Usage of localauthority jwt prepare:
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
)

View File

@ -0,0 +1,86 @@
package jwt
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewJWTActivateCommand creates a new "jwt revoke" subcommand for "localauthority" command.
func NewJWTRevokeCommand() cli.Command {
return NewJWTRevokeCommandWithEnv(commoncli.DefaultEnv)
}
// NewJWTActivateCommandWithEnv creates a new "jwt revoke" subcommand for "localauthority" command
// using the environment specified
func NewJWTRevokeCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &jwtRevokeCommand{env: env})
}
type jwtRevokeCommand struct {
authorityID string
printer cliprinter.Printer
env *commoncli.Env
}
func (c *jwtRevokeCommand) Name() string {
return "localauthority jwt revoke"
}
func (*jwtRevokeCommand) Synopsis() string {
return "Revokes the previously active JWT authority by removing it from the bundle and propagating this update throughout the cluster"
}
func (c *jwtRevokeCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.authorityID, "authorityID", "", "The authority ID of the JWT authority to revoke")
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintJWTRevoke)
}
// Run executes all logic associated with a single invocation of the
// `spire-server localauthority jwt revoke` CLI command
func (c *jwtRevokeCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
client := serverClient.NewLocalAuthorityClient()
resp, err := client.RevokeJWTAuthority(ctx, &localauthorityv1.RevokeJWTAuthorityRequest{
AuthorityId: c.authorityID,
})
if err != nil {
return fmt.Errorf("could not revoke JWT authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func (c *jwtRevokeCommand) validate() error {
if c.authorityID == "" {
return errors.New("an authority ID is required")
}
return nil
}
func prettyPrintJWTRevoke(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.RevokeJWTAuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Revoked JWT authority:")
if r.RevokedAuthority == nil {
return errors.New("internal error: expected to have revoked JWT authority information")
}
authoritycommon.PrettyPrintJWTAuthorityState(env, r.RevokedAuthority)
return nil
}

View File

@ -0,0 +1,14 @@
//go:build !windows
package jwt_test
var (
jwtRevokeUsage = `Usage of localauthority jwt revoke:
-authorityID string
The authority ID of the JWT authority to revoke
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
`
)

View File

@ -0,0 +1,88 @@
package jwt_test
import (
"fmt"
"testing"
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/jwt"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestJWTRevokeHelp(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTRevokeCommandWithEnv)
test.Client.Help()
require.Equal(t, jwtRevokeUsage, test.Stderr.String())
}
func TestJWTRevokeSynopsys(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTRevokeCommandWithEnv)
require.Equal(t, "Revokes the previously active JWT authority by removing it from the bundle and propagating this update throughout the cluster", test.Client.Synopsis())
}
func TestJWTRevoke(t *testing.T) {
for _, tt := range []struct {
name string
args []string
expectReturnCode int
expectStdoutPretty string
expectStdoutJSON string
expectStderr string
serverErr error
revoked *localauthorityv1.AuthorityState
}{
{
name: "success",
expectReturnCode: 0,
args: []string{"-authorityID", "prepared-id"},
revoked: &localauthorityv1.AuthorityState{
AuthorityId: "revoked-id",
ExpiresAt: 1001,
},
expectStdoutPretty: "Revoked JWT authority:\n Authority ID: revoked-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n",
expectStdoutJSON: `{"revoked_authority":{"authority_id":"revoked-id","expires_at":"1001","upstream_authority_subject_key_id":""}}`,
},
{
name: "no authority id",
expectReturnCode: 1,
expectStderr: "Error: an authority ID is required\n",
},
{
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-authorityID", "prepared-id",
},
expectReturnCode: 1,
expectStderr: "Error: could not revoke JWT authority: " + clitest.AddrError,
},
{
name: "server error",
args: []string{"-authorityID", "tainted-id"},
serverErr: status.Error(codes.Internal, "internal server error"),
expectReturnCode: 1,
expectStderr: "Error: could not revoke JWT authority: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTRevokeCommandWithEnv)
test.Server.RevokedJWT = tt.revoked
test.Server.Err = tt.serverErr
args := tt.args
args = append(args, "-output", format)
returnCode := test.Client.Run(append(test.Args, args...))
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})
}
}
}

View File

@ -0,0 +1,14 @@
//go:build windows
package jwt_test
var (
jwtRevokeUsage = `Usage of localauthority jwt revoke:
-authorityID string
The authority ID of the JWT authority to revoke
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
)

View File

@ -4,10 +4,10 @@ import (
"context"
"errors"
"flag"
"time"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
@ -62,24 +62,21 @@ func prettyPrintJWTShow(env *commoncli.Env, results ...any) error {
env.Println("Active JWT authority:")
if r.Active != nil {
env.Printf(" Authority ID: %s\n", r.Active.AuthorityId)
env.Printf(" Expires at: %s\n", time.Unix(r.Active.ExpiresAt, 0).UTC())
authoritycommon.PrettyPrintJWTAuthorityState(env, r.Active)
} else {
env.Println(" No active JWT authority found")
}
env.Println()
env.Println("Prepared JWT authority:")
if r.Prepared != nil {
env.Printf(" Authority ID: %s\n", r.Prepared.AuthorityId)
env.Printf(" Expires at: %s\n", time.Unix(r.Prepared.ExpiresAt, 0).UTC())
authoritycommon.PrettyPrintJWTAuthorityState(env, r.Prepared)
} else {
env.Println(" No prepared JWT authority found")
}
env.Println()
env.Println("Old JWT authority:")
if r.Old != nil {
env.Printf(" Authority ID: %s\n", r.Old.AuthorityId)
env.Printf(" Expires at: %s\n", time.Unix(r.Old.ExpiresAt, 0).UTC())
authoritycommon.PrettyPrintJWTAuthorityState(env, r.Old)
} else {
env.Println(" No old JWT authority found")
}

View File

@ -6,22 +6,22 @@ import (
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authority_common "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/jwt"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestJWTShowHelp(t *testing.T) {
test := authority_common.SetupTest(t, jwt.NewJWTShowCommandWithEnv)
test := authoritycommon_test.SetupTest(t, jwt.NewJWTShowCommandWithEnv)
test.Client.Help()
require.Equal(t, jwtShowUsage, test.Stderr.String())
}
func TestJWTShowSynopsys(t *testing.T) {
test := authority_common.SetupTest(t, jwt.NewJWTShowCommandWithEnv)
test := authoritycommon_test.SetupTest(t, jwt.NewJWTShowCommandWithEnv)
require.Equal(t, "Shows the local JWT authorities", test.Client.Synopsis())
}
@ -55,7 +55,7 @@ func TestJWTShow(t *testing.T) {
ExpiresAt: 1003,
},
expectStdoutPretty: "Active JWT authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n\nPrepared JWT authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n\nOld JWT authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001"},"prepared":{"authority_id":"prepared-id","expires_at":"1002"},"old":{"authority_id":"old-id","expires_at":"1003"}}`,
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001","upstream_authority_subject_key_id":""},"prepared":{"authority_id":"prepared-id","expires_at":"1002","upstream_authority_subject_key_id":""},"old":{"authority_id":"old-id","expires_at":"1003","upstream_authority_subject_key_id":""}}`,
},
{
name: "success - no active",
@ -69,7 +69,7 @@ func TestJWTShow(t *testing.T) {
ExpiresAt: 1003,
},
expectStdoutPretty: "Active JWT authority:\n No active JWT authority found\n\nPrepared JWT authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n\nOld JWT authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n",
expectStdoutJSON: `{"prepared":{"authority_id":"prepared-id","expires_at":"1002"},"old":{"authority_id":"old-id","expires_at":"1003"}}`,
expectStdoutJSON: `{"prepared":{"authority_id":"prepared-id","expires_at":"1002","upstream_authority_subject_key_id":""},"old":{"authority_id":"old-id","expires_at":"1003","upstream_authority_subject_key_id":""}}`,
},
{
name: "success - no prepared",
@ -83,7 +83,7 @@ func TestJWTShow(t *testing.T) {
ExpiresAt: 1003,
},
expectStdoutPretty: "Active JWT authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n\nPrepared JWT authority:\n No prepared JWT authority found\n\nOld JWT authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001"},"old":{"authority_id":"old-id","expires_at":"1003"}}`,
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001","upstream_authority_subject_key_id":""},"old":{"authority_id":"old-id","expires_at":"1003","upstream_authority_subject_key_id":""}}`,
},
{
name: "success - no old",
@ -97,13 +97,13 @@ func TestJWTShow(t *testing.T) {
ExpiresAt: 1002,
},
expectStdoutPretty: "Active JWT authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n\nPrepared JWT authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n\nOld JWT authority:\n No old JWT authority found\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001"},"prepared":{"authority_id":"prepared-id","expires_at":"1002"}}`,
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001","upstream_authority_subject_key_id":""},"prepared":{"authority_id":"prepared-id","expires_at":"1002","upstream_authority_subject_key_id":""}}`,
},
{
name: "wrong UDS path",
args: []string{common.AddrArg, common.AddrValue},
args: []string{clitest.AddrArg, clitest.AddrValue},
expectReturnCode: 1,
expectStderr: common.AddrError,
expectStderr: "Error: " + clitest.AddrError,
},
{
name: "server error",
@ -112,9 +112,9 @@ func TestJWTShow(t *testing.T) {
expectStderr: "Error: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authority_common.AvailableFormats {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authority_common.SetupTest(t, jwt.NewJWTShowCommandWithEnv)
test := authoritycommon_test.SetupTest(t, jwt.NewJWTShowCommandWithEnv)
test.Server.ActiveJWT = tt.active
test.Server.PreparedJWT = tt.prepared
test.Server.OldJWT = tt.old
@ -124,7 +124,7 @@ func TestJWTShow(t *testing.T) {
returnCode := test.Client.Run(append(test.Args, args...))
authority_common.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})

View File

@ -0,0 +1,90 @@
package jwt
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewJWTTaintCommand creates a new "jwt taint" subcommand for "localauthority" command.
func NewJWTTaintCommand() cli.Command {
return newJWTTaintCommand(commoncli.DefaultEnv)
}
// NewJWTTaintCommandWithEnv creates a new "jwt taint" subcommand for "localauthority" command
// using the environment specified
func NewJWTTaintCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &jwtTaintCommand{env: env})
}
func newJWTTaintCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &jwtTaintCommand{env: env})
}
type jwtTaintCommand struct {
authorityID string
printer cliprinter.Printer
env *commoncli.Env
}
func (c *jwtTaintCommand) Name() string {
return "localauthority jwt taint"
}
func (*jwtTaintCommand) Synopsis() string {
return "Marks the previously active JWT authority as being tainted"
}
func (c *jwtTaintCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.authorityID, "authorityID", "", "The authority ID of the JWT authority to taint")
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintJWTTaint)
}
// Run executes all logic associated with a single invocation of the
// `spire-server localauthority jwt taint` CLI command
func (c *jwtTaintCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
client := serverClient.NewLocalAuthorityClient()
resp, err := client.TaintJWTAuthority(ctx, &localauthorityv1.TaintJWTAuthorityRequest{
AuthorityId: c.authorityID,
})
if err != nil {
return fmt.Errorf("could not taint JWT authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func prettyPrintJWTTaint(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.TaintJWTAuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Tainted JWT authority:")
if r.TaintedAuthority == nil {
return errors.New("internal error: expected to have tainted JWT authority information")
}
authoritycommon.PrettyPrintJWTAuthorityState(env, r.TaintedAuthority)
return nil
}
func (c *jwtTaintCommand) validate() error {
if c.authorityID == "" {
return errors.New("an authority ID is required")
}
return nil
}

View File

@ -0,0 +1,14 @@
//go:build !windows
package jwt_test
var (
jwtTaintUsage = `Usage of localauthority jwt taint:
-authorityID string
The authority ID of the JWT authority to taint
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
`
)

View File

@ -0,0 +1,88 @@
package jwt_test
import (
"fmt"
"testing"
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/jwt"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestJWTTaintHelp(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTTaintCommandWithEnv)
test.Client.Help()
require.Equal(t, jwtTaintUsage, test.Stderr.String())
}
func TestJWTTaintSynopsys(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTTaintCommandWithEnv)
require.Equal(t, "Marks the previously active JWT authority as being tainted", test.Client.Synopsis())
}
func TestJWTTaint(t *testing.T) {
for _, tt := range []struct {
name string
args []string
expectReturnCode int
expectStdoutPretty string
expectStdoutJSON string
expectStderr string
serverErr error
tainted *localauthorityv1.AuthorityState
}{
{
name: "success",
expectReturnCode: 0,
args: []string{"-authorityID", "prepared-id"},
tainted: &localauthorityv1.AuthorityState{
AuthorityId: "tainted-id",
ExpiresAt: 1001,
},
expectStdoutPretty: "Tainted JWT authority:\n Authority ID: tainted-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n",
expectStdoutJSON: `{"tainted_authority":{"authority_id":"tainted-id","expires_at":"1001","upstream_authority_subject_key_id":""}}`,
},
{
name: "no authority id",
expectReturnCode: 1,
expectStderr: "Error: an authority ID is required\n",
},
{
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-authorityID", "prepared-id",
},
expectReturnCode: 1,
expectStderr: "Error: could not taint JWT authority: " + clitest.AddrError,
},
{
name: "server error",
args: []string{"-authorityID", "old-id"},
serverErr: status.Error(codes.Internal, "internal server error"),
expectReturnCode: 1,
expectStderr: "Error: could not taint JWT authority: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authoritycommon_test.SetupTest(t, jwt.NewJWTTaintCommandWithEnv)
test.Server.TaintedJWT = tt.tainted
test.Server.Err = tt.serverErr
args := tt.args
args = append(args, "-output", format)
returnCode := test.Client.Run(append(test.Args, args...))
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})
}
}
}

View File

@ -0,0 +1,14 @@
//go:build windows
package jwt_test
var (
jwtTaintUsage = `Usage of localauthority jwt taint:
-authorityID string
The authority ID of the JWT authority to taint
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
)

View File

@ -0,0 +1,87 @@
package x509
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewX509ActivateCommand creates a new "x509 activate" subcommand for "localauthority" command.
func NewX509ActivateCommand() cli.Command {
return NewX509ActivateCommandWithEnv(commoncli.DefaultEnv)
}
// NewX509ActivateCommandWithEnv creates a new "x509 activate" subcommand for "localauthority" command
// using the environment specified
func NewX509ActivateCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &x509ActivateCommand{env: env})
}
type x509ActivateCommand struct {
authorityID string
printer cliprinter.Printer
env *commoncli.Env
}
func (c *x509ActivateCommand) Name() string {
return "localauthority x509 activate"
}
func (*x509ActivateCommand) Synopsis() string {
return "Activates a prepared X.509 authority for use, which will cause it to be used for all X.509 signing operations serviced by this server going forward"
}
func (c *x509ActivateCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.authorityID, "authorityID", "", "The authority ID of the X.509 authority to activate")
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintX509Activate)
}
// Run executes all logic associated with a single invocation of the
// `spire-server localauthority x509 activate` CLI command
func (c *x509ActivateCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
client := serverClient.NewLocalAuthorityClient()
resp, err := client.ActivateX509Authority(ctx, &localauthorityv1.ActivateX509AuthorityRequest{
AuthorityId: c.authorityID,
})
if err != nil {
return fmt.Errorf("could not activate X.509 authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func (c *x509ActivateCommand) validate() error {
if c.authorityID == "" {
return errors.New("an authority ID is required")
}
return nil
}
func prettyPrintX509Activate(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.ActivateX509AuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Activated X.509 authority:")
if r.ActivatedAuthority == nil {
return errors.New("internal error: expected to have activated X.509 authority information")
}
authoritycommon.PrettyPrintX509AuthorityState(env, r.ActivatedAuthority)
return nil
}

View File

@ -0,0 +1,14 @@
//go:build !windows
package x509_test
var (
x509ActivateUsage = `Usage of localauthority x509 activate:
-authorityID string
The authority ID of the X.509 authority to activate
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
`
)

View File

@ -0,0 +1,94 @@
package x509_test
import (
"fmt"
"testing"
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/x509"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestX509ActivateHelp(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509ActivateCommandWithEnv)
test.Client.Help()
require.Equal(t, x509ActivateUsage, test.Stderr.String())
}
func TestX509ActivateSynopsys(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509ActivateCommandWithEnv)
require.Equal(t, "Activates a prepared X.509 authority for use, which will cause it to be used for all X.509 signing operations serviced by this server going forward", test.Client.Synopsis())
}
func TestX509Activate(t *testing.T) {
for _, tt := range []struct {
name string
args []string
expectReturnCode int
expectStdoutPretty string
expectStdoutJSON string
expectStderr string
serverErr error
active, prepared *localauthorityv1.AuthorityState
}{
{
name: "success",
expectReturnCode: 0,
args: []string{"-authorityID", "prepared-id"},
active: &localauthorityv1.AuthorityState{
AuthorityId: "active-id",
ExpiresAt: 1001,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
prepared: &localauthorityv1.AuthorityState{
AuthorityId: "prepared-id",
ExpiresAt: 1002,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
expectStdoutPretty: "Activated X.509 authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id",
expectStdoutJSON: `{"activated_authority":{"authority_id":"active-id","expires_at":"1001","upstream_authority_subject_key_id":"some-subject-key-id"}}`,
},
{
name: "no authority id",
expectReturnCode: 1,
expectStderr: "Error: an authority ID is required\n",
},
{
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-authorityID", "prepared-id",
},
expectReturnCode: 1,
expectStderr: "Error: could not activate X.509 authority: " + clitest.AddrError,
},
{
name: "server error",
args: []string{"-authorityID", "prepared-id"},
serverErr: status.Error(codes.Internal, "internal server error"),
expectReturnCode: 1,
expectStderr: "Error: could not activate X.509 authority: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509ActivateCommandWithEnv)
test.Server.ActiveX509 = tt.active
test.Server.Err = tt.serverErr
args := tt.args
args = append(args, "-output", format)
returnCode := test.Client.Run(append(test.Args, args...))
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})
}
}
}

View File

@ -0,0 +1,14 @@
//go:build windows
package x509_test
var (
x509ActivateUsage = `Usage of localauthority x509 activate:
-authorityID string
The authority ID of the X.509 authority to activate
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
)

View File

@ -0,0 +1,71 @@
package x509
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewX509PrepareCommand creates a new "x509 prepare" subcommand for "localauthority" command.
func NewX509PrepareCommand() cli.Command {
return NewX509PrepareCommandWithEnv(commoncli.DefaultEnv)
}
// NewX509PrepareCommandWithEnv creates a new "x509 prepare" subcommand for "localauthority" command
// using the environment specified
func NewX509PrepareCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &x509PrepareCommand{env: env})
}
type x509PrepareCommand struct {
printer cliprinter.Printer
env *commoncli.Env
}
func (c *x509PrepareCommand) Name() string {
return "localauthority x509 prepare"
}
func (*x509PrepareCommand) Synopsis() string {
return "Prepares a new X.509 authority for use by generating a new key and injecting the resulting CA certificate into the bundle"
}
func (c *x509PrepareCommand) AppendFlags(f *flag.FlagSet) {
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintX509Prepare)
}
// Run executes all logic associated with a single invocation of the
// `spire-server localauthority x509 prepare` CLI command
func (c *x509PrepareCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
client := serverClient.NewLocalAuthorityClient()
resp, err := client.PrepareX509Authority(ctx, &localauthorityv1.PrepareX509AuthorityRequest{})
if err != nil {
return fmt.Errorf("could not prepare X.509 authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func prettyPrintX509Prepare(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.PrepareX509AuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Prepared X.509 authority:")
if r.PreparedAuthority == nil {
return errors.New("internal error: expected to have prepared X.509 authority information")
}
authoritycommon.PrettyPrintX509AuthorityState(env, r.PreparedAuthority)
return nil
}

View File

@ -0,0 +1,12 @@
//go:build !windows
package x509_test
var (
x509PrepareUsage = `Usage of localauthority x509 prepare:
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
`
)

View File

@ -0,0 +1,79 @@
package x509_test
import (
"fmt"
"testing"
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/x509"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestX509PrepareHelp(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509PrepareCommandWithEnv)
test.Client.Help()
require.Equal(t, x509PrepareUsage, test.Stderr.String())
}
func TestX509PrepareSynopsys(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509PrepareCommandWithEnv)
require.Equal(t, "Prepares a new X.509 authority for use by generating a new key and injecting the resulting CA certificate into the bundle", test.Client.Synopsis())
}
func TestX509Prepare(t *testing.T) {
for _, tt := range []struct {
name string
args []string
expectReturnCode int
expectStdoutPretty string
expectStdoutJSON string
expectStderr string
serverErr error
prepared *localauthorityv1.AuthorityState
}{
{
name: "success",
expectReturnCode: 0,
expectStdoutPretty: "Prepared X.509 authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id",
expectStdoutJSON: `{"prepared_authority":{"authority_id":"prepared-id","expires_at":"1002","upstream_authority_subject_key_id":"some-subject-key-id"}}`,
prepared: &localauthorityv1.AuthorityState{
AuthorityId: "prepared-id",
ExpiresAt: 1002,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
},
{
name: "wrong UDS path",
args: []string{clitest.AddrArg, clitest.AddrValue},
expectReturnCode: 1,
expectStderr: "Error: could not prepare X.509 authority: " + clitest.AddrError,
},
{
name: "server error",
serverErr: status.Error(codes.Internal, "internal server error"),
expectReturnCode: 1,
expectStderr: "Error: could not prepare X.509 authority: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509PrepareCommandWithEnv)
test.Server.PreparedX509 = tt.prepared
test.Server.Err = tt.serverErr
args := tt.args
args = append(args, "-output", format)
returnCode := test.Client.Run(append(test.Args, args...))
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})
}
}
}

View File

@ -0,0 +1,12 @@
//go:build windows
package x509_test
var (
x509PrepareUsage = `Usage of localauthority x509 prepare:
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
)

View File

@ -0,0 +1,87 @@
package x509
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewX509ActivateCommand creates a new "x509 revoke" subcommand for "localauthority" command.
func NewX509RevokeCommand() cli.Command {
return NewX509RevokeCommandWithEnv(commoncli.DefaultEnv)
}
// NewX509ActivateCommandWithEnv creates a new "x509 revoke" subcommand for "localauthority" command
// using the environment specified
func NewX509RevokeCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &x509RevokeCommand{env: env})
}
type x509RevokeCommand struct {
authorityID string
printer cliprinter.Printer
env *commoncli.Env
}
func (c *x509RevokeCommand) Name() string {
return "localauthority x509 revoke"
}
func (*x509RevokeCommand) Synopsis() string {
return "Revokes the previously active X.509 authority by removing it from the bundle and propagating this update throughout the cluster"
}
func (c *x509RevokeCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.authorityID, "authorityID", "", "The authority ID of the X.509 authority to revoke")
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintX509Revoke)
}
// Run executes all logic associated with a single invocation of the
// `spire-server localauthority x509 revoke` CLI command
func (c *x509RevokeCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
client := serverClient.NewLocalAuthorityClient()
resp, err := client.RevokeX509Authority(ctx, &localauthorityv1.RevokeX509AuthorityRequest{
AuthorityId: c.authorityID,
})
if err != nil {
return fmt.Errorf("could not revoke X.509 authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func (c *x509RevokeCommand) validate() error {
if c.authorityID == "" {
return errors.New("an authority ID is required")
}
return nil
}
func prettyPrintX509Revoke(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.RevokeX509AuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Revoked X.509 authority:")
if r.RevokedAuthority == nil {
return errors.New("internal error: expected to have revoked X.509 authority information")
}
authoritycommon.PrettyPrintX509AuthorityState(env, r.RevokedAuthority)
return nil
}

View File

@ -0,0 +1,14 @@
//go:build !windows
package x509_test
var (
x509RevokeUsage = `Usage of localauthority x509 revoke:
-authorityID string
The authority ID of the X.509 authority to revoke
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
`
)

View File

@ -0,0 +1,89 @@
package x509_test
import (
"fmt"
"testing"
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/x509"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestX509RevokeHelp(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509RevokeCommandWithEnv)
test.Client.Help()
require.Equal(t, x509RevokeUsage, test.Stderr.String())
}
func TestX509RevokeSynopsys(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509RevokeCommandWithEnv)
require.Equal(t, "Revokes the previously active X.509 authority by removing it from the bundle and propagating this update throughout the cluster", test.Client.Synopsis())
}
func TestX509Revoke(t *testing.T) {
for _, tt := range []struct {
name string
args []string
expectReturnCode int
expectStdoutPretty string
expectStdoutJSON string
expectStderr string
serverErr error
revoked *localauthorityv1.AuthorityState
}{
{
name: "success",
expectReturnCode: 0,
args: []string{"-authorityID", "prepared-id"},
revoked: &localauthorityv1.AuthorityState{
AuthorityId: "revoked-id",
ExpiresAt: 1001,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
expectStdoutPretty: "Revoked X.509 authority:\n Authority ID: revoked-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id",
expectStdoutJSON: `{"revoked_authority":{"authority_id":"revoked-id","expires_at":"1001","upstream_authority_subject_key_id":"some-subject-key-id"}}`,
},
{
name: "no authority id",
expectReturnCode: 1,
expectStderr: "Error: an authority ID is required\n",
},
{
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-authorityID", "prepared-id",
},
expectReturnCode: 1,
expectStderr: "Error: could not revoke X.509 authority: " + clitest.AddrError,
},
{
name: "server error",
args: []string{"-authorityID", "tainted-id"},
serverErr: status.Error(codes.Internal, "internal server error"),
expectReturnCode: 1,
expectStderr: "Error: could not revoke X.509 authority: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509RevokeCommandWithEnv)
test.Server.RevokedX509 = tt.revoked
test.Server.Err = tt.serverErr
args := tt.args
args = append(args, "-output", format)
returnCode := test.Client.Run(append(test.Args, args...))
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})
}
}
}

View File

@ -0,0 +1,14 @@
//go:build windows
package x509_test
var (
x509RevokeUsage = `Usage of localauthority x509 revoke:
-authorityID string
The authority ID of the X.509 authority to revoke
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
)

View File

@ -5,10 +5,10 @@ import (
"errors"
"flag"
"fmt"
"time"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
@ -63,24 +63,21 @@ func prettyPrintX509Show(env *commoncli.Env, results ...any) error {
env.Println("Active X.509 authority:")
if r.Active != nil {
env.Printf(" Authority ID: %s\n", r.Active.AuthorityId)
env.Printf(" Expires at: %s\n", time.Unix(r.Active.ExpiresAt, 0).UTC())
authoritycommon.PrettyPrintX509AuthorityState(env, r.Active)
} else {
env.Println(" No active X.509 authority found")
}
env.Println()
env.Println("Prepared X.509 authority:")
if r.Prepared != nil {
env.Printf(" Authority ID: %s\n", r.Prepared.AuthorityId)
env.Printf(" Expires at: %s\n", time.Unix(r.Prepared.ExpiresAt, 0).UTC())
authoritycommon.PrettyPrintX509AuthorityState(env, r.Prepared)
} else {
env.Println(" No prepared X.509 authority found")
}
env.Println()
env.Println("Old X.509 authority:")
if r.Old != nil {
env.Printf(" Authority ID: %s\n", r.Old.AuthorityId)
env.Printf(" Expires at: %s\n", time.Unix(r.Old.ExpiresAt, 0).UTC())
authoritycommon.PrettyPrintX509AuthorityState(env, r.Old)
} else {
env.Println(" No old X.509 authority found")
}

View File

@ -6,22 +6,22 @@ import (
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authority_common "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/x509"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestX509ShowHelp(t *testing.T) {
test := authority_common.SetupTest(t, x509.NewX509ShowCommandWithEnv)
test := authoritycommon_test.SetupTest(t, x509.NewX509ShowCommandWithEnv)
test.Client.Help()
require.Equal(t, x509ShowUsage, test.Stderr.String())
}
func TestX509ShowSynopsys(t *testing.T) {
test := authority_common.SetupTest(t, x509.NewX509ShowCommandWithEnv)
test := authoritycommon_test.SetupTest(t, x509.NewX509ShowCommandWithEnv)
require.Equal(t, "Shows the local X.509 authorities", test.Client.Synopsis())
}
@ -43,67 +43,76 @@ func TestX509Show(t *testing.T) {
name: "success",
expectReturnCode: 0,
active: &localauthorityv1.AuthorityState{
AuthorityId: "active-id",
ExpiresAt: 1001,
AuthorityId: "active-id",
ExpiresAt: 1001,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
prepared: &localauthorityv1.AuthorityState{
AuthorityId: "prepared-id",
ExpiresAt: 1002,
AuthorityId: "prepared-id",
ExpiresAt: 1002,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
old: &localauthorityv1.AuthorityState{
AuthorityId: "old-id",
ExpiresAt: 1003,
AuthorityId: "old-id",
ExpiresAt: 1003,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
expectStdoutPretty: "Active X.509 authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n\nPrepared X.509 authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n\nOld X.509 authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001"},"prepared":{"authority_id":"prepared-id","expires_at":"1002"},"old":{"authority_id":"old-id","expires_at":"1003"}}`,
expectStdoutPretty: "Active X.509 authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n\nPrepared X.509 authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n\nOld X.509 authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001","upstream_authority_subject_key_id":"some-subject-key-id"},"prepared":{"authority_id":"prepared-id","expires_at":"1002","upstream_authority_subject_key_id":"some-subject-key-id"},"old":{"authority_id":"old-id","expires_at":"1003","upstream_authority_subject_key_id":"some-subject-key-id"}}`,
},
{
name: "success - no active",
expectReturnCode: 0,
prepared: &localauthorityv1.AuthorityState{
AuthorityId: "prepared-id",
ExpiresAt: 1002,
AuthorityId: "prepared-id",
ExpiresAt: 1002,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
old: &localauthorityv1.AuthorityState{
AuthorityId: "old-id",
ExpiresAt: 1003,
AuthorityId: "old-id",
ExpiresAt: 1003,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
expectStdoutPretty: "Active X.509 authority:\n No active X.509 authority found\n\nPrepared X.509 authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n\nOld X.509 authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n",
expectStdoutJSON: `{"prepared":{"authority_id":"prepared-id","expires_at":"1002"},"old":{"authority_id":"old-id","expires_at":"1003"}}`,
expectStdoutPretty: "Active X.509 authority:\n No active X.509 authority found\n\nPrepared X.509 authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n\nOld X.509 authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n",
expectStdoutJSON: `{"prepared":{"authority_id":"prepared-id","expires_at":"1002","upstream_authority_subject_key_id":"some-subject-key-id"},"old":{"authority_id":"old-id","expires_at":"1003","upstream_authority_subject_key_id":"some-subject-key-id"}}`,
},
{
name: "success - no prepared",
expectReturnCode: 0,
active: &localauthorityv1.AuthorityState{
AuthorityId: "active-id",
ExpiresAt: 1001,
AuthorityId: "active-id",
ExpiresAt: 1001,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
old: &localauthorityv1.AuthorityState{
AuthorityId: "old-id",
ExpiresAt: 1003,
AuthorityId: "old-id",
ExpiresAt: 1003,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
expectStdoutPretty: "Active X.509 authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n\nPrepared X.509 authority:\n No prepared X.509 authority found\n\nOld X.509 authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001"},"old":{"authority_id":"old-id","expires_at":"1003"}}`,
expectStdoutPretty: "Active X.509 authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n\nPrepared X.509 authority:\n No prepared X.509 authority found\n\nOld X.509 authority:\n Authority ID: old-id\n Expires at: 1970-01-01 00:16:43 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001","upstream_authority_subject_key_id":"some-subject-key-id"},"old":{"authority_id":"old-id","expires_at":"1003","upstream_authority_subject_key_id":"some-subject-key-id"}}`,
},
{
name: "success - no old",
expectReturnCode: 0,
active: &localauthorityv1.AuthorityState{
AuthorityId: "active-id",
ExpiresAt: 1001,
AuthorityId: "active-id",
ExpiresAt: 1001,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
prepared: &localauthorityv1.AuthorityState{
AuthorityId: "prepared-id",
ExpiresAt: 1002,
AuthorityId: "prepared-id",
ExpiresAt: 1002,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
expectStdoutPretty: "Active X.509 authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n\nPrepared X.509 authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n\nOld X.509 authority:\n No old X.509 authority found\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001"},"prepared":{"authority_id":"prepared-id","expires_at":"1002"}}`,
expectStdoutPretty: "Active X.509 authority:\n Authority ID: active-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n\nPrepared X.509 authority:\n Authority ID: prepared-id\n Expires at: 1970-01-01 00:16:42 +0000 UTC\n Upstream authority Subject Key ID: some-subject-key-id\n\nOld X.509 authority:\n No old X.509 authority found\n",
expectStdoutJSON: `{"active":{"authority_id":"active-id","expires_at":"1001","upstream_authority_subject_key_id":"some-subject-key-id"},"prepared":{"authority_id":"prepared-id","expires_at":"1002","upstream_authority_subject_key_id":"some-subject-key-id"}}`,
},
{
name: "wrong UDS path",
args: []string{common.AddrArg, common.AddrValue},
args: []string{clitest.AddrArg, clitest.AddrValue},
expectReturnCode: 1,
expectStderr: common.AddrError,
expectStderr: "Error: could not get X.509 authorities: " + clitest.AddrError,
},
{
name: "server error",
@ -112,9 +121,9 @@ func TestX509Show(t *testing.T) {
expectStderr: "Error: could not get X.509 authorities: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authority_common.AvailableFormats {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authority_common.SetupTest(t, x509.NewX509ShowCommandWithEnv)
test := authoritycommon_test.SetupTest(t, x509.NewX509ShowCommandWithEnv)
test.Server.ActiveX509 = tt.active
test.Server.PreparedX509 = tt.prepared
test.Server.OldX509 = tt.old
@ -124,7 +133,7 @@ func TestX509Show(t *testing.T) {
returnCode := test.Client.Run(append(test.Args, args...))
authority_common.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})

View File

@ -0,0 +1,91 @@
package x509
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewX509TaintCommand creates a new "x509 taint" subcommand for "localauthority" command.
func NewX509TaintCommand() cli.Command {
return newX509TaintCommand(commoncli.DefaultEnv)
}
// NewX509TaintCommandWithEnv creates a new "x509 taint" subcommand for "localauthority" command
// using the environment specified
func NewX509TaintCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &x509TaintCommand{env: env})
}
func newX509TaintCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &x509TaintCommand{env: env})
}
type x509TaintCommand struct {
authorityID string
printer cliprinter.Printer
env *commoncli.Env
}
func (c *x509TaintCommand) Name() string {
return "localauthority x509 taint"
}
func (*x509TaintCommand) Synopsis() string {
return "Marks the previously active X.509 authority as being tainted"
}
func (c *x509TaintCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.authorityID, "authorityID", "", "The authority ID of the X.509 authority to taint")
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintX509Taint)
}
// Run executes all logic associated with a single invocation of the
// `spire-server localauthority x509 taint` CLI command
func (c *x509TaintCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
client := serverClient.NewLocalAuthorityClient()
resp, err := client.TaintX509Authority(ctx, &localauthorityv1.TaintX509AuthorityRequest{
AuthorityId: c.authorityID,
})
if err != nil {
return fmt.Errorf("could not taint X.509 authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func prettyPrintX509Taint(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.TaintX509AuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Tainted X.509 authority:")
if r.TaintedAuthority == nil {
return errors.New("internal error: expected to have tainted X.509 authority information")
}
authoritycommon.PrettyPrintX509AuthorityState(env, r.TaintedAuthority)
return nil
}
func (c *x509TaintCommand) validate() error {
if c.authorityID == "" {
return errors.New("an authority ID is required")
}
return nil
}

View File

@ -0,0 +1,14 @@
//go:build !windows
package x509_test
var (
x509TaintUsage = `Usage of localauthority x509 taint:
-authorityID string
The authority ID of the X.509 authority to taint
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
`
)

View File

@ -0,0 +1,89 @@
package x509_test
import (
"fmt"
"testing"
"github.com/gogo/status"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
authoritycommon_test "github.com/spiffe/spire/cmd/spire-server/cli/authoritycommon/test"
"github.com/spiffe/spire/cmd/spire-server/cli/localauthority/x509"
"github.com/spiffe/spire/test/clitest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc/codes"
)
func TestX509TaintHelp(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509TaintCommandWithEnv)
test.Client.Help()
require.Equal(t, x509TaintUsage, test.Stderr.String())
}
func TestX509TaintSynopsys(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509TaintCommandWithEnv)
require.Equal(t, "Marks the previously active X.509 authority as being tainted", test.Client.Synopsis())
}
func TestX509Taint(t *testing.T) {
for _, tt := range []struct {
name string
args []string
expectReturnCode int
expectStdoutPretty string
expectStdoutJSON string
expectStderr string
serverErr error
tainted *localauthorityv1.AuthorityState
}{
{
name: "success",
expectReturnCode: 0,
args: []string{"-authorityID", "prepared-id"},
tainted: &localauthorityv1.AuthorityState{
AuthorityId: "tainted-id",
ExpiresAt: 1001,
UpstreamAuthoritySubjectKeyId: "some-subject-key-id",
},
expectStdoutPretty: "Tainted X.509 authority:\n Authority ID: tainted-id\n Expires at: 1970-01-01 00:16:41 +0000 UTC\n",
expectStdoutJSON: `{"tainted_authority":{"authority_id":"tainted-id","expires_at":"1001","upstream_authority_subject_key_id":"some-subject-key-id"}}`,
},
{
name: "no authority id",
expectReturnCode: 1,
expectStderr: "Error: an authority ID is required\n",
},
{
name: "wrong UDS path",
args: []string{
clitest.AddrArg, clitest.AddrValue,
"-authorityID", "prepared-id",
},
expectReturnCode: 1,
expectStderr: "Error: could not taint X.509 authority: " + clitest.AddrError,
},
{
name: "server error",
args: []string{"-authorityID", "old-id"},
serverErr: status.Error(codes.Internal, "internal server error"),
expectReturnCode: 1,
expectStderr: "Error: could not taint X.509 authority: rpc error: code = Internal desc = internal server error\n",
},
} {
for _, format := range authoritycommon_test.AvailableFormats {
t.Run(fmt.Sprintf("%s using %s format", tt.name, format), func(t *testing.T) {
test := authoritycommon_test.SetupTest(t, x509.NewX509TaintCommandWithEnv)
test.Server.TaintedX509 = tt.tainted
test.Server.Err = tt.serverErr
args := tt.args
args = append(args, "-output", format)
returnCode := test.Client.Run(append(test.Args, args...))
authoritycommon_test.RequireOutputBasedOnFormat(t, format, test.Stdout.String(), tt.expectStdoutPretty, tt.expectStdoutJSON)
require.Equal(t, tt.expectStderr, test.Stderr.String())
require.Equal(t, tt.expectReturnCode, returnCode)
})
}
}
}

View File

@ -0,0 +1,14 @@
//go:build windows
package x509_test
var (
x509TaintUsage = `Usage of localauthority x509 taint:
-authorityID string
The authority ID of the X.509 authority to taint
-namedPipeName string
Pipe name of the SPIRE Server API named pipe (default "\\spire-server\\private\\api")
-output value
Desired output format (pretty, json); default: pretty.
`
)

View File

@ -1,18 +1,17 @@
package logger_test
import (
"bytes"
"context"
"io"
"testing"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/spiretest"
"bytes"
"context"
"github.com/mitchellh/cli"
loggerv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/logger/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"google.golang.org/grpc"
)
@ -55,7 +54,7 @@ func setupCliTest(t *testing.T, server *mockLoggerService, newClient func(*commo
stdin: stdin,
stdout: stdout,
stderr: stderr,
args: []string{common.AddrArg, common.GetAddr(addr)},
args: []string{clitest.AddrArg, clitest.GetAddr(addr)},
server: server,
client: client,
}

View File

@ -33,8 +33,5 @@ func PrettyPrintLogger(env *commoncli.Env, results ...any) error {
return fmt.Errorf("internal error: logrus log level %d has no name; please report this as a bug", logrusLaunch)
}
if err := env.Printf("Logger Level : %s\nLaunch Level : %s\n\n", currentText, launchText); err != nil {
return err
}
return nil
return env.Printf("Logger Level : %s\nLaunch Level : %s\n\n", currentText, launchText)
}

View File

@ -14,7 +14,7 @@ import (
func TestPrettyPrintLogger(t *testing.T) {
for _, tt := range []struct {
name string
logger interface{}
logger any
outWriter errorWriter
errWriter errorWriter
env *commoncli.Env
@ -53,7 +53,6 @@ Launch Level : info
expectedError: errors.New("internal error: unexpected type *types.Entry returned; please report this as a bug"),
},
} {
tt := tt
t.Run(tt.name, func(t *testing.T) {
tt.env = &commoncli.Env{
Stdout: &tt.outWriter,

View File

@ -14,6 +14,7 @@ import (
"path/filepath"
"reflect"
"sort"
"strconv"
"strings"
"syscall"
"time"
@ -30,11 +31,13 @@ import (
"github.com/spiffe/spire/pkg/common/bundleutil"
"github.com/spiffe/spire/pkg/common/catalog"
common_cli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/config"
"github.com/spiffe/spire/pkg/common/diskcertmanager"
"github.com/spiffe/spire/pkg/common/fflag"
"github.com/spiffe/spire/pkg/common/health"
"github.com/spiffe/spire/pkg/common/log"
"github.com/spiffe/spire/pkg/common/telemetry"
"github.com/spiffe/spire/pkg/common/tlspolicy"
"github.com/spiffe/spire/pkg/server"
"github.com/spiffe/spire/pkg/server/authpolicy"
bundleClient "github.com/spiffe/spire/pkg/server/bundle/client"
@ -107,7 +110,9 @@ type experimentalConfig struct {
CacheReloadInterval string `hcl:"cache_reload_interval"`
EventsBasedCache bool `hcl:"events_based_cache"`
PruneEventsOlderThan string `hcl:"prune_events_older_than"`
EventTimeout string `hcl:"event_timeout"`
SQLTransactionTimeout string `hcl:"sql_transaction_timeout"`
RequirePQKEM bool `hcl:"require_pq_kem"`
Flags fflag.RawConfig `hcl:"feature_flags"`
@ -316,7 +321,7 @@ func ParseFile(path string, expandEnv bool) (*Config, error) {
// If envTemplate flag is passed, substitute $VARIABLES in configuration file
if expandEnv {
data = os.ExpandEnv(data)
data = config.ExpandEnv(data)
}
if err := hcl.Decode(&c, data); err != nil {
@ -407,7 +412,7 @@ func NewServerConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool
sc.LogReopener = log.ReopenOnSignal(logger, reopenableFile)
}
bindAddress, err := net.ResolveTCPAddr("tcp", fmt.Sprintf("%s:%d", c.Server.BindAddress, c.Server.BindPort))
bindAddress, err := net.ResolveTCPAddr("tcp", net.JoinHostPort(strings.Trim(c.Server.BindAddress, "[]"), strconv.Itoa(c.Server.BindPort)))
if err != nil {
return nil, fmt.Errorf(`could not resolve bind address "%s:%d": %w`, c.Server.BindAddress, c.Server.BindPort, err)
}
@ -508,6 +513,12 @@ func NewServerConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool
sc.ProfilingFreq = c.Server.ProfilingFreq
sc.ProfilingNames = c.Server.ProfilingNames
sc.TLSPolicy = tlspolicy.Policy{
RequirePQKEM: c.Server.Experimental.RequirePQKEM,
}
tlspolicy.LogPolicy(sc.TLSPolicy, log.NewHCLogAdapter(logger, "tlspolicy"))
for _, adminID := range c.Server.AdminIDs {
id, err := spiffeid.FromString(adminID)
if err != nil {
@ -558,6 +569,7 @@ func NewServerConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool
}
if c.Server.UseLegacyDownstreamX509CATTL != nil {
sc.Log.Warn("'use_legacy_downstream_x509_ca_ttl' is deprecated and will be removed in a future release")
sc.UseLegacyDownstreamX509CATTL = *c.Server.UseLegacyDownstreamX509CATTL
if sc.UseLegacyDownstreamX509CATTL {
sc.Log.Warn("Using legacy downstream X509 CA TTL calculation; this option will be removed in a future release")
@ -565,10 +577,9 @@ func NewServerConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool
sc.Log.Info("Using preferred downstream X509 CA TTL calculation")
}
} else {
// The default value should be false in SPIRE 1.11.0 and the flag
// removed in SPIRE 1.12.0.
sc.UseLegacyDownstreamX509CATTL = true
sc.Log.Info("Using legacy downstream X509 CA TTL calculation by default; this default will change in a future release")
// The flag should be removed in SPIRE 1.13.0.
sc.UseLegacyDownstreamX509CATTL = false
sc.Log.Info("Using preferred downstream X509 CA TTL calculation")
}
// If the configured TTLs can lead to surprises, then do our best to log an
@ -697,11 +708,20 @@ func NewServerConfig(c *Config, logOptions []log.Option, allowUnknownConfig bool
}
if c.Server.Experimental.SQLTransactionTimeout != "" {
sc.Log.Warn("experimental.sql_transaction_timeout is deprecated, use experimental.event_timeout instead")
interval, err := time.ParseDuration(c.Server.Experimental.SQLTransactionTimeout)
if err != nil {
return nil, fmt.Errorf("could not parse SQL transaction timeout interval: %w", err)
}
sc.SQLTransactionTimeout = interval
sc.EventTimeout = interval
}
if c.Server.Experimental.EventTimeout != "" {
interval, err := time.ParseDuration(c.Server.Experimental.EventTimeout)
if err != nil {
return nil, fmt.Errorf("could not parse event timeout interval: %w", err)
}
sc.EventTimeout = interval
}
if c.Server.Experimental.EventsBasedCache {
@ -752,10 +772,7 @@ func setBundleEndpointConfigProfile(config *bundleEndpointConfig, dataDir string
return nil
case profileConfig.HTTPSWeb.ServingCertFile != nil:
federationConfig.BundleEndpoint.DiskCertManager, err = configToDiskCertManager(profileConfig.HTTPSWeb.ServingCertFile, log)
if err != nil {
return err
}
return nil
return err
default:
return errors.New("malformed https_web profile configuration: 'acme' or 'serving_cert_file' is required")
}
@ -894,6 +911,10 @@ func validateConfig(c *Config) error {
}
}
if c.Server.Experimental.EventTimeout != "" && c.Server.Experimental.SQLTransactionTimeout != "" {
return errors.New("both experimental sql_transaction_timeout and event_timeout set, only set event_timeout")
}
return c.validateOS()
}

View File

@ -236,7 +236,7 @@ func mergeInputCasesOS(*testing.T) []mergeInputCase {
},
},
{
msg: "socket_path should be configuable by CLI flag",
msg: "socket_path should be configurable by CLI flag",
fileInput: func(c *Config) {},
cliFlags: []string{"-socketPath=foo"},
test: func(t *testing.T, c *Config) {

View File

@ -64,6 +64,7 @@ func TestParseConfigGood(t *testing.T) {
_, ok := trustDomainConfig.EndpointProfile.(bundleClient.HTTPSWebProfile)
assert.True(t, ok)
assert.True(t, c.Server.AuditLogEnabled)
assert.True(t, c.Server.Experimental.RequirePQKEM)
testParseConfigGoodOS(t, c)
// Parse/reprint cycle trims outer whitespace
@ -455,12 +456,20 @@ func TestMergeInput(t *testing.T) {
require.True(t, c.Server.AuditLogEnabled)
},
},
{
msg: "require_pq_kem should be configurable by file",
fileInput: func(c *Config) {
c.Server.Experimental.RequirePQKEM = true
},
cliFlags: []string{},
test: func(t *testing.T, c *Config) {
require.True(t, c.Server.Experimental.RequirePQKEM)
},
},
}
cases = append(cases, mergeInputCasesOS(t)...)
for _, testCase := range cases {
testCase := testCase
fileInput := &Config{Server: &serverConfig{}}
testCase.fileInput(fileInput)
@ -504,6 +513,28 @@ func TestNewServerConfig(t *testing.T) {
require.Equal(t, 1337, c.BindAddress.Port)
},
},
{
msg: "IPv6 bind_address in square brackets and bind_port should be correctly parsed",
input: func(c *Config) {
c.Server.BindAddress = "[2001:101::]"
c.Server.BindPort = 1337
},
test: func(t *testing.T, c *server.Config) {
require.Equal(t, "2001:101::", c.BindAddress.IP.String())
require.Equal(t, 1337, c.BindAddress.Port)
},
},
{
msg: "IPv6 bind_address without square brackets and bind_port should be correctly parsed",
input: func(c *Config) {
c.Server.BindAddress = "2001:101::"
c.Server.BindPort = 1337
},
test: func(t *testing.T, c *server.Config) {
require.Equal(t, "2001:101::", c.BindAddress.IP.String())
require.Equal(t, 1337, c.BindAddress.Port)
},
},
{
msg: "bind_address with hostname value should be correctly parsed",
input: func(c *Config) {
@ -1113,6 +1144,24 @@ func TestNewServerConfig(t *testing.T) {
require.Nil(t, c)
},
},
{
msg: "sql_transaction_timeout is correctly parsed",
input: func(c *Config) {
c.Server.Experimental.SQLTransactionTimeout = "1m"
},
test: func(t *testing.T, c *server.Config) {
require.Equal(t, time.Minute, c.EventTimeout)
},
},
{
msg: "event_timeout is correctly parsed",
input: func(c *Config) {
c.Server.Experimental.EventTimeout = "1m"
},
test: func(t *testing.T, c *server.Config) {
require.Equal(t, time.Minute, c.EventTimeout)
},
},
{
msg: "audit_log_enabled is enabled",
input: func(c *Config) {
@ -1160,12 +1209,26 @@ func TestNewServerConfig(t *testing.T) {
}, c.AdminIDs)
},
},
{
msg: "require PQ KEM is disabled (default)",
input: func(c *Config) {},
test: func(t *testing.T, c *server.Config) {
require.Equal(t, false, c.TLSPolicy.RequirePQKEM)
},
},
{
msg: "require PQ KEM is enabled",
input: func(c *Config) {
c.Server.Experimental.RequirePQKEM = true
},
test: func(t *testing.T, c *server.Config) {
require.Equal(t, true, c.TLSPolicy.RequirePQKEM)
},
},
}
cases = append(cases, newServerConfigCasesOS(t)...)
for _, testCase := range cases {
testCase := testCase
input := defaultValidConfig()
testCase.input(input)
@ -1285,10 +1348,17 @@ func TestValidateConfig(t *testing.T) {
},
expectedErr: `federation.federates_with["domain.test"].bundle_endpoint_url must use the HTTPS protocol; URL found: "http://example.org/test"`,
},
{
name: "can't set both sql_transaction_timeout and event_timeout",
applyConf: func(c *Config) {
c.Server.Experimental.EventTimeout = "1h"
c.Server.Experimental.SQLTransactionTimeout = "1h"
},
expectedErr: "both experimental sql_transaction_timeout and event_timeout set, only set event_timeout",
},
}
for _, testCase := range testCases {
testCase := testCase
t.Run(testCase.name, func(t *testing.T) {
conf := defaultValidConfig()
testCase.applyConf(conf)
@ -1501,8 +1571,6 @@ func TestWarnOnUnknownConfig(t *testing.T) {
}
for _, testCase := range cases {
testCase := testCase
c, err := ParseFile(filepath.Join(testFileDir, testCase.confFile), false)
require.NoError(t, err)
@ -1693,7 +1761,7 @@ func TestHasCompatibleTTLs(t *testing.T) {
msg: "default_jwt_svid_ttl is small enough for the configured CA TTL but larger than the max",
caTTL: time.Hour * 24 * 7 * 4 * 6, // Six months
x509SvidTTL: 0,
jwtSvidTTL: time.Hour * 24 * 7 * 2, // Two weeks,,
jwtSvidTTL: time.Hour * 24 * 7 * 2, // Two weeks
hasCompatibleSvidTTL: true,
hasCompatibleX509SvidTTL: true,
hasCompatibleJwtSvidTTL: false,
@ -1710,7 +1778,6 @@ func TestHasCompatibleTTLs(t *testing.T) {
}
for _, testCase := range cases {
testCase := testCase
if testCase.caTTL == 0 {
testCase.caTTL = credtemplate.DefaultX509CATTL
}

View File

@ -160,7 +160,7 @@ func mergeInputCasesOS(*testing.T) []mergeInputCase {
},
},
{
msg: "named_pipe_name be configuable by CLI flag",
msg: "named_pipe_name be configurable by CLI flag",
fileInput: func(c *Config) {},
cliFlags: []string{"-namedPipeName=foo"},
test: func(t *testing.T, c *Config) {

View File

@ -3,14 +3,16 @@ package token
import (
"context"
"flag"
"fmt"
"github.com/mitchellh/cli"
"github.com/spiffe/go-spiffe/v2/spiffeid"
agentv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/agent/v1"
prototypes "github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/util"
serverutil "github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
"github.com/spiffe/spire/pkg/common/util"
)
func NewGenerateCommand() cli.Command {
@ -18,7 +20,7 @@ func NewGenerateCommand() cli.Command {
}
func newGenerateCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &generateCommand{env: env})
return serverutil.AdaptCommand(env, &generateCommand{env: env})
}
type generateCommand struct {
@ -39,16 +41,20 @@ func (g *generateCommand) Synopsis() string {
return "Generates a join token"
}
func (g *generateCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
func (g *generateCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient serverutil.ServerClient) error {
id, err := getID(g.SpiffeID)
if err != nil {
return err
}
ttl, err := util.CheckedCast[int32](g.TTL)
if err != nil {
return fmt.Errorf("invalid value for TTL: %w", err)
}
c := serverClient.NewAgentClient()
resp, err := c.CreateJoinToken(ctx, &agentv1.CreateJoinTokenRequest{
AgentId: id,
Ttl: int32(g.TTL),
Ttl: ttl,
})
if err != nil {
return err

View File

@ -9,8 +9,8 @@ import (
"github.com/mitchellh/cli"
agentv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/agent/v1"
"github.com/spiffe/spire-api-sdk/proto/spire/api/types"
"github.com/spiffe/spire/cmd/spire-server/cli/common"
common_cli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/test/clitest"
"github.com/spiffe/spire/test/spiretest"
"github.com/stretchr/testify/require"
"google.golang.org/grpc"
@ -116,7 +116,7 @@ type tokenTest struct {
}
func (t *tokenTest) args(extra ...string) []string {
return append([]string{common.AddrArg, t.addr}, extra...)
return append([]string{clitest.AddrArg, t.addr}, extra...)
}
func setupTest(t *testing.T) *tokenTest {
@ -137,7 +137,7 @@ func setupTest(t *testing.T) *tokenTest {
})
return &tokenTest{
addr: common.GetAddr(addr),
addr: clitest.GetAddr(addr),
stderr: stderr,
stdin: stdin,
stdout: stdout,

View File

@ -0,0 +1,86 @@
package upstreamauthority
import (
"context"
"errors"
"flag"
"fmt"
"github.com/mitchellh/cli"
localauthorityv1 "github.com/spiffe/spire-api-sdk/proto/spire/api/server/localauthority/v1"
"github.com/spiffe/spire/cmd/spire-server/util"
commoncli "github.com/spiffe/spire/pkg/common/cli"
"github.com/spiffe/spire/pkg/common/cliprinter"
)
// NewRevokeCommand creates a new "upstreamauthority revoke" subcommand for "upstreamauthority" command.
func NewRevokeCommand() cli.Command {
return newRevokeCommand(commoncli.DefaultEnv)
}
// NewRevokeCommandWithEnv creates a new "upstreamauthority revoke" subcommand for "upstreamauthority" command
// using the environment specified
func NewRevokeCommandWithEnv(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &upstreamauthorityRevokeCommand{env: env})
}
func newRevokeCommand(env *commoncli.Env) cli.Command {
return util.AdaptCommand(env, &upstreamauthorityRevokeCommand{env: env})
}
type upstreamauthorityRevokeCommand struct {
subjectKeyID string
printer cliprinter.Printer
env *commoncli.Env
}
func (c *upstreamauthorityRevokeCommand) Name() string {
return "upstreamauthority revoke"
}
func (*upstreamauthorityRevokeCommand) Synopsis() string {
return "Revokes the previously active X.509 upstream authority by removing it from the bundle and propagating this update throughout the cluster"
}
func (c *upstreamauthorityRevokeCommand) AppendFlags(f *flag.FlagSet) {
f.StringVar(&c.subjectKeyID, "subjectKeyID", "", "The X.509 Subject Key Identifier (or SKID) of the authority's CA certificate of the X.509 upstream authority to revoke")
cliprinter.AppendFlagWithCustomPretty(&c.printer, f, c.env, prettyPrintRevoke)
}
// Run executes all logic associated with a single invocation of the
// `spire-server upstreamauthority revoke` CLI command
func (c *upstreamauthorityRevokeCommand) Run(ctx context.Context, _ *commoncli.Env, serverClient util.ServerClient) error {
if err := c.validate(); err != nil {
return err
}
client := serverClient.NewLocalAuthorityClient()
resp, err := client.RevokeX509UpstreamAuthority(ctx, &localauthorityv1.RevokeX509UpstreamAuthorityRequest{
SubjectKeyId: c.subjectKeyID,
})
if err != nil {
return fmt.Errorf("could not revoke X.509 upstream authority: %w", err)
}
return c.printer.PrintProto(resp)
}
func prettyPrintRevoke(env *commoncli.Env, results ...any) error {
r, ok := results[0].(*localauthorityv1.RevokeX509UpstreamAuthorityResponse)
if !ok {
return errors.New("internal error: cli printer; please report this bug")
}
env.Println("Revoked X.509 upstream authority:")
env.Printf(" Subject Key ID: %s\n", r.UpstreamAuthoritySubjectKeyId)
return nil
}
func (c *upstreamauthorityRevokeCommand) validate() error {
if c.subjectKeyID == "" {
return errors.New("the Subject Key ID of the X.509 upstream authority is required")
}
return nil
}

View File

@ -0,0 +1,14 @@
//go:build !windows
package upstreamauthority_test
var (
revokeUsage = `Usage of upstreamauthority revoke:
-output value
Desired output format (pretty, json); default: pretty.
-socketPath string
Path to the SPIRE Server API socket (default "/tmp/spire-server/private/api.sock")
-subjectKeyID string
The X.509 Subject Key Identifier (or SKID) of the authority's CA certificate of the X.509 upstream authority to revoke
`
)

Some files were not shown because too many files have changed in this diff Show More