Skip to content

Commit cdb43f1

Browse files
committed
misc: add test case for invalid tag signature
Signed-off-by: Hidde Beydals <[email protected]>
1 parent 2023081 commit cdb43f1

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

internal/controller/gitrepository_controller_test.go

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1849,6 +1849,41 @@ func TestGitRepositoryReconciler_verifySignature(t *testing.T) {
18491849
*conditions.FalseCondition(sourcev1.SourceVerifiedCondition, "InvalidCommitSignature", "signature verification of commit 'shasum' failed: unable to verify Git commit: unable to verify payload with any of the given key rings"),
18501850
},
18511851
},
1852+
{
1853+
name: "Invalid tag signature with mode=tag makes SourceVerifiedCondition=False",
1854+
secret: &corev1.Secret{
1855+
ObjectMeta: metav1.ObjectMeta{
1856+
Name: "existing",
1857+
},
1858+
Data: map[string][]byte{
1859+
"foo": []byte(armoredKeyRingFixture),
1860+
},
1861+
},
1862+
commit: git.Commit{
1863+
ReferencingTag: &git.Tag{
1864+
Name: "v0.1.0",
1865+
Hash: []byte("shasum"),
1866+
Encoded: []byte(malformedEncodedTagFixture),
1867+
Signature: signatureTagFixture,
1868+
},
1869+
},
1870+
beforeFunc: func(obj *sourcev1.GitRepository) {
1871+
obj.Spec.Reference = &sourcev1.GitRepositoryRef{
1872+
Tag: "v0.1.0",
1873+
}
1874+
obj.Spec.Interval = metav1.Duration{Duration: interval}
1875+
obj.Spec.Verification = &sourcev1.GitRepositoryVerification{
1876+
Mode: sourcev1.ModeGitTag,
1877+
SecretRef: meta.LocalObjectReference{
1878+
Name: "existing",
1879+
},
1880+
}
1881+
},
1882+
wantErr: true,
1883+
assertConditions: []metav1.Condition{
1884+
*conditions.FalseCondition(sourcev1.SourceVerifiedCondition, "InvalidTagSignature", "signature verification of tag 'v0.1.0@shasum' failed: unable to verify Git tag: unable to verify payload with any of the given key rings"),
1885+
},
1886+
},
18521887
{
18531888
name: "Invalid PGP key makes SourceVerifiedCondition=False and returns error",
18541889
secret: &corev1.Secret{

0 commit comments

Comments
 (0)