Skip to content
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

keyservices: address logging regression #1281

Merged
merged 1 commit into from
Sep 13, 2023
Merged

keyservices: address logging regression #1281

merged 1 commit into from
Sep 13, 2023

Conversation

hiddeco
Copy link
Member

@hiddeco hiddeco commented Sep 12, 2023

Replace the logging of failed encryption and decryption attempts from
error to info level.

This to address a regression in which an encryption or decryption
attempt with a series of keys would result in a list of failed attempts
logged to stderr even when the operation itself eventually succeeded.

xref: #1270 (comment)

@hiddeco hiddeco requested a review from a team September 12, 2023 22:00
@hiddeco hiddeco added the bug label Sep 12, 2023
@hiddeco hiddeco added this to the v3.8.0 milestone Sep 12, 2023
Copy link
Contributor

@devstein devstein left a comment

Choose a reason for hiding this comment

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

LGTM

Replace the logging of failed encryption and decryption attempts from
error to info level.

This to address a regression in which an encryption or decryption
attempt with a series of keys would result in a list of failed attempts
logged to stderr even when the operation itself eventually succeeded.

Signed-off-by: Hidde Beydals <[email protected]>
@hiddeco hiddeco merged commit 9f80940 into main Sep 13, 2023
9 checks passed
@hiddeco hiddeco deleted the log-regression branch September 13, 2023 05:55
mergify bot referenced this pull request in dbsystel/cdk-sops-secrets Sep 21, 2023
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) | require | patch | `v1.45.10` -> `v1.45.14` |
| [go.mozilla.org/sops/v3](https://github.com/mozilla/sops) | require | minor | `v3.7.3` -> `v3.8.0` |

---

### Release Notes

<details>
<summary>aws/aws-sdk-go (github.com/aws/aws-sdk-go)</summary>

### [`v1.45.14`](https://github.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v14514-2023-09-20)

[Compare Source](https://github.com/aws/aws-sdk-go/compare/v1.45.13...v1.45.14)

\===

##### Service Client Updates

-   `service/appconfig`: Updates service API, documentation, and paginators
-   `service/apprunner`: Updates service API, documentation, and paginators
-   `service/codeartifact`: Updates service API
-   `service/kinesisvideo`: Updates service documentation
    -   Updated DescribeMediaStorageConfiguration, StartEdgeConfigurationUpdate, ImageGenerationConfiguration$SamplingInterval, and UpdateMediaStorageConfiguration to match AWS Docs.
-   `service/logs`: Updates service API and documentation
    -   Add ClientToken to QueryDefinition CFN Handler in CWL
-   `service/s3`: Updates service API, documentation, and examples
    -   Fix an issue where the SDK can fail to unmarshall response due to NumberFormatException
-   `service/servicediscovery`: Updates service API and documentation
-   `service/sso-oidc`: Adds new service

### [`v1.45.13`](https://github.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v14513-2023-09-19)

[Compare Source](https://github.com/aws/aws-sdk-go/compare/v1.45.12...v1.45.13)

\===

##### Service Client Updates

-   `service/ec2`: Updates service API
    -   This release adds support for C7i, and R7a instance types.
-   `service/outposts`: Updates service API and documentation
-   `service/sagemaker`: Updates service API and documentation
    -   This release adds support for one-time model monitoring schedules that are executed immediately without delay, explicit data analysis windows for model monitoring schedules and exclude features attributes to remove features from model monitor analysis.

### [`v1.45.12`](https://github.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v14512-2023-09-18)

[Compare Source](https://github.com/aws/aws-sdk-go/compare/v1.45.11...v1.45.12)

\===

##### Service Client Updates

-   `service/discovery`: Updates service API
    -   Add sensitive protection for customer information
-   `service/macie2`: Updates service documentation
-   `service/workmail`: Updates service API, documentation, and paginators
    -   This release includes four new APIs UpdateUser, UpdateGroup, ListGroupsForEntity and DescribeEntity, along with RemoteUsers and some enhancements to existing APIs.

### [`v1.45.11`](https://github.com/aws/aws-sdk-go/blob/HEAD/CHANGELOG.md#Release-v14511-2023-09-15)

[Compare Source](https://github.com/aws/aws-sdk-go/compare/v1.45.10...v1.45.11)

\===

##### Service Client Updates

-   `service/appstream`: Updates service API, documentation, and waiters
    -   This release introduces app block builder, allowing customers to provision a resource to package applications into an app block
-   `service/connect`: Updates service API
-   `service/datasync`: Updates service documentation
-   `service/sagemaker`: Updates service API and documentation
    -   This release introduces Skip Model Validation for Model Packages

</details>

<details>
<summary>mozilla/sops (go.mozilla.org/sops/v3)</summary>

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

[Compare Source](https://github.com/mozilla/sops/compare/v3.7.3...v3.8.0)

#### Note from the Maintainers

We are extremely happy to introduce this new minor release of SOPS, now a [CNCF](https://cncf.io) Sandbox project under the stewardship of a new [group of maintainers](https://github.com/getsops/community/blob/main/MAINTAINERS.md).

This release involved significant effort in rewriting and enhancing key source implementations, and includes a number of bug fixes which people had been patiently waiting on for a long period of time. In addition, the release process has been built up from scratch, and now now provides enhanced assurance by publishing SBOMs (Software Bill of Materials), [SLSA3 provenance attestations](https://slsa.dev/spec/v0.1/provenance) and a Cosign signed checksums file as release artifacts.

For a comprehensive list of changes, please refer to [`CHANGELOG.rst`](https://github.com/getsops/sops/blob/v3.8.0/CHANGELOG.rst).

##### Important Information for SOPS SDK Users

With the project transitioning from the Mozilla Foundation to the CNCF, the Go module path has been updated to reflect this change in ownership. If you use `go.mozilla.org/sops/v3` as a library, going forward, import the Go Module using `github.com/getsops/sops/v3`. Apart from this small adjustment, the SDK's API remains fully backward compatible.

For a one-liner to quickly implement this change throughout your codebase, please refer to: [https://github.com/getsops/sops/issues/1246#issuecomment-1625526429](https://github.com/getsops/sops/issues/1246#issuecomment-1625526429)

#### 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.8.0/sops-v3.8.0.linux.amd64

### Move the binary in to your PATH
mv sops-v3.8.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.8.0/sops-v3.8.0.checksums.txt
curl -LO https://github.com/getsops/sops/releases/download/v3.8.0/sops-v3.8.0.checksums.pem
curl -LO https://github.com/getsops/sops/releases/download/v3.8.0/sops-v3.8.0.checksums.sig

### Verify the checksums file
cosign verify-blob sops-v3.8.0.checksums.txt \
  --certificate sops-v3.8.0.checksums.pem \
  --signature sops-v3.8.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.8.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.8.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.8.0/sops-v3.8.0.intoto.jsonl

### Verify the provenance of the artifact
slsa-verifier verify-artifact <artifact> \
  --provenance-path sops-v3.8.0.intoto.jsonl \
  --source-uri github.com/getsops/sops \
  --source-tag v3.8.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.8.0`
-   `ghcr.io/getsops/sops:v3.8.0-alpine`

##### Quay.io

-   `quay.io/getsops/sops:v3.8.0`
-   `quay.io/getsops/sops:v3.8.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.8.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

-   chore: update dependencies by [@&#8203;hiddeco](https://github.com/hiddeco) in [https://github.com/getsops/sops/pull/1275](https://github.com/getsops/sops/pull/1275)
-   build: pin actions to full length commit SHA and add CodeQL by [@&#8203;hiddeco](https://github.com/hiddeco) in [https://github.com/getsops/sops/pull/1276](https://github.com/getsops/sops/pull/1276)
-   Enable Dependabot for Docker, GitHub Actions and Go Mod by [@&#8203;hiddeco](https://github.com/hiddeco) in [https://github.com/getsops/sops/pull/1277](https://github.com/getsops/sops/pull/1277)
-   build(deps): Bump the go group with 2 updates by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/getsops/sops/pull/1280](https://github.com/getsops/sops/pull/1280)
-   build(deps): Bump the ci group with 6 updates by [@&#8203;dependabot](https://github.com/dependabot) in [https://github.com/getsops/sops/pull/1279](https://github.com/getsops/sops/pull/1279)
-   release: generate versioned `.intoto.jsonl` by [@&#8203;hiddeco](https://github.com/hiddeco) in [https://github.com/getsops/sops/pull/1278](https://github.com/getsops/sops/pull/1278)
-   pgp: remove `DisableAgent` option by [@&#8203;hiddeco](https://github.com/hiddeco) in [https://github.com/getsops/sops/pull/1282](https://github.com/getsops/sops/pull/1282)
-   keyservices: address logging regression by [@&#8203;hiddeco](https://github.com/hiddeco) in [https://github.com/getsops/sops/pull/1281](https://github.com/getsops/sops/pull/1281)
-   chore: update dependencies by [@&#8203;hiddeco](https://github.com/hiddeco) in [https://github.com/getsops/sops/pull/1283](https://github.com/getsops/sops/pull/1283)
-   Prepare v3.8.0 by [@&#8203;hiddeco](https://github.com/hiddeco) in [https://github.com/getsops/sops/pull/1284](https://github.com/getsops/sops/pull/1284)

**Full Changelog**: getsops/sops@v3.8.0-rc.1...v3.8.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 PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/markussiebert/cdk-sops-secrets).
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.

3 participants