Skip to content

Add SSH support for age #1692

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Feb 20, 2025
Merged

Add SSH support for age #1692

merged 8 commits into from
Feb 20, 2025

Conversation

haoqixu
Copy link
Contributor

@haoqixu haoqixu commented Dec 1, 2024

Continues #1134.

Closes #1134
Closes #1496
Fixes #692

@haoqixu
Copy link
Contributor Author

haoqixu commented Dec 1, 2024

This PR rebases #1134 and includes _FILE in the environment variable according to the suggestion in #1134 (comment), but uses SopsAgeSshPrivateKeyFileEnv instead of SopsAgeSshPrivateKeyEnvFile to stay aligned with SopsAgeKeyFileEnv.

@haoqixu haoqixu marked this pull request as draft December 1, 2024 21:48
@haoqixu haoqixu marked this pull request as ready for review December 1, 2024 21:57
Copy link
Contributor

@felixfontein felixfontein left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your contribution, and sorry it took so long to review it...

@haoqixu haoqixu force-pushed the age-ssh branch 2 times, most recently from 1af2314 to 714f23d Compare January 2, 2025 08:14
Copy link
Contributor

@felixfontein felixfontein left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, up to two details in go.mod and the open discussions on the Code scanning warnings.

@brianmcgee
Copy link
Contributor

It looks like this PR is ready to roll once those codeql warnings are dismissed. Am I right, or is there anything else needing done?

@haoqixu
Copy link
Contributor Author

haoqixu commented Feb 7, 2025

It looks like this PR is ready to roll once those codeql warnings are dismissed. Am I right, or is there anything else needing done?

yes, I think so. 🤔

@felixfontein
Copy link
Contributor

@haoqixu can you rebase the PR and integrate getsops/docs#9 into README.rst in this repository? (README.rst is the current source of truth for SOPS documentation, not the docs repo.)

mstrangfeld and others added 5 commits February 19, 2025 12:52
Signed-off-by: Marvin Strangfeld <marvin@strangfeld.io>
Signed-off-by: haoqixu <hq.xu0o0@gmail.com>
Signed-off-by: haoqixu <hq.xu0o0@gmail.com>
Signed-off-by: haoqixu <hq.xu0o0@gmail.com>
Signed-off-by: haoqixu <hq.xu0o0@gmail.com>
@haoqixu
Copy link
Contributor Author

haoqixu commented Feb 19, 2025

@haoqixu can you rebase the PR and integrate getsops/docs#9 into README.rst in this repository? (README.rst is the current source of truth for SOPS documentation, not the docs repo.)

No problem. Done.

Signed-off-by: haoqixu <hq.xu0o0@gmail.com>
Copy link
Contributor

@felixfontein felixfontein left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Besides that, LGTM.

@felixfontein
Copy link
Contributor

(I also dismissed the CodeQL warnings.)

Co-authored-by: Felix Fontein <felix@fontein.de>
Signed-off-by: xu0o0 <hq.xu0o0@gmail.com>
@felixfontein felixfontein merged commit 0cea11f into getsops:main Feb 20, 2025
16 checks passed
@felixfontein
Copy link
Contributor

@mstrangfeld @haoqixu thank you very much for your work on this, and thanks again @iamd3vil for getting it started in #898!
Also thanks to everyone involved in providing feedback and testing #898, #1134, and this PR!

tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Apr 20, 2025
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [getsops/sops](https://github.com/getsops/sops) | minor | `v3.9.4` -> `v3.10.2` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>getsops/sops (getsops/sops)</summary>

### [`v3.10.2`](https://github.com/getsops/sops/releases/tag/v3.10.2)

[Compare Source](getsops/sops@v3.10.1...v3.10.2)

#### Installation

To install `sops`, download one of the pre-built binaries provided for your platform from the artifacts attached to this release.

For instance, if you are using Linux on an AMD64 architecture:

```shell

### Download the binary
curl -LO https://github.com/getsops/sops/releases/download/v3.10.2/sops-v3.10.2.linux.amd64

### Move the binary in to your PATH
mv sops-v3.10.2.linux.amd64 /usr/local/bin/sops

### Make the binary executable
chmod +x /usr/local/bin/sops
```

##### Verify checksums file signature

The checksums file provided within the artifacts attached to this release is signed using [Cosign](https://docs.sigstore.dev/cosign/overview/) with GitHub OIDC. To validate the signature of this file, run the following commands:

```shell

### Download the checksums file, certificate and signature
curl -LO https://github.com/getsops/sops/releases/download/v3.10.2/sops-v3.10.2.checksums.txt
curl -LO https://github.com/getsops/sops/releases/download/v3.10.2/sops-v3.10.2.checksums.pem
curl -LO https://github.com/getsops/sops/releases/download/v3.10.2/sops-v3.10.2.checksums.sig

### Verify the checksums file
cosign verify-blob sops-v3.10.2.checksums.txt \
  --certificate sops-v3.10.2.checksums.pem \
  --signature sops-v3.10.2.checksums.sig \
  --certificate-identity-regexp=https://github.com/getsops \
  --certificate-oidc-issuer=https://token.actions.githubusercontent.com
```

##### Verify binary integrity

To verify the integrity of the downloaded binary, you can utilize the checksums file after having validated its signature:

```shell

### Verify the binary using the checksums file
sha256sum -c sops-v3.10.2.checksums.txt --ignore-missing
```

##### Verify artifact provenance

The [SLSA provenance](https://slsa.dev/provenance/v0.2) of the binaries, packages, and SBOMs can be found within the artifacts associated with this release. It is presented through an [in-toto](https://in-toto.io/) link metadata file named `sops-v3.10.2.intoto.jsonl`. To verify the provenance of an artifact, you can utilize the [`slsa-verifier`](https://github.com/slsa-framework/slsa-verifier#artifacts) tool:

```shell

### Download the metadata file
curl -LO  https://github.com/getsops/sops/releases/download/v3.10.2/sops-v3.10.2.intoto.jsonl

### Verify the provenance of the artifact
slsa-verifier verify-artifact <artifact> \
  --provenance-path sops-v3.10.2.intoto.jsonl \
  --source-uri github.com/getsops/sops \
  --source-tag v3.10.2
```

#### Container Images

The `sops` binaries are also available as container images, based on Debian (slim) and Alpine Linux. The Debian-based container images include any dependencies which may be required to make use of certain key services, such as GnuPG, AWS KMS, Azure Key Vault, and Google Cloud KMS. The Alpine-based container images are smaller in size, but do not include these dependencies.

These container images are available for the following architectures: `linux/amd64` and `linux/arm64`.

##### GitHub Container Registry

-   `ghcr.io/getsops/sops:v3.10.2`
-   `ghcr.io/getsops/sops:v3.10.2-alpine`

##### Quay.io

-   `quay.io/getsops/sops:v3.10.2`
-   `quay.io/getsops/sops:v3.10.2-alpine`

##### Verify container image signature

The container images are signed using [Cosign](https://docs.sigstore.dev/cosign/overview/) with GitHub OIDC. To validate the signature of an image, run the following command:

```shell
cosign verify ghcr.io/getsops/sops:v3.10.2 \
  --certificate-identity-regexp=https://github.com/getsops \
  --certificate-oidc-issuer=https://token.actions.githubusercontent.com \
  -o text
```

##### Verify container image provenance

The container images include [SLSA provenance](https://slsa.dev/provenance/v0.2) attestations. For more information around the verification of this, please refer to the [`slsa-verifier` documentation](https://github.com/slsa-framework/slsa-verifier#containers).

#### Software Bill of Materials

The Software Bill of Materials (SBOM) for each binary is accessible within the artifacts enclosed with this release. It is presented as an [SPDX](https://spdx.dev/) JSON file, formatted as `<binary>.spdx.sbom.json`.

#### What's Changed

-   build(deps): Bump the go group with 13 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1834
-   Use latest 1.24 Go version for release build by [@&#8203;hiddeco](https://github.com/hiddeco) in getsops/sops#1836
-   Remove reserved keyword check from YAML store's `LoadPlainFile()` by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1829
-   build(deps): Bump the go group with 9 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1839
-   build(deps): Bump github/codeql-action from 3.28.13 to 3.28.15 in the ci group by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1840
-   Release 3.10.2 release by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1841

**Full Changelog**: getsops/sops@v3.10.1...v3.10.2

### [`v3.10.1`](https://github.com/getsops/sops/releases/tag/v3.10.1)

[Compare Source](getsops/sops@v3.10.0...v3.10.1)

#### Installation

To install `sops`, download one of the pre-built binaries provided for your platform from the artifacts attached to this release.

For instance, if you are using Linux on an AMD64 architecture:

```shell

### Download the binary
curl -LO https://github.com/getsops/sops/releases/download/v3.10.1/sops-v3.10.1.linux.amd64

### Move the binary in to your PATH
mv sops-v3.10.1.linux.amd64 /usr/local/bin/sops

### Make the binary executable
chmod +x /usr/local/bin/sops
```

##### Verify checksums file signature

The checksums file provided within the artifacts attached to this release is signed using [Cosign](https://docs.sigstore.dev/cosign/overview/) with GitHub OIDC. To validate the signature of this file, run the following commands:

```shell

### Download the checksums file, certificate and signature
curl -LO https://github.com/getsops/sops/releases/download/v3.10.1/sops-v3.10.1.checksums.txt
curl -LO https://github.com/getsops/sops/releases/download/v3.10.1/sops-v3.10.1.checksums.pem
curl -LO https://github.com/getsops/sops/releases/download/v3.10.1/sops-v3.10.1.checksums.sig

### Verify the checksums file
cosign verify-blob sops-v3.10.1.checksums.txt \
  --certificate sops-v3.10.1.checksums.pem \
  --signature sops-v3.10.1.checksums.sig \
  --certificate-identity-regexp=https://github.com/getsops \
  --certificate-oidc-issuer=https://token.actions.githubusercontent.com
```

##### Verify binary integrity

To verify the integrity of the downloaded binary, you can utilize the checksums file after having validated its signature:

```shell

### Verify the binary using the checksums file
sha256sum -c sops-v3.10.1.checksums.txt --ignore-missing
```

##### Verify artifact provenance

The [SLSA provenance](https://slsa.dev/provenance/v0.2) of the binaries, packages, and SBOMs can be found within the artifacts associated with this release. It is presented through an [in-toto](https://in-toto.io/) link metadata file named `sops-v3.10.1.intoto.jsonl`. To verify the provenance of an artifact, you can utilize the [`slsa-verifier`](https://github.com/slsa-framework/slsa-verifier#artifacts) tool:

```shell

### Download the metadata file
curl -LO  https://github.com/getsops/sops/releases/download/v3.10.1/sops-v3.10.1.intoto.jsonl

### Verify the provenance of the artifact
slsa-verifier verify-artifact <artifact> \
  --provenance-path sops-v3.10.1.intoto.jsonl \
  --source-uri github.com/getsops/sops \
  --source-tag v3.10.1
```

#### Container Images

The `sops` binaries are also available as container images, based on Debian (slim) and Alpine Linux. The Debian-based container images include any dependencies which may be required to make use of certain key services, such as GnuPG, AWS KMS, Azure Key Vault, and Google Cloud KMS. The Alpine-based container images are smaller in size, but do not include these dependencies.

These container images are available for the following architectures: `linux/amd64` and `linux/arm64`.

##### GitHub Container Registry

-   `ghcr.io/getsops/sops:v3.10.1`
-   `ghcr.io/getsops/sops:v3.10.1-alpine`

##### Quay.io

-   `quay.io/getsops/sops:v3.10.1`
-   `quay.io/getsops/sops:v3.10.1-alpine`

##### Verify container image signature

The container images are signed using [Cosign](https://docs.sigstore.dev/cosign/overview/) with GitHub OIDC. To validate the signature of an image, run the following command:

```shell
cosign verify ghcr.io/getsops/sops:v3.10.1 \
  --certificate-identity-regexp=https://github.com/getsops \
  --certificate-oidc-issuer=https://token.actions.githubusercontent.com \
  -o text
```

##### Verify container image provenance

The container images include [SLSA provenance](https://slsa.dev/provenance/v0.2) attestations. For more information around the verification of this, please refer to the [`slsa-verifier` documentation](https://github.com/slsa-framework/slsa-verifier#containers).

#### Software Bill of Materials

The Software Bill of Materials (SBOM) for each binary is accessible within the artifacts enclosed with this release. It is presented as an [SPDX](https://spdx.dev/) JSON file, formatted as `<binary>.spdx.sbom.json`.

#### What's Changed

-   build(deps): Bump the ci group with 2 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1826
-   Release 3.10.1 by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1827

**Full Changelog**: getsops/sops@v3.10.0...v3.10.1

### [`v3.10.0`](https://github.com/getsops/sops/releases/tag/v3.10.0)

[Compare Source](getsops/sops@v3.9.4...v3.10.0)

#### Installation

To install `sops`, download one of the pre-built binaries provided for your platform from the artifacts attached to this release.

For instance, if you are using Linux on an AMD64 architecture:

```shell

### Download the binary
curl -LO https://github.com/getsops/sops/releases/download/v3.10.0/sops-v3.10.0.linux.amd64

### Move the binary in to your PATH
mv sops-v3.10.0.linux.amd64 /usr/local/bin/sops

### Make the binary executable
chmod +x /usr/local/bin/sops
```

##### Verify checksums file signature

The checksums file provided within the artifacts attached to this release is signed using [Cosign](https://docs.sigstore.dev/cosign/overview/) with GitHub OIDC. To validate the signature of this file, run the following commands:

```shell

### Download the checksums file, certificate and signature
curl -LO https://github.com/getsops/sops/releases/download/v3.10.0/sops-v3.10.0.checksums.txt
curl -LO https://github.com/getsops/sops/releases/download/v3.10.0/sops-v3.10.0.checksums.pem
curl -LO https://github.com/getsops/sops/releases/download/v3.10.0/sops-v3.10.0.checksums.sig

### Verify the checksums file
cosign verify-blob sops-v3.10.0.checksums.txt \
  --certificate sops-v3.10.0.checksums.pem \
  --signature sops-v3.10.0.checksums.sig \
  --certificate-identity-regexp=https://github.com/getsops \
  --certificate-oidc-issuer=https://token.actions.githubusercontent.com
```

##### Verify binary integrity

To verify the integrity of the downloaded binary, you can utilize the checksums file after having validated its signature:

```shell

### Verify the binary using the checksums file
sha256sum -c sops-v3.10.0.checksums.txt --ignore-missing
```

##### Verify artifact provenance

The [SLSA provenance](https://slsa.dev/provenance/v0.2) of the binaries, packages, and SBOMs can be found within the artifacts associated with this release. It is presented through an [in-toto](https://in-toto.io/) link metadata file named `sops-v3.10.0.intoto.jsonl`. To verify the provenance of an artifact, you can utilize the [`slsa-verifier`](https://github.com/slsa-framework/slsa-verifier#artifacts) tool:

```shell

### Download the metadata file
curl -LO  https://github.com/getsops/sops/releases/download/v3.10.0/sops-v3.10.0.intoto.jsonl

### Verify the provenance of the artifact
slsa-verifier verify-artifact <artifact> \
  --provenance-path sops-v3.10.0.intoto.jsonl \
  --source-uri github.com/getsops/sops \
  --source-tag v3.10.0
```

#### Container Images

The `sops` binaries are also available as container images, based on Debian (slim) and Alpine Linux. The Debian-based container images include any dependencies which may be required to make use of certain key services, such as GnuPG, AWS KMS, Azure Key Vault, and Google Cloud KMS. The Alpine-based container images are smaller in size, but do not include these dependencies.

These container images are available for the following architectures: `linux/amd64` and `linux/arm64`.

##### GitHub Container Registry

-   `ghcr.io/getsops/sops:v3.10.0`
-   `ghcr.io/getsops/sops:v3.10.0-alpine`

##### Quay.io

-   `quay.io/getsops/sops:v3.10.0`
-   `quay.io/getsops/sops:v3.10.0-alpine`

##### Verify container image signature

The container images are signed using [Cosign](https://docs.sigstore.dev/cosign/overview/) with GitHub OIDC. To validate the signature of an image, run the following command:

```shell
cosign verify ghcr.io/getsops/sops:v3.10.0 \
  --certificate-identity-regexp=https://github.com/getsops \
  --certificate-oidc-issuer=https://token.actions.githubusercontent.com \
  -o text
```

##### Verify container image provenance

The container images include [SLSA provenance](https://slsa.dev/provenance/v0.2) attestations. For more information around the verification of this, please refer to the [`slsa-verifier` documentation](https://github.com/slsa-framework/slsa-verifier#containers).

#### Software Bill of Materials

The Software Bill of Materials (SBOM) for each binary is accessible within the artifacts enclosed with this release. It is presented as an [SPDX](https://spdx.dev/) JSON file, formatted as `<binary>.spdx.sbom.json`.

#### What's Changed

-   build(deps): Bump alpine from 3.18 to 3.21 in /.release in the docker group across 1 directory by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1700
-   Convert changelog to MarkDown by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1741
-   build(deps): Bump the go group with 7 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1743
-   build(deps): Bump the go group with 9 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1745
-   build(deps): Bump the rust group in /functional-tests with 2 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1744
-   build(deps): Bump github/codeql-action from 3.28.5 to 3.28.8 in the ci group by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1746
-   build(deps): Bump the go group with 12 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1751
-   build(deps): Bump the ci group with 4 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1750
-   Add --input-type option for filestatus subcommand by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1601
-   Use SOPS_EDITOR before EDITOR by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1611
-   Allow users to disable version check via environment variable by [@&#8203;nicklasfrahm](https://github.com/nicklasfrahm) in getsops/sops#1684
-   add duplicate section support to ini store by [@&#8203;reindlt](https://github.com/reindlt) in getsops/sops#1452
-   stores: test for duplicate keys, reserve keyword (yaml only now) by [@&#8203;holiman](https://github.com/holiman) in getsops/sops#1203
-   Add same process option for exec-env by [@&#8203;ricmatsui](https://github.com/ricmatsui) in getsops/sops#880
-   outputs: add trailing newline at the end of JSON files by [@&#8203;duthils](https://github.com/duthils) in getsops/sops#1476
-   set subcommand: add --idempotent flag that will not write the file if no change happened by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1754
-   Encrypt and decrypt time.Time objects by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1759
-   build(deps): Bump the go group with 8 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1763
-   build(deps): Bump tempfile from 3.16.0 to 3.17.0 in /functional-tests in the rust group by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1762
-   build(deps): Bump goreleaser/goreleaser-action from 6.1.0 to 6.2.1 in the ci group by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1761
-   fix(docs): typo in README.rst by [@&#8203;Paredev](https://github.com/Paredev) in getsops/sops#1765
-   Add SSH support for age by [@&#8203;haoqixu](https://github.com/haoqixu) in getsops/sops#1692
-   make sure that tests do not pick keys.txt from user's HOME dir by [@&#8203;tomaszduda23](https://github.com/tomaszduda23) in getsops/sops#1766
-   support for age identity with passphrase by [@&#8203;tomaszduda23](https://github.com/tomaszduda23) in getsops/sops#1400
-   build(deps): Bump the rust group in /functional-tests with 4 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1768
-   build(deps): Bump the go group with 12 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1769
-   build(deps): Bump the ci group with 4 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1770
-   build(deps): Bump github.com/go-jose/go-jose/v4 from 4.0.4 to 4.0.5 by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1773
-   feat: add age plugin support by [@&#8203;brianmcgee](https://github.com/brianmcgee) in getsops/sops#1641
-   Check GnuPG decryption result for non-empty size by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1776
-   vendored age code: consolidate passphrase reading functionality by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1775
-   Allow to encrypt and decrypt from stdin by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1690
-   build(deps): Bump the go group with 11 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1784
-   build(deps): Bump the ci group with 5 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1782
-   build(deps): Bump serde_json from 1.0.139 to 1.0.140 in /functional-tests in the rust group; bump Rust to 1.85.0 by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1783
-   build(deps): Bump the go group with 13 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1797
-   build(deps): Bump the rust group in /functional-tests with 3 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1796
-   build(deps): Bump github/codeql-action from 3.28.10 to 3.28.11 in the ci group by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1795
-   build(deps): Bump the go group with 6 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1802
-   build(deps): Bump tempfile from 3.18.0 to 3.19.0 in /functional-tests in the rust group by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1800
-   build(deps): Bump docker/login-action from 3.3.0 to 3.4.0 in the ci group by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1801
-   build(deps): Bump github.com/golang-jwt/jwt/v5 from 5.2.1 to 5.2.2 by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1806
-   goreleaser: add windows arm64 by [@&#8203;duthils](https://github.com/duthils) in getsops/sops#1791
-   Add a way to set sops config location via envvar by [@&#8203;sledzikowy](https://github.com/sledzikowy) in getsops/sops#1701
-   build(deps): Bump the go group with 3 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1809
-   build(deps): Bump the ci group with 5 updates by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1808
-   build(deps): Bump tempfile from 3.19.0 to 3.19.1 in /functional-tests in the rust group by [@&#8203;dependabot](https://github.com/dependabot) in getsops/sops#1807
-   Support --config option in publish subcommand by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1779
-   Fix caching of Metadata.DataKey by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1781
-   Lint by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1780
-   updatekeys subcommand: rename GroupQuorum to ShamirThreshold by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1631
-   If --filename-override is specified, convert it to an absolute path same as regular filenames by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1793
-   Add support for `oauth2.TokenSource` in GCP KMS by [@&#8203;matheuscscp](https://github.com/matheuscscp) in getsops/sops#1794
-   Added SOPS_AGE_KEY_CMD option to age, fixes [#&#8203;1323](getsops/sops#1323) by [@&#8203;danilobuerger](https://github.com/danilobuerger) in getsops/sops#1811
-   chore: omitempty metadata to reduce the size of stored config by [@&#8203;cgetzen](https://github.com/cgetzen) in getsops/sops#1571
-   Improve Shamir Secret Sharing code by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1813
-   Update all dependencies by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1814
-   Run 'gofmt -w' on all .go files by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1817
-   Add option to explicitly check for the latest version; deprecate current default of always doing that unless disabled by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1816
-   Build using Go 1.24 and drop support for 1.22 by [@&#8203;hiddeco](https://github.com/hiddeco) in getsops/sops#1819
-   Support `GOOGLE_OAUTH_ACCESS_TOKEN` for Google Cloud Platform  by [@&#8203;marensofier](https://github.com/marensofier) in getsops/sops#1578
-   Warn about `.sops.yml` files found while searching for `.sops.yaml` by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1820
-   Release 3.10.0 by [@&#8203;felixfontein](https://github.com/felixfontein) in getsops/sops#1815
-   Added support for multiarch windows release binaries by [@&#8203;sabre1041](https://github.com/sabre1041) in getsops/sops#1823

#### New Contributors

-   [@&#8203;reindlt](https://github.com/reindlt) made their first contribution in getsops/sops#1452
-   [@&#8203;ricmatsui](https://github.com/ricmatsui) made their first contribution in getsops/sops#880
-   [@&#8203;Paredev](https://github.com/Paredev) made their first contribution in getsops/sops#1765
-   [@&#8203;haoqixu](https://github.com/haoqixu) made their first contribution in getsops/sops#1692
-   [@&#8203;brianmcgee](https://github.com/brianmcgee) made their first contribution in getsops/sops#1641
-   [@&#8203;sledzikowy](https://github.com/sledzikowy) made their first contribution in getsops/sops#1701
-   [@&#8203;matheuscscp](https://github.com/matheuscscp) made their first contribution in getsops/sops#1794
-   [@&#8203;danilobuerger](https://github.com/danilobuerger) made their first contribution in getsops/sops#1811
-   [@&#8203;cgetzen](https://github.com/cgetzen) made their first contribution in getsops/sops#1571
-   [@&#8203;marensofier](https://github.com/marensofier) made their first contribution in getsops/sops#1578
-   [@&#8203;sabre1041](https://github.com/sabre1041) made their first contribution in getsops/sops#1823

**Full Changelog**: getsops/sops@v3.9.4...v3.10.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMjIuMyIsInVwZGF0ZWRJblZlciI6IjM5LjI0MC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJSZW5vdmF0ZSBCb3QiXX0=-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Adding support for ssh keys for encryption.
4 participants