rewrote packages

keyservice
joinservice
upgrade-agent
measurement-reader
debugd
disk-mapper

rewrote joinservice main

rewrote some unit tests

rewrote upgrade-agent + some grpc functions

rewrote measurement-reader

rewrote debugd

removed unused import

removed forgotten zap reference in measurements reader

rewrote disk-mapper + tests

rewrote packages

verify
disk-mapper
malicious join
bootstrapper
attestationconfigapi
versionapi
internal/cloud/azure
disk-mapper tests
image/upload/internal/cmd

rewrote verify (WIP with loglevel increase)

rewrote forgotten zap references in disk-mapper

rewrote malicious join

rewrote bootstrapper

rewrote parts of internal/

rewrote attestationconfigapi (WIP)

rewrote versionapi cli

rewrote internal/cloud/azure

rewrote disk-mapper tests (untested by me rn)

rewrote image/upload/internal/cmd

removed forgotten zap references in verify/cmd

rewrote packages

hack/oci-pin
hack/qemu-metadata-api
debugd/internal/debugd/deploy
hack/bazel-deps-mirror
cli/internal/cmd
cli-k8s-compatibility

rewrote hack/qemu-metadata-api/server

rewrote debugd/internal/debugd/deploy

rewrote hack/bazel-deps-mirror

rewrote rest of hack/qemu-metadata-api

rewrote forgotten zap references in joinservice server

rewrote cli/internal/cmd

rewrote cli-k8s-compatibility

rewrote packages

internal/staticupload
e2d/internal/upgrade
internal/constellation/helm
internal/attestation/aws/snp
internal/attestation/azure/trustedlaunch
joinservice/internal/certcache/amkds

some missed unit tests

rewrote e2e/internal/upgrade

rewrote internal/constellation/helm

internal/attestation/aws/snp

internal/attestation/azure/trustedlaunch

joinservice/internal/certcache/amkds

search and replace test logging over all left *_test.go
This commit is contained in:
miampf 2023-12-29 15:18:59 +01:00
parent 48d5a157dd
commit f16ccf5679
No known key found for this signature in database
GPG key ID: 376EAC0E5307A669
158 changed files with 3400 additions and 1278 deletions

View file

@ -10,6 +10,7 @@ import (
"context"
"encoding/hex"
"io"
"log/slog"
"net/http"
"net/url"
"regexp"
@ -18,9 +19,7 @@ import (
"time"
"github.com/aws/aws-sdk-go-v2/service/s3"
"github.com/edgelesssys/constellation/v2/internal/logger"
"github.com/edgelesssys/constellation/v2/s3proxy/internal/crypto"
"go.uber.org/zap"
)
const (
@ -46,12 +45,12 @@ type object struct {
sseCustomerAlgorithm string
sseCustomerKey string
sseCustomerKeyMD5 string
log *logger.Logger
log *slog.Logger
}
// get is a http.HandlerFunc that implements the GET method for objects.
func (o object) get(w http.ResponseWriter, r *http.Request) {
o.log.With(zap.String("key", o.key), zap.String("host", o.bucket)).Debugf("getObject")
o.log.With(slog.String("key", o.key), slog.String("host", o.bucket)).Debug("getObject")
versionID, ok := o.query["versionId"]
if !ok {
@ -61,7 +60,7 @@ func (o object) get(w http.ResponseWriter, r *http.Request) {
output, err := o.client.GetObject(r.Context(), o.bucket, o.key, versionID[0], o.sseCustomerAlgorithm, o.sseCustomerKey, o.sseCustomerKeyMD5)
if err != nil {
// log with Info as it might be expected behavior (e.g. object not found).
o.log.With(zap.Error(err)).Errorf("GetObject sending request to S3")
o.log.With(slog.Any("error", err)).Error("GetObject sending request to S3")
// We want to forward error codes from the s3 API to clients as much as possible.
code := parseErrorCode(err)
@ -107,7 +106,7 @@ func (o object) get(w http.ResponseWriter, r *http.Request) {
body, err := io.ReadAll(output.Body)
if err != nil {
o.log.With(zap.Error(err)).Errorf("GetObject reading S3 response")
o.log.With(slog.Any("error", err)).Error("GetObject reading S3 response")
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
@ -117,14 +116,14 @@ func (o object) get(w http.ResponseWriter, r *http.Request) {
if ok {
encryptedDEK, err := hex.DecodeString(rawEncryptedDEK)
if err != nil {
o.log.Errorf("GetObject decoding DEK", "error", err)
o.log.Error("GetObject decoding DEK", "error", err)
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
plaintext, err = crypto.Decrypt(body, encryptedDEK, o.kek)
if err != nil {
o.log.With(zap.Error(err)).Errorf("GetObject decrypting response")
o.log.With(slog.Any("error", err)).Error("GetObject decrypting response")
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
@ -132,7 +131,7 @@ func (o object) get(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusOK)
if _, err := w.Write(plaintext); err != nil {
o.log.With(zap.Error(err)).Errorf("GetObject sending response")
o.log.With(slog.Any("error", err)).Error("GetObject sending response")
}
}
@ -140,7 +139,7 @@ func (o object) get(w http.ResponseWriter, r *http.Request) {
func (o object) put(w http.ResponseWriter, r *http.Request) {
ciphertext, encryptedDEK, err := crypto.Encrypt(o.data, o.kek)
if err != nil {
o.log.With(zap.Error(err)).Errorf("PutObject")
o.log.With(slog.Any("error", err)).Error("PutObject")
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
@ -148,7 +147,7 @@ func (o object) put(w http.ResponseWriter, r *http.Request) {
output, err := o.client.PutObject(r.Context(), o.bucket, o.key, o.tags, o.contentType, o.objectLockLegalHoldStatus, o.objectLockMode, o.sseCustomerAlgorithm, o.sseCustomerKey, o.sseCustomerKeyMD5, o.objectLockRetainUntilDate, o.metadata, ciphertext)
if err != nil {
o.log.With(zap.Error(err)).Errorf("PutObject sending request to S3")
o.log.With(slog.Any("error", err)).Error("PutObject sending request to S3")
// We want to forward error codes from the s3 API to clients whenever possible.
code := parseErrorCode(err)
@ -199,7 +198,7 @@ func (o object) put(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusOK)
if _, err := w.Write(nil); err != nil {
o.log.With(zap.Error(err)).Errorf("PutObject sending response")
o.log.With(slog.Any("error", err)).Error("PutObject sending response")
}
}