Fix after bad merge of secure value store
This commit is contained in:
@@ -105,9 +105,9 @@ func (s *SecureValueRest) List(ctx context.Context, options *internalversion.Lis
|
||||
fieldSelector = fields.Everything()
|
||||
}
|
||||
|
||||
allowedSecureValues := make([]secretv0alpha1.SecureValue, 0, len(secureValueList))
|
||||
allowedSecureValues := make([]secretv0alpha1.SecureValue, 0, len(secureValueList.Items))
|
||||
|
||||
for _, secureValue := range secureValueList {
|
||||
for _, secureValue := range secureValueList.Items {
|
||||
// Filter by label
|
||||
if labelSelector.Matches(labels.Set(secureValue.Labels)) {
|
||||
// Filter by status.phase
|
||||
|
||||
@@ -33,15 +33,6 @@ var (
|
||||
sqlSecureValueUpdateStatus = mustTemplate("secure_value_updateStatus.sql")
|
||||
sqlSecureValueReadForDecrypt = mustTemplate("secure_value_read_for_decrypt.sql")
|
||||
|
||||
sqlSecureValueRead = mustTemplate("secure_value_read.sql")
|
||||
sqlSecureValueList = mustTemplate("secure_value_list.sql")
|
||||
sqlSecureValueCreate = mustTemplate("secure_value_create.sql")
|
||||
sqlSecureValueDelete = mustTemplate("secure_value_delete.sql")
|
||||
sqlSecureValueUpdate = mustTemplate("secure_value_update.sql")
|
||||
sqlSecureValueUpdateExternalId = mustTemplate("secure_value_updateExternalId.sql")
|
||||
sqlSecureValueUpdateStatus = mustTemplate("secure_value_updateStatus.sql")
|
||||
sqlSecureValueReadForDecrypt = mustTemplate("secure_value_read_for_decrypt.sql")
|
||||
|
||||
sqlSecureValueOutboxAppend = mustTemplate("secure_value_outbox_append.sql")
|
||||
sqlSecureValueOutboxReceiveN = mustTemplate("secure_value_outbox_receiveN.sql")
|
||||
sqlSecureValueOutboxDelete = mustTemplate("secure_value_outbox_delete.sql")
|
||||
|
||||
@@ -302,189 +302,6 @@ func TestSecureValueQueries(t *testing.T) {
|
||||
})
|
||||
}
|
||||
|
||||
func TestSecureValueQueries(t *testing.T) {
|
||||
mocks.CheckQuerySnapshots(t, mocks.TemplateTestSetup{
|
||||
RootDir: "testdata",
|
||||
Templates: map[*template.Template][]mocks.TemplateTestCase{
|
||||
sqlSecureValueRead: {
|
||||
{
|
||||
Name: "read",
|
||||
Data: &readSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "read-for-update",
|
||||
Data: &readSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
IsForUpdate: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
sqlSecureValueList: {
|
||||
{
|
||||
Name: "list",
|
||||
Data: &listSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Namespace: "ns",
|
||||
},
|
||||
},
|
||||
},
|
||||
sqlSecureValueCreate: {
|
||||
{
|
||||
Name: "create-null",
|
||||
Data: &createSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Row: &secureValueDB{
|
||||
GUID: "abc",
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
Annotations: `{"x":"XXXX"}`,
|
||||
Labels: `{"a":"AAA", "b", "BBBB"}`,
|
||||
Created: 1234,
|
||||
CreatedBy: "user:ryan",
|
||||
Updated: 5678,
|
||||
UpdatedBy: "user:cameron",
|
||||
Phase: "creating",
|
||||
Message: toNullString(nil),
|
||||
Description: "description",
|
||||
Keeper: toNullString(nil),
|
||||
Decrypters: toNullString(nil),
|
||||
Ref: toNullString(nil),
|
||||
ExternalID: "extId",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "create-not-null",
|
||||
Data: &createSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Row: &secureValueDB{
|
||||
GUID: "abc",
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
Annotations: `{"x":"XXXX"}`,
|
||||
Labels: `{"a":"AAA", "b", "BBBB"}`,
|
||||
Created: 1234,
|
||||
CreatedBy: "user:ryan",
|
||||
Updated: 5678,
|
||||
UpdatedBy: "user:cameron",
|
||||
Phase: "creating",
|
||||
Message: toNullString(ptr.To("message_test")),
|
||||
Description: "description",
|
||||
Keeper: toNullString(ptr.To("keeper_test")),
|
||||
Decrypters: toNullString(ptr.To("decrypters_test")),
|
||||
Ref: toNullString(ptr.To("ref_test")),
|
||||
ExternalID: "extId",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
sqlSecureValueDelete: {
|
||||
{
|
||||
Name: "delete",
|
||||
Data: &deleteSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
},
|
||||
},
|
||||
},
|
||||
sqlSecureValueUpdate: {
|
||||
{
|
||||
Name: "update-null",
|
||||
Data: &updateSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
Row: &secureValueDB{
|
||||
GUID: "abc",
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
Annotations: `{"x":"XXXX"}`,
|
||||
Labels: `{"a":"AAA", "b", "BBBB"}`,
|
||||
Created: 1234,
|
||||
CreatedBy: "user:ryan",
|
||||
Updated: 5678,
|
||||
UpdatedBy: "user:cameron",
|
||||
Phase: "creating",
|
||||
Message: toNullString(nil),
|
||||
Description: "description",
|
||||
Keeper: toNullString(nil),
|
||||
Decrypters: toNullString(nil),
|
||||
Ref: toNullString(nil),
|
||||
ExternalID: "extId",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "update-not-null",
|
||||
Data: &updateSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
Row: &secureValueDB{
|
||||
GUID: "abc",
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
Annotations: `{"x":"XXXX"}`,
|
||||
Labels: `{"a":"AAA", "b", "BBBB"}`,
|
||||
Created: 1234,
|
||||
CreatedBy: "user:ryan",
|
||||
Updated: 5678,
|
||||
UpdatedBy: "user:cameron",
|
||||
Phase: "creating",
|
||||
Message: toNullString(ptr.To("message_test")),
|
||||
Description: "description",
|
||||
Keeper: toNullString(ptr.To("keeper_test")),
|
||||
Decrypters: toNullString(ptr.To("decrypters_test")),
|
||||
Ref: toNullString(ptr.To("ref_test")),
|
||||
ExternalID: "extId",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
sqlSecureValueUpdateExternalId: {
|
||||
{
|
||||
Name: "updateExternalId",
|
||||
Data: &updateExternalIdSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
ExternalID: "extId",
|
||||
},
|
||||
},
|
||||
},
|
||||
sqlSecureValueUpdateStatus: {
|
||||
{
|
||||
Name: "updateStatus",
|
||||
Data: &updateStatusSecureValue{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
Phase: "Succeeded",
|
||||
Message: "message-1",
|
||||
},
|
||||
},
|
||||
},
|
||||
sqlSecureValueReadForDecrypt: {
|
||||
{
|
||||
Name: "read-for-decrypt",
|
||||
Data: &readSecureValueForDecrypt{
|
||||
SQLTemplate: mocks.NewTestingSQLTemplate(),
|
||||
Name: "name",
|
||||
Namespace: "ns",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
func TestSecureValueOutboxQueries(t *testing.T) {
|
||||
mocks.CheckQuerySnapshots(t, mocks.TemplateTestSetup{
|
||||
RootDir: "testdata",
|
||||
|
||||
@@ -118,36 +118,6 @@ func (*SecretDB) AddMigration(mg *migrator.Migrator) {
|
||||
Indices: []*migrator.Index{}, // TODO: add indexes based on the queries we make.
|
||||
})
|
||||
|
||||
tables = append(tables, migrator.Table{
|
||||
Name: TableNameSecureValue,
|
||||
Columns: []*migrator.Column{
|
||||
// Kubernetes Metadata
|
||||
{Name: "guid", Type: migrator.DB_NVarchar, Length: 36, IsPrimaryKey: true}, // Fixed size of a UUID.
|
||||
{Name: "name", Type: migrator.DB_NVarchar, Length: 253, Nullable: false}, // Limit enforced by K8s.
|
||||
{Name: "namespace", Type: migrator.DB_NVarchar, Length: 253, Nullable: false}, // Limit enforced by K8s.
|
||||
{Name: "annotations", Type: migrator.DB_Text, Nullable: true},
|
||||
{Name: "labels", Type: migrator.DB_Text, Nullable: true},
|
||||
{Name: "created", Type: migrator.DB_BigInt, Nullable: false},
|
||||
{Name: "created_by", Type: migrator.DB_Text, Nullable: false},
|
||||
{Name: "updated", Type: migrator.DB_BigInt, Nullable: false}, // Used as RV (ResourceVersion)
|
||||
{Name: "updated_by", Type: migrator.DB_Text, Nullable: false},
|
||||
|
||||
// Kubernetes Status
|
||||
{Name: "status_phase", Type: migrator.DB_Text, Nullable: false},
|
||||
{Name: "status_message", Type: migrator.DB_Text, Nullable: true},
|
||||
|
||||
// Spec
|
||||
{Name: "description", Type: migrator.DB_NVarchar, Length: 253, Nullable: false}, // Chosen arbitrarily, but should be enough.
|
||||
{Name: "keeper", Type: migrator.DB_NVarchar, Length: 253, Nullable: true}, // Keeper name, if not set, use default keeper.
|
||||
{Name: "decrypters", Type: migrator.DB_Text, Nullable: true},
|
||||
{Name: "ref", Type: migrator.DB_NVarchar, Length: 1024, Nullable: true}, // Reference to third-party storage secret path.Chosen arbitrarily, but should be enough.
|
||||
{Name: "external_id", Type: migrator.DB_Text, Nullable: false},
|
||||
},
|
||||
Indices: []*migrator.Index{
|
||||
{Cols: []string{"namespace", "name"}, Type: migrator.UniqueIndex},
|
||||
},
|
||||
})
|
||||
|
||||
tables = append(tables, migrator.Table{
|
||||
Name: TableNameEncryptedValue,
|
||||
Columns: []*migrator.Column{
|
||||
|
||||
Reference in New Issue
Block a user