mirror of
https://github.com/kairos-io/kcrypt-challenger.git
synced 2025-09-25 04:17:29 +00:00
Small refactorings (renaming vars, create constants etc)
Signed-off-by: Ettore Di Giacinto <ettore@spectrocloud.com>
This commit is contained in:
committed by
Ettore Di Giacinto
parent
91c24586ea
commit
8898eb8ae9
@@ -12,6 +12,8 @@ import (
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
const DefaultNVIndex = "0x1500000"
|
||||
|
||||
func getPass(server string, partition *block.Partition) (string, bool, error) {
|
||||
msg, err := tpm.Get(server,
|
||||
tpm.WithAdditionalHeader("label", partition.Label),
|
||||
@@ -48,7 +50,7 @@ func genAndStore(k Config) (string, error) {
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
nvindex := "0x1500000"
|
||||
nvindex := DefaultNVIndex
|
||||
if k.Kcrypt.Challenger.NVIndex != "" {
|
||||
nvindex = k.Kcrypt.Challenger.NVIndex
|
||||
}
|
||||
@@ -57,7 +59,7 @@ func genAndStore(k Config) (string, error) {
|
||||
}
|
||||
|
||||
func localPass(k Config) (string, error) {
|
||||
index := "0x1500000"
|
||||
index := DefaultNVIndex
|
||||
if k.Kcrypt.Challenger.NVIndex != "" {
|
||||
index = k.Kcrypt.Challenger.NVIndex
|
||||
}
|
||||
|
@@ -15,6 +15,7 @@ import (
|
||||
"github.com/kairos-io/kairos-challenger/controllers"
|
||||
tpm "github.com/kairos-io/tpm-helpers"
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/client-go/kubernetes"
|
||||
|
||||
@@ -113,7 +114,7 @@ func Start(ctx context.Context, kclient *kubernetes.Clientset, reconciler *contr
|
||||
continue
|
||||
}
|
||||
|
||||
sealedVolumeData := findSecretFor(PassphraseRequestData{
|
||||
sealedVolumeData := findVolumeFor(PassphraseRequestData{
|
||||
TPMHash: hashEncoded,
|
||||
Label: label,
|
||||
DeviceName: name,
|
||||
@@ -143,6 +144,11 @@ func Start(ctx context.Context, kclient *kubernetes.Clientset, reconciler *contr
|
||||
}
|
||||
_, err := kclient.CoreV1().Secrets(namespace).Get(ctx, secretName, v1.GetOptions{})
|
||||
if err != nil {
|
||||
if !apierrors.IsNotFound(err) {
|
||||
fmt.Printf("Failed getting secret: %s\n", err.Error())
|
||||
continue
|
||||
}
|
||||
|
||||
secret := corev1.Secret{
|
||||
TypeMeta: v1.TypeMeta{
|
||||
Kind: "Secret",
|
||||
@@ -199,7 +205,7 @@ func Start(ctx context.Context, kclient *kubernetes.Clientset, reconciler *contr
|
||||
return
|
||||
}
|
||||
|
||||
sealedVolumeData := findSecretFor(PassphraseRequestData{
|
||||
sealedVolumeData := findVolumeFor(PassphraseRequestData{
|
||||
TPMHash: hashEncoded,
|
||||
Label: label,
|
||||
DeviceName: name,
|
||||
@@ -230,10 +236,10 @@ func Start(ctx context.Context, kclient *kubernetes.Clientset, reconciler *contr
|
||||
secret, err := kclient.CoreV1().Secrets(namespace).Get(ctx, secretName, v1.GetOptions{})
|
||||
if err == nil {
|
||||
passphrase := secret.Data[secretPath]
|
||||
gen, generated := secret.Data[constants.GeneratedByKey]
|
||||
generatedBy, generated := secret.Data[constants.GeneratedByKey]
|
||||
result := map[string]string{"passphrase": string(passphrase)}
|
||||
if generated {
|
||||
result[constants.GeneratedByKey] = string(gen)
|
||||
result[constants.GeneratedByKey] = string(generatedBy)
|
||||
}
|
||||
err = json.NewEncoder(writer).Encode(result)
|
||||
if err != nil {
|
||||
@@ -277,7 +283,7 @@ func Start(ctx context.Context, kclient *kubernetes.Clientset, reconciler *contr
|
||||
}()
|
||||
}
|
||||
|
||||
func findSecretFor(requestData PassphraseRequestData, volumeList *keyserverv1alpha1.SealedVolumeList) *SealedVolumeData {
|
||||
func findVolumeFor(requestData PassphraseRequestData, volumeList *keyserverv1alpha1.SealedVolumeList) *SealedVolumeData {
|
||||
for _, v := range volumeList.Items {
|
||||
if requestData.TPMHash == v.Spec.TPMHash {
|
||||
for _, p := range v.Spec.Partitions {
|
||||
|
@@ -38,7 +38,7 @@ var _ = Describe("challenger", func() {
|
||||
})
|
||||
|
||||
It("returns the sealed volume data", func() {
|
||||
volumeData := findSecretFor(requestData, volumeList)
|
||||
volumeData := findVolumeFor(requestData, volumeList)
|
||||
Expect(volumeData).ToNot(BeNil())
|
||||
Expect(volumeData.Quarantined).To(BeFalse())
|
||||
Expect(volumeData.SecretName).To(Equal("the_secret"))
|
||||
@@ -67,7 +67,7 @@ var _ = Describe("challenger", func() {
|
||||
})
|
||||
|
||||
It("doesn't match a request with an empty field", func() {
|
||||
volumeData := findSecretFor(requestData, volumeList)
|
||||
volumeData := findVolumeFor(requestData, volumeList)
|
||||
Expect(volumeData).To(BeNil())
|
||||
})
|
||||
})
|
||||
@@ -86,7 +86,7 @@ var _ = Describe("challenger", func() {
|
||||
})
|
||||
|
||||
It("returns the sealed volume data", func() {
|
||||
volumeData := findSecretFor(requestData, volumeList)
|
||||
volumeData := findVolumeFor(requestData, volumeList)
|
||||
Expect(volumeData).ToNot(BeNil())
|
||||
Expect(volumeData.Quarantined).To(BeFalse())
|
||||
Expect(volumeData.SecretName).To(Equal("the_secret"))
|
||||
@@ -108,7 +108,7 @@ var _ = Describe("challenger", func() {
|
||||
})
|
||||
|
||||
It("returns the sealed volume data", func() {
|
||||
volumeData := findSecretFor(requestData, volumeList)
|
||||
volumeData := findVolumeFor(requestData, volumeList)
|
||||
Expect(volumeData).ToNot(BeNil())
|
||||
Expect(volumeData.Quarantined).To(BeFalse())
|
||||
Expect(volumeData.SecretName).To(Equal("the_secret"))
|
||||
@@ -130,7 +130,7 @@ var _ = Describe("challenger", func() {
|
||||
})
|
||||
|
||||
It("returns nil sealedVolumeData", func() {
|
||||
volumeData := findSecretFor(requestData, volumeList)
|
||||
volumeData := findVolumeFor(requestData, volumeList)
|
||||
Expect(volumeData).To(BeNil())
|
||||
})
|
||||
})
|
||||
|
Reference in New Issue
Block a user