From c1c537ffba54565daceedb19a32485e1f424b92d Mon Sep 17 00:00:00 2001 From: Avi Vaid Date: Wed, 27 Jul 2016 17:01:54 -0700 Subject: [PATCH] added fixture with delegation as per @cyli's comment and tests to go with it Signed-off-by: Avi Vaid --- client/backwards_compatibility_test.go | 16 ++++++---- fixtures/compatibility/README.md | 24 +++++++++++--- ...d3915adfc2b6c2002ef4b2b4cafb1cf4838692.key | 9 ------ ...455a1e4d461639f5625418e76756fc5c948690.key | 9 ++++++ ...b29334ffbb98b2f4de05a9e40affa3688b04fa.key | 9 ------ ...497c8e3cc8bf4d530559d517a7456037c57554.key | 9 ------ ...4f4758269e120ff063b7bc78709272821a0a02.key | 9 ++++++ ...7ca6d128182bd1cfa8ede2c70761deac8bc2dc.key | 9 ++++++ ...89dcff0e3b0b93b73f8952491f6493199936d3.key | 31 +++++++++++++++++++ ...09ea116-9551-4a4c-83f3-ac8f6ec4f76c.change | 1 - .../notary0.3/samplerepo/metadata/root.json | 1 - .../samplerepo/metadata/snapshot.json | 1 - .../samplerepo/metadata/targets.json | 1 - .../samplerepo/metadata/timestamp.json | 1 - ...48d5486-7f39-42c6-80ab-c29bfb336e99.change | 1 + ...03d56d2-2e4e-4732-9d42-b6d5b9e1f48b.change | 1 + .../notary0.3/tst/metadata/root.json | 1 + .../notary0.3/tst/metadata/snapshot.json | 1 + .../notary0.3/tst/metadata/targets.json | 1 + .../tst/metadata/targets/releases.json | 1 + .../notary0.3/tst/metadata/timestamp.json | 1 + trustmanager/keystore.go | 4 ++- 22 files changed, 98 insertions(+), 43 deletions(-) delete mode 100755 fixtures/compatibility/notary0.3/private/root_keys/a9316b11307336232474e3f6c6d3915adfc2b6c2002ef4b2b4cafb1cf4838692.key create mode 100755 fixtures/compatibility/notary0.3/private/root_keys/f4eaf871a74aa3b3a0ff95cef2455a1e4d461639f5625418e76756fc5c948690.key delete mode 100755 fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/samplerepo/6fd86dc5beb889760ec56cefb4b29334ffbb98b2f4de05a9e40affa3688b04fa.key delete mode 100755 fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/samplerepo/e97dda6e8d9b5e3774422d230c497c8e3cc8bf4d530559d517a7456037c57554.key create mode 100755 fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/tst/041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02.key create mode 100755 fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/tst/85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc.key create mode 100755 fixtures/compatibility/notary0.3/private/tuf_keys/fa842f66cac2dc898677a8660789dcff0e3b0b93b73f8952491f6493199936d3.key delete mode 100644 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/changelist/01469482448239261819_609ea116-9551-4a4c-83f3-ac8f6ec4f76c.change delete mode 100755 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/root.json delete mode 100755 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/snapshot.json delete mode 100755 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/targets.json delete mode 100755 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/timestamp.json create mode 100644 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/changelist/01469661765810851111_248d5486-7f39-42c6-80ab-c29bfb336e99.change create mode 100644 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/changelist/01469661815470834910_e03d56d2-2e4e-4732-9d42-b6d5b9e1f48b.change create mode 100644 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/root.json create mode 100644 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/snapshot.json create mode 100644 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/targets.json create mode 100644 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/targets/releases.json create mode 100644 fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/timestamp.json diff --git a/client/backwards_compatibility_test.go b/client/backwards_compatibility_test.go index 649a93285e..5f2d63cb2a 100644 --- a/client/backwards_compatibility_test.go +++ b/client/backwards_compatibility_test.go @@ -140,8 +140,8 @@ func Test0Dot3RepoFormat(t *testing.T) { require.NoError(t, err) require.NoError(t, recursiveCopy("../fixtures/compatibility/notary0.3", tmpDir)) - gun := "docker.com/notary0.3/samplerepo" - passwd := "randompass" + gun := "docker.com/notary0.3/tst" + passwd := "password" ts := fullTestServer(t) defer ts.Close() @@ -153,8 +153,7 @@ func Test0Dot3RepoFormat(t *testing.T) { // targets should have 1 target, and it should be readable offline targets, err := repo.ListTargets() require.NoError(t, err) - require.Len(t, targets, 1) - require.Equal(t, "LICENSE", targets[0].Name) + require.Len(t, targets, 3) // ok, now that everything has been loaded, verify that the fixture is valid requireValidFixture(t, repo) @@ -171,7 +170,12 @@ func Test0Dot3RepoFormat(t *testing.T) { targets, err = repo.ListTargets() require.NoError(t, err) - require.Len(t, targets, 2) + require.Len(t, targets, 5) + // the changelist target/releases delegation will get published with the above publish + delegations, err := repo.GetDelegationRoles() + require.NoError(t, err) + require.Len(t, delegations, 1) + require.Equal(t, "targets/releases", delegations[0].Name) // Also check that we can add/remove keys by rotating keys oldTargetsKeys := repo.CryptoService.ListKeys(data.CanonicalTargetsRole) @@ -218,7 +222,7 @@ func TestDownloading0Dot1RepoFormat(t *testing.T) { // Ensures that the current client can download metadata that is published from notary 0.3 repos func TestDownloading0Dot3RepoFormat(t *testing.T) { - gun := "docker.com/notary0.3/samplerepo" + gun := "docker.com/notary0.3/tst" passwd := "randompass" metaCache, err := store.NewFilesystemStore( diff --git a/fixtures/compatibility/README.md b/fixtures/compatibility/README.md index 082a3442b9..cec9ec8250 100644 --- a/fixtures/compatibility/README.md +++ b/fixtures/compatibility/README.md @@ -20,12 +20,28 @@ Relevant information for repositories: - `notary0.3` - GUN: `docker.com/notary0.3/samplerepo` + - delegations: targets/releases - key passwords: "randompass" - targets: ``` - NAME DIGEST SIZE (BYTES) - --------------------------------------------------------------------------------------------- - LICENSE 9395bac6fccb26bcb55efb083d1b4b0fe72a1c25f959f056c016120b3bb56a62 11309 + NAME DIGEST SIZE (BYTES) ROLE + ---------------------------------------------------------------------------------------------------------------- + LICENSE 9395bac6fccb26bcb55efb083d1b4b0fe72a1c25f959f056c016120b3bb56a62 11309 targets + change e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 targets + hello e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 targets/releases ``` - - It also has a changelist to add a `change` target (an empty file), that hasn't been published to testing publish success. \ No newline at end of file + - Has a delegation key in the targets/releases role and a corresponding key imported + - It also has a changelist to add a `MAINTAINERS` target, that hasn't been published to testing publish success. + - It also has a changelist to add a `Dockerfile` target (an empty file) in the targets/releases role, that hasn't been published to testing publish success with a delegation. + - unpublished changes: + + ``` + Unpublished changes for docker.com/notary0.3/tst: + + action scope type path + ---------------------------------------------------- + create targets target MAINTAINERS + create targets/releasestarget Dockerfile + ``` + \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/private/root_keys/a9316b11307336232474e3f6c6d3915adfc2b6c2002ef4b2b4cafb1cf4838692.key b/fixtures/compatibility/notary0.3/private/root_keys/a9316b11307336232474e3f6c6d3915adfc2b6c2002ef4b2b4cafb1cf4838692.key deleted file mode 100755 index 9da29a703d..0000000000 --- a/fixtures/compatibility/notary0.3/private/root_keys/a9316b11307336232474e3f6c6d3915adfc2b6c2002ef4b2b4cafb1cf4838692.key +++ /dev/null @@ -1,9 +0,0 @@ ------BEGIN EC PRIVATE KEY----- -Proc-Type: 4,ENCRYPTED -DEK-Info: AES-256-CBC,cb82f4a419f31902ac3f6150caef2429 -role: root - -Jv5sFp9XOJiQdl5ME+dNb4qklGHoISIX+yuD7lF1YLfd8DT2Qnd00ycCDao9/i0i -Iettpfkszk3vW7kT9dkI9oXsLDs1Zj0+gjQfP3uij3siKvtYJ7mnhezLBEpf54UI -iRUz6abKgC33zJAZxk3/r5zdKlTrIxU6gYxXNW6QjdY= ------END EC PRIVATE KEY----- diff --git a/fixtures/compatibility/notary0.3/private/root_keys/f4eaf871a74aa3b3a0ff95cef2455a1e4d461639f5625418e76756fc5c948690.key b/fixtures/compatibility/notary0.3/private/root_keys/f4eaf871a74aa3b3a0ff95cef2455a1e4d461639f5625418e76756fc5c948690.key new file mode 100755 index 0000000000..e13d17e632 --- /dev/null +++ b/fixtures/compatibility/notary0.3/private/root_keys/f4eaf871a74aa3b3a0ff95cef2455a1e4d461639f5625418e76756fc5c948690.key @@ -0,0 +1,9 @@ +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: AES-256-CBC,cff71e822e527b0d56152dfcae5d8aee +role: root + +09tikBacrC5LlLEcHUQbrYpHwD2n1FCh283bvZRFd2JzgOem5mCi4Vte7Mv8juBx +KIludm/liDsATDleyTRUnDWvQL1SRCx6i3TL6pcXcgezbZ9KeA/SM+RBMdFNZM03 +GfkBHB099C1pYTq0d5fZTqilRlikq9eDTg3f5VXhnSg= +-----END EC PRIVATE KEY----- diff --git a/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/samplerepo/6fd86dc5beb889760ec56cefb4b29334ffbb98b2f4de05a9e40affa3688b04fa.key b/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/samplerepo/6fd86dc5beb889760ec56cefb4b29334ffbb98b2f4de05a9e40affa3688b04fa.key deleted file mode 100755 index 60690435f8..0000000000 --- a/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/samplerepo/6fd86dc5beb889760ec56cefb4b29334ffbb98b2f4de05a9e40affa3688b04fa.key +++ /dev/null @@ -1,9 +0,0 @@ ------BEGIN EC PRIVATE KEY----- -Proc-Type: 4,ENCRYPTED -DEK-Info: AES-256-CBC,445bb98ea30eb4c225e591f8a677b16c -role: snapshot - -dZqh9u/PbB5VZIjDCrYrfTIsiUCQV1T0JEzWDOZgwCjLMpetSYYlrsyEOPkpMceI -quO2A8DKBlytb7oFbsXjtJcT4r3vqupJraF7PA1QTDe0vvGaPqkizOqopTsV3uPz -BMrMNKmHmHeZUM5ScSC4EovlRVQa6GHa5ZuObP7kPWU= ------END EC PRIVATE KEY----- diff --git a/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/samplerepo/e97dda6e8d9b5e3774422d230c497c8e3cc8bf4d530559d517a7456037c57554.key b/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/samplerepo/e97dda6e8d9b5e3774422d230c497c8e3cc8bf4d530559d517a7456037c57554.key deleted file mode 100755 index 2b5c00d7d1..0000000000 --- a/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/samplerepo/e97dda6e8d9b5e3774422d230c497c8e3cc8bf4d530559d517a7456037c57554.key +++ /dev/null @@ -1,9 +0,0 @@ ------BEGIN EC PRIVATE KEY----- -Proc-Type: 4,ENCRYPTED -DEK-Info: AES-256-CBC,5b564dca585e856c193173b7ebb22374 -role: targets - -sx7qlfTaKuyIRspeyQUIYQMiWIJA2F1LTFzgVUUV/3CNDRVLrc92qcsgt/Iqqekf -iKoAE6eGM9VS6mweAMeyXZKjaBHgYGHUGmFQA3RlkLHYXC87BRPMsOZemiz/e18u -gRGLtKIi1wGN3UYMqG85T9jh2ZFqwhz7uq9uuI4H4hE= ------END EC PRIVATE KEY----- diff --git a/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/tst/041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02.key b/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/tst/041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02.key new file mode 100755 index 0000000000..60dec6e12d --- /dev/null +++ b/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/tst/041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02.key @@ -0,0 +1,9 @@ +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: AES-256-CBC,692438f652f088c478daf0e47373a9df +role: targets + +eibpR1uC1gNyfUcbM7ZHm6hh0N0en1fDg6NJxlPPER+PMRocazO+36CQMCCr2+kL +vWJHYEAvB+MYt6EUcTY8TNKI1obwZ6ypuxsw/ovJhZthdeJSW3A4TakH0zUEMpif +cYPV/uWXqc8WPUJi9VhcCxjUhxgBtEa4wXk89Wqnpo4= +-----END EC PRIVATE KEY----- diff --git a/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/tst/85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc.key b/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/tst/85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc.key new file mode 100755 index 0000000000..af6d71402c --- /dev/null +++ b/fixtures/compatibility/notary0.3/private/tuf_keys/docker.com/notary0.3/tst/85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc.key @@ -0,0 +1,9 @@ +-----BEGIN EC PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: AES-256-CBC,c2991dbcd2de915a8e325e5d89b66247 +role: snapshot + +EQCxj5WQrb46a8+JG1F//LXslfDru1sDj9ejRmXclLrt3lEgbKP4JVGH0iw/eDYA +nfwONgdoAq+8GcUikr1hG7KjrhW5PbFY53EeCJB4KTRhrkV0zGHgCyW0xnVSCLY8 +u/QyvMmxXGjKhHPlitXJvgblGytQp2tCvMYzP9dhmhU= +-----END EC PRIVATE KEY----- diff --git a/fixtures/compatibility/notary0.3/private/tuf_keys/fa842f66cac2dc898677a8660789dcff0e3b0b93b73f8952491f6493199936d3.key b/fixtures/compatibility/notary0.3/private/tuf_keys/fa842f66cac2dc898677a8660789dcff0e3b0b93b73f8952491f6493199936d3.key new file mode 100755 index 0000000000..feb5424d60 --- /dev/null +++ b/fixtures/compatibility/notary0.3/private/tuf_keys/fa842f66cac2dc898677a8660789dcff0e3b0b93b73f8952491f6493199936d3.key @@ -0,0 +1,31 @@ +-----BEGIN RSA PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: AES-256-CBC,a295442b7759389b59fcdcb9a65b2b92 +role: targets/releases + +sZEwxURu9E8nqc4HNoxeoPVQRSuRJDMjk861xkEWclKHdElFcBPBZAmYmeiIwGD1 +zWd89qkbrGLjNK9JKIfU1k1jyKKDvKc7LbXk/TAFc0EP7jz0AnDh872xzbhYRwyt +ChAeeC3ryayRL5cVYSwX/AOtPQRYDIW+iDl8vJVAVyanm61XPP43bvZXjYiR//GD +kFlILNMiPziWXYvQcIeYNAXLuUIG7ll17SI0rOt/cs7LUN+F0hP3yW5PLnI/ZXZz ++wqcVdXju1U5Y5zeO11dCO/+C4JI28/iXQ0jin6Qt7ujxaOwtJB0egRfRMxddF0P +ZhlX+KCptBwhK1yAt965rpfrP10cPBU4uG4QBi1AnJ7rzHnUTiwHuLzFFn/DyeBe +aeUYskNMypyoZWBkbdpe5b5t5mgy/Jnwqjd1Vp4ZJ8ZPlKXW5rbYK3JTXUHTW/aQ +ax9rp5Juf11czjFuKaw1XaDN5CB4uYOVDETgL+BvPeionNPRdUwIl5JNgRW/Vm6g +OEXjzpZehDBW785IqbjFug7DqwVpCSIkxpbOSk/NsZuzRQQLKWhhPuroS2BH9U/c +iU6UPCmGd2xK3wU21pOd6EV51QymbZIc6/mobT2q09P4xm6FHDDOpskOtZaJCnRh +aDI/DCxM2YAZtRt0hIzAuthIhHy2uOG9odf3ctP1y+j1uXvTKIC7/IG/tD3uDIi+ +rOOLRjixB3Fv3beT0wZc7FTCWQ6YTdewaWvBDsU97cjuPkjStn76Q4jvSYByRULm +8+G5vUWsZ+bYzMqPUr+atCHi1AZCqiwU80TdqMUBhITgxHhNVolQulDjB+dE2XGp +7a74WIDMzR4hyygvp49oUFhQpHlVsY0lSrog+5Zg0LVJO77SaggNAsihQPTNAy/3 +BZjeuWDtbQcDKFmNSS0sncwFrekfgqBrQEtyoAcK8H5jSM253Au38SVJNQnuPHRS +kvy9lEc1jgZB9P+r/yNhAinUZd/BjrlgpCfWlfhxUlkXbW4kCU8iwJJuHPenKAAU +SIcXSzfUSXRbVeAG+XE66reDeFQc82xZ9IKM6clVd15c1HLQhFQNllbAmw+Xlbbr +W1K96eyOLJekOORAjOnQZ8wqjv3O68GtzFQaTL7XJXycW0fw+MKnDA2VOdS2gAy0 +7Cgv23A+DWRirI4zoyD50XF2ShtiEE68uQ/L6scCPJ0KRJjisxCfyClu3V8MX9MB +X4ijrvBa1TJ4FWh0pW163pkV3EKI/aHRa1OJ03eLuUMa81jl9tBVvIwJbNxVi38j +ulb5dO/gAql3BNifQUqgttqjTkFEXsPcpH4wAVM2iWitJncjRkcbKApsSt60I4zb +YQwJ9tF3md6qVBXmOBd1Zt1Lv1dxI3VfSD+g1ew7/Jm03uU66GPbqHv+oqzz8yAN +lwzlybDo8Y/mT9MlpI9zmmy5yi/tacv/LsoJxJfYQEuVms1sTD+mJWo+X2UerHc+ +Oe+eDJBUF2enrzUNFg8xmAztWjRyeCJnEXsPY75ES1XQEFVY853V4Kkrrc7gVANg +7oHZYloEZLrHQ5oK/HZL+uZkMWxyjZ2Hgwm3sQZ8xYI5e6My9fIL/jCGgBzPMzXq +-----END RSA PRIVATE KEY----- diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/changelist/01469482448239261819_609ea116-9551-4a4c-83f3-ac8f6ec4f76c.change b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/changelist/01469482448239261819_609ea116-9551-4a4c-83f3-ac8f6ec4f76c.change deleted file mode 100644 index d374b47993..0000000000 --- a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/changelist/01469482448239261819_609ea116-9551-4a4c-83f3-ac8f6ec4f76c.change +++ /dev/null @@ -1 +0,0 @@ -{"action":"create","role":"targets","type":"target","path":"change","data":"eyJsZW5ndGgiOjAsImhhc2hlcyI6eyJzaGEyNTYiOiI0N0RFUXBqOEhCU2ErL1RJbVcrNUpDZXVRZVJrbTVOTXBKV1pHM2hTdUZVPSIsInNoYTUxMiI6Ino0UGhOWDd2dUwzeFZDaFExbTJBQjlZZzVBVUxWeFhjZy9TcElkTnM2YzVIME5FOFhZWHlzUCtER05LSGZ1d3ZZN2t4dlVkQmVvR2xPREo2K1NmYVBnPT0ifX0="} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/root.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/root.json deleted file mode 100755 index 9e16362cee..0000000000 --- a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/root.json +++ /dev/null @@ -1 +0,0 @@ -{"signed":{"_type":"Root","consistent_snapshot":false,"expires":"2116-07-01T16:31:40.497193534-05:00","keys":{"15ea4d8bfa0e0b30b9f2c8ee96d58020b70e019e18a8625a7b996e3c40aa9c7a":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEttEf79RcPhj3iYew53CRV4npc6kLSxBmF2TCbEaom1CnwE/IJTABrZw+ULONOKX7OnhvZVMf5S2k4OOWq0C2aQ=="}},"6fd86dc5beb889760ec56cefb4b29334ffbb98b2f4de05a9e40affa3688b04fa":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEV1WGUmurhhHqcGtV0rwLGwxuYyi8AMViYe+EoV7yOxWaHN0j7I8Z4lj2bzTxUnWgCofUfwI9ybXR8PNTncNWTQ=="}},"a367e24141e771fe071a669ec73d0b3edf860459c698d29b6d0793cc4a36695d":{"keytype":"ecdsa-x509","keyval":{"private":null,"public":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJpRENDQVM2Z0F3SUJBZ0lSQU4vTzVhbTBNcTVZRkI1ZkhzVHloY0F3Q2dZSUtvWkl6ajBFQXdJd0tqRW8KTUNZR0ExVUVBeE1mWkc5amEyVnlMbU52YlM5dWIzUmhjbmt3TGpNdmMyRnRjR3hsY21Wd2J6QWVGdzB4TmpBMwpNalV5TVRNeE1qWmFGdzB5TmpBM01qTXlNVE14TWpaYU1Db3hLREFtQmdOVkJBTVRIMlJ2WTJ0bGNpNWpiMjB2CmJtOTBZWEo1TUM0ekwzTmhiWEJzWlhKbGNHOHdXVEFUQmdjcWhrak9QUUlCQmdncWhrak9QUU1CQndOQ0FBVHYKMlhJWVRkSXVKNDF2OVdMcWxLT1YzdjlPcTlYS3lOWGdsUTNMQnA1YjlJRUFtTUlnTm9KdTJRNGhweldGSWZnQwo2ZEFFb09aeUdtM2xtZ0xvdVlkV296VXdNekFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJCkt3WUJCUVVIQXdNd0RBWURWUjBUQVFIL0JBSXdBREFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUVBczRKSlBKR1YKRTA2T2FSNUlWZnI0aDhvbEtSVFdmNzN4dm5DUGtnWlF0a0FDSUFSUUZzMEkxOUgrdDd3U2xGSlMvSnRqUDhWZQpqekVUU2plek80YjlRL2FNCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"}},"e97dda6e8d9b5e3774422d230c497c8e3cc8bf4d530559d517a7456037c57554":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETEcHuHB+KjGvmsTgicGzzvBymwrpr7hEEWzZWI7yoctAXtI/NycsL2R7y8Elo/qO2NkTQe59in+lkv+yZiq2qw=="}}},"roles":{"root":{"keyids":["a367e24141e771fe071a669ec73d0b3edf860459c698d29b6d0793cc4a36695d"],"threshold":1},"snapshot":{"keyids":["6fd86dc5beb889760ec56cefb4b29334ffbb98b2f4de05a9e40affa3688b04fa"],"threshold":1},"targets":{"keyids":["e97dda6e8d9b5e3774422d230c497c8e3cc8bf4d530559d517a7456037c57554"],"threshold":1},"timestamp":{"keyids":["15ea4d8bfa0e0b30b9f2c8ee96d58020b70e019e18a8625a7b996e3c40aa9c7a"],"threshold":1}},"version":1},"signatures":[{"keyid":"a367e24141e771fe071a669ec73d0b3edf860459c698d29b6d0793cc4a36695d","method":"ecdsa","sig":"tB9vgvQUl5oNjRK94TUSBjBdWSYU1XYmxMi6/A6mFwdak+lQnYXOQT9t41MyWw5EpSSPtv1gcPJjmcKqPhxdEw=="}]} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/snapshot.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/snapshot.json deleted file mode 100755 index a01f95cc3f..0000000000 --- a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/snapshot.json +++ /dev/null @@ -1 +0,0 @@ -{"signed":{"_type":"Snapshot","expires":"2116-07-01T16:32:45.42878813-05:00","meta":{"root":{"hashes":{"sha256":"hyqam/1l+n7VFJSew/o0FOOr28fC2ZUMTRACsfcA8Dk=","sha512":"4cdDQMmv3koONuF6YAiIG2CUbh48nKeOtI0Iuy9rF8i8S/02XIPZWTyhsvBcOg+TW6MkTRhNjgalNFWi2KrYFg=="},"length":2421},"targets":{"hashes":{"sha256":"KNFLtkKM+hskmTW5eQFbnAt19fKB0DjvFK55vjg77VU=","sha512":"sJuVJNk3CTUbqPlkgsiojJS4txYq5iFArD7F3QR5ItCn+/Pi4Mwl8u80VfwV4GFuIhG2Q/s5K65J/0ejF+YwtA=="},"length":539}},"version":2},"signatures":[{"keyid":"6fd86dc5beb889760ec56cefb4b29334ffbb98b2f4de05a9e40affa3688b04fa","method":"ecdsa","sig":"sSh2XZxIolQUx0spl+UQyhVx+i1qCtpZbMtlA2cbUpOYKGn5RupbYISXpyHko9D/4J4ZOGJQEbGM5AzRnAmsQg=="}]} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/targets.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/targets.json deleted file mode 100755 index 78c816623d..0000000000 --- a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/targets.json +++ /dev/null @@ -1 +0,0 @@ -{"signed":{"_type":"Targets","delegations":{"keys":{},"roles":[]},"expires":"2116-07-01T16:32:45.428383459-05:00","targets":{"LICENSE":{"hashes":{"sha256":"k5W6xvzLJry1XvsIPRtLD+cqHCX5WfBWwBYSCzu1amI=","sha512":"oQ+9Z23BUvcZjTgmDUPzWWfLtFHWZ+LkRPYObGHWBsQlfgsc1c7tprb/r5anoYT1IpqXFIx3zET+0EE0010Nww=="},"length":11309}},"version":2},"signatures":[{"keyid":"e97dda6e8d9b5e3774422d230c497c8e3cc8bf4d530559d517a7456037c57554","method":"ecdsa","sig":"0A8TpuAgq4VgGGePsp0uGKDh/Xpkc9G4m9vqRIe4qybsrueOAW7K3CvZeXjuzp7fFQ/EH4wYt1uTGQhi2CL9vQ=="}]} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/timestamp.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/timestamp.json deleted file mode 100755 index 0671163ae9..0000000000 --- a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/samplerepo/metadata/timestamp.json +++ /dev/null @@ -1 +0,0 @@ -{"signed":{"_type":"Timestamp","expires":"2116-07-01T21:32:47.914550034Z","meta":{"snapshot":{"hashes":{"sha256":"MKlZyV0NXrJ60hOb+Lp4RZFShMnZM8AWiT36JFYaxBo=","sha512":"Sj1QqD4OnQb3xDglEGdKmGSnxapJPLyQvxxa+l7RT2yPZGjiuHCpeTVuYp2dJzbxgefPuNzs25n69ZHAk4Y77w=="},"length":687}},"version":1},"signatures":[{"keyid":"15ea4d8bfa0e0b30b9f2c8ee96d58020b70e019e18a8625a7b996e3c40aa9c7a","method":"ecdsa","sig":"SzviqcPP7dELYu78GAzH6gK0+fGEl2fa2VSqSTXRJhyujqnyUZuXj7bkjKm4Ylec6C1mhhlxUYLGdA7ZduLunw=="}]} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/changelist/01469661765810851111_248d5486-7f39-42c6-80ab-c29bfb336e99.change b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/changelist/01469661765810851111_248d5486-7f39-42c6-80ab-c29bfb336e99.change new file mode 100644 index 0000000000..bab7816804 --- /dev/null +++ b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/changelist/01469661765810851111_248d5486-7f39-42c6-80ab-c29bfb336e99.change @@ -0,0 +1 @@ +{"action":"create","role":"targets","type":"target","path":"MAINTAINERS","data":"eyJsZW5ndGgiOjEzNDAsImhhc2hlcyI6eyJzaGEyNTYiOiJwL1IzUWhTNHNac3RZa0x6Z0pENFpvUVdQK2ovemRQZWsvalNoaEZ3RVMwPSIsInNoYTUxMiI6ImhkOFhsRlUvaDhJNDRPZ1BCRU0vamRlSXpHZ3RKcTdIZytDaU5EYVQ5cmJpQVYyb3M1bEhZYjRCZlEwUDJveGk2OHEvbDAzN1JuUCs2aG1pRWpaaGR3PT0ifX0="} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/changelist/01469661815470834910_e03d56d2-2e4e-4732-9d42-b6d5b9e1f48b.change b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/changelist/01469661815470834910_e03d56d2-2e4e-4732-9d42-b6d5b9e1f48b.change new file mode 100644 index 0000000000..9108020998 --- /dev/null +++ b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/changelist/01469661815470834910_e03d56d2-2e4e-4732-9d42-b6d5b9e1f48b.change @@ -0,0 +1 @@ +{"action":"create","role":"targets/releases","type":"target","path":"Dockerfile","data":"eyJsZW5ndGgiOjEyMTcsImhhc2hlcyI6eyJzaGEyNTYiOiJVMHZCWm8wek5PZU02Umw2NkJCTG5tSzBPWW1NVVp1NW5OWmJWd2J5WVVFPSIsInNoYTUxMiI6IllEREx4am8wdEFhQmJVS3NLUHFnMmNMUE1KRVAzbDZBZDBVQTd4VzFjODJIb0RLbUZHUDZ6Ui9Tc3hNOXZUSm8yYi92RW10a2UyTHNkVzVaZklGMnZBPT0ifX0="} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/root.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/root.json new file mode 100644 index 0000000000..36289e5f81 --- /dev/null +++ b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/root.json @@ -0,0 +1 @@ +{"signed":{"_type":"Root","consistent_snapshot":false,"expires":"2116-07-03T17:56:36.027379879-05:00","keys":{"041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENgK7kx/HdvmLUG4733JIJd0Bv6FML8SVEmgGynvhl64nCVmWzTLdziS1bMUgb6hlSkqTYtvyOCC5YMY+GrAH+Q=="}},"354e203ba09dbe17807b6a9d191bff887167c06d121e738d849446a9c76c2866":{"keytype":"ecdsa-x509","keyval":{"private":null,"public":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJlVENDQVIrZ0F3SUJBZ0lRRmdpeGZJdWs1ZCtLM2R5cElhU0RMREFLQmdncWhrak9QUVFEQWpBak1TRXcKSHdZRFZRUURFeGhrYjJOclpYSXVZMjl0TDI1dmRHRnllVEF1TXk5MGMzUXdIaGNOTVRZd056STNNakkxTmpNeQpXaGNOTWpZd056STFNakkxTmpNeVdqQWpNU0V3SHdZRFZRUURFeGhrYjJOclpYSXVZMjl0TDI1dmRHRnllVEF1Ck15OTBjM1F3V1RBVEJnY3Foa2pPUFFJQkJnZ3Foa2pPUFFNQkJ3TkNBQVNpajBzYUF1SnZoRVpVSFFTVzJjc3EKR1B6VldyVVAxUCtDRTZZNnVKaWZidmk3YldseEc2KzMvYTVsd2oxa2RGRWtPU1pUd0NST1lqbjA3QlRHVnoxZQpvelV3TXpBT0JnTlZIUThCQWY4RUJBTUNCYUF3RXdZRFZSMGxCQXd3Q2dZSUt3WUJCUVVIQXdNd0RBWURWUjBUCkFRSC9CQUl3QURBS0JnZ3Foa2pPUFFRREFnTklBREJGQWlBVWljS05LTFhVQ1pVbnVKUGtHRS9ITkM2Q0JuOEsKK2cvQlFhbDhDbE02bHdJaEFMWFEwVzdqQ21Gc2ViN09jREZLbTAzb1Jka0J6elVpbSsvQlVwWnNYa1d3Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"}},"85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEyidUV961UjagjWLmulPmQ6BX+EpJeoBFqHpfsM1L7tHF4fjdNRGPBmEktT9H3nh5YQpI4nxQ+K3Q2NZT0Cke8w=="}},"f694343ec1d508b2840d86aec5387d7b4d62a39647e33566b2b2abf96029750c":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZKFFI+3g0NH+9mitd5bRO3hkH3PG2cniXVrzqKKfRyc5QvmNc6W8wZ5IGlls6ZZX/GgKRzcpIttDidrOGiGlwQ=="}}},"roles":{"root":{"keyids":["354e203ba09dbe17807b6a9d191bff887167c06d121e738d849446a9c76c2866"],"threshold":1},"snapshot":{"keyids":["85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc"],"threshold":1},"targets":{"keyids":["041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02"],"threshold":1},"timestamp":{"keyids":["f694343ec1d508b2840d86aec5387d7b4d62a39647e33566b2b2abf96029750c"],"threshold":1}},"version":1},"signatures":[{"keyid":"354e203ba09dbe17807b6a9d191bff887167c06d121e738d849446a9c76c2866","method":"ecdsa","sig":"/rPtinVMAaEpnQnNir6Q+rM5CXAH15TvgSiuzwXX6YJn74KfyJjA+1Drcb8bldPtf43kLtv2Hlk1kHFRpeIlcQ=="}]} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/snapshot.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/snapshot.json new file mode 100644 index 0000000000..23d37765f9 --- /dev/null +++ b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/snapshot.json @@ -0,0 +1 @@ +{"signed":{"_type":"Snapshot","expires":"2116-07-03T18:08:08.423870533-05:00","meta":{"root":{"hashes":{"sha256":"Nx4/VGy1hGXBUmnTuFfpeBFJlpS1hG6Hd75CKQjyDGY=","sha512":"ey1LYJvRYydPV8ZH65KnxqKDuVGTlVg0/pVI0ZCBBuaww2tps0HCrS+cgBNpUXF4XaSzh8vubhIvssk5bLhGOg=="},"length":2393},"targets":{"hashes":{"sha256":"4rhyO2kZXwREr/5WnQjvKrkHn5SHSmkHVYrmBTaD4OU=","sha512":"e9X5ghcThKpp6YON2cjMJYZrxAkGwMFFD95FkKrvisbLdi8tIQSrtnoMeNLZZ21JubezKegZNBUCuLhrLyW91A=="},"length":2534},"targets/releases":{"hashes":{"sha256":"hWxqh8bSAgalH+es/7nFKFlyhfbklgxI0gs7Tww4p8A=","sha512":"3q1C2ZA8apyaiHgqAKddqf//axoF2FBEx5nKTFCcsj555Qs8N5OrrkTyRnKPmGgFkEr6WuupyW+wmC4vYbC03g=="},"length":790}},"version":5},"signatures":[{"keyid":"85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc","method":"ecdsa","sig":"vpfHe9NLtEgGj2s0ut/1QKu0YLicWqdhpv+g/I1K0KTv1e0FIzKHdl7CriMSTPG79as+LZgnVWOjnpvJMYJWCA=="}]} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/targets.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/targets.json new file mode 100644 index 0000000000..a59191fee6 --- /dev/null +++ b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/targets.json @@ -0,0 +1 @@ +{"signed":{"_type":"Targets","delegations":{"keys":{"68243a1f948be7841403f65fc8f24d5eda9050c337e727e2eacc3d3cb5227d73":{"keytype":"rsa-x509","keyval":{"private":null,"public":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURMRENDQWhRQ0NRQ3QyQk1HNVkrQjVqQU5CZ2txaGtpRzl3MEJBUXNGQURCWU1Rc3dDUVlEVlFRR0V3SlYKVXpFTE1Ba0dBMVVFQ0F3Q1EwRXhDekFKQmdOVkJBY01BbE5HTVE4d0RRWURWUVFLREFaRWIyTnJaWEl4RERBSwpCZ05WQkFzTUExTmxZekVRTUE0R0ExVUVBd3dIWVhaaGFXUTVOakFlRncweE5qQTNNamN5TURJME5USmFGdzB4Ck56QTNNamN5TURJME5USmFNRmd4Q3pBSkJnTlZCQVlUQWxWVE1Rc3dDUVlEVlFRSURBSkRRVEVMTUFrR0ExVUUKQnd3Q1UwWXhEekFOQmdOVkJBb01Ca1J2WTJ0bGNqRU1NQW9HQTFVRUN3d0RVMlZqTVJBd0RnWURWUVFEREFkaApkbUZwWkRrMk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBdWhnRlVLVG5YMHM5CnIvVW5rbTJ3aVVrS0VoOTZMb080cWhxYmM1d3Q1bzJMY0xxRWwxZjRhTUhQd3lKVklHZHJNRm9JY0dnYmtMMmcKMUdNNjFYMnVwb1lITmRJU3EvNHNwc0QveEo1dzdGQkg5bWxwTDQzQlBjRnpJYlVkaXhwZGNhL1UxYkN1L3ZvbgpCdDhXdjhHWlc1MWhLRWY4Q1g4WVk3d1JROTgwR3AyejYzV3lZNU9oY0pqZGRYK0EyUkVrdmZhc3Rna2pCUllQCnlYM2RNZHVISkgyQ1B1Q25yeWhRT2dXQTNxdUVCMTMzNkpHUGNYYjdWNnRiSlBxZmRZemxjM3d6SVpha2pNY3UKTC81cXB5cmYvMnlDRkVOYUNrMkFnd00rVkkyTEVXY3pVdUJNU0oyOHd1RWJlYWFBS2RrTWU1RXVKc252NUVLdgpXWXo2R2g3Wm53SURBUUFCTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCa2ltVk5QNmY2Ukx1SGx2MzJCVmtVCmM3RkplWlRjeExjYXNqRHVtbDkxbDZiWE96dVk0RGJ6RlRzdnRaSTErNlBzMm5WTEZUS0RtRmd6aG9UdzRMbVgKZHp5cGw3QUpSZkhqRllyQWpEVFBhVmNaQkZ4dHRRei9MV3JkaXZxWnhNUEIxM0o2enlLejdCOWc2K1NXUmZkcQorbUkwNCtRYmQrVGNVR3lOeFVua3FpaCtaR3FZLzl3aWJLRjFJMThsT05HUFFMdlRINURCcExIcmZOSnIvWDRtCktlN0JETlZLN3JGYklXRVBnaVQvQjlYRzFhZkIySFNKL0pHeXFtdElnLzdkbjhLNWx1T21lcTczdHU4a1FuYXgKemNNZk00ZnFSMjlZY09vNjFMYVMzWm94YWthelg5dlFxV2xjdFViUkM0QW9ERkp2UFNNSDZvVWRaYVFndkUrNQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="}}},"roles":[{"keyids":["68243a1f948be7841403f65fc8f24d5eda9050c337e727e2eacc3d3cb5227d73"],"name":"targets/releases","paths":[""],"threshold":1}]},"expires":"2116-07-03T18:08:08.41836542-05:00","targets":{"LICENSE":{"hashes":{"sha256":"k5W6xvzLJry1XvsIPRtLD+cqHCX5WfBWwBYSCzu1amI=","sha512":"oQ+9Z23BUvcZjTgmDUPzWWfLtFHWZ+LkRPYObGHWBsQlfgsc1c7tprb/r5anoYT1IpqXFIx3zET+0EE0010Nww=="},"length":11309},"change":{"hashes":{"sha256":"47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=","sha512":"z4PhNX7vuL3xVChQ1m2AB9Yg5AULVxXcg/SpIdNs6c5H0NE8XYXysP+DGNKHfuwvY7kxvUdBeoGlODJ6+SfaPg=="},"length":0}},"version":5},"signatures":[{"keyid":"041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02","method":"ecdsa","sig":"yW/hkghh/8oPlHQ3d5xLCBHytkg/+zoxHEB2lq8yc1g6MG9/+qBEy0Uf/fxc10n5bB6WkEO095Yb5zuRuAQb7g=="}]} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/targets/releases.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/targets/releases.json new file mode 100644 index 0000000000..c5d2d9ff5a --- /dev/null +++ b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/targets/releases.json @@ -0,0 +1 @@ +{"signed":{"_type":"Targets","delegations":{"keys":{},"roles":[]},"expires":"2116-07-03T18:08:08.418734928-05:00","targets":{"hello":{"hashes":{"sha256":"47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=","sha512":"z4PhNX7vuL3xVChQ1m2AB9Yg5AULVxXcg/SpIdNs6c5H0NE8XYXysP+DGNKHfuwvY7kxvUdBeoGlODJ6+SfaPg=="},"length":0}},"version":1},"signatures":[{"keyid":"68243a1f948be7841403f65fc8f24d5eda9050c337e727e2eacc3d3cb5227d73","method":"rsapss","sig":"KbPrBN9WiYzOUmty8GsnfxL749daycuPOdTiZguekYmThwsr3ZjEb1wShM0Q6iK8rNqNYehUPl7sj0aYbhFCK8e5hYCya/ezcANKdXkB/1OA+PCUq8zqpBkfXrRxwirM08vmonCB1xub8ve+8EbvGpldCMrMvdzJWNuw/JUt3VtKovPtf7WTpnebJj1kJKnynJKIN8Dw6/9quULjkg6vkWnZGkXDdt12QFuvbPSiHrOKY5SS1Mo2KHvVuyCo3TbqmquBFuDQaxRqnzzOGastQUrYoBLAh8wXxtKz6b2ssrIwhKU5LNQpLwnAyLUo+AAtZcSTzxHinyNvCSdtAB4vIw=="}]} \ No newline at end of file diff --git a/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/timestamp.json b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/timestamp.json new file mode 100644 index 0000000000..25a644a50c --- /dev/null +++ b/fixtures/compatibility/notary0.3/tuf/docker.com/notary0.3/tst/metadata/timestamp.json @@ -0,0 +1 @@ +{"signed":{"_type":"Timestamp","expires":"2116-07-03T23:08:08.447842546Z","meta":{"snapshot":{"hashes":{"sha256":"8tnrmLiB+sNtG1356+kGjie3nSTyfsPrlmDvbF/uXOo=","sha512":"1TrxLDAKNR8ifK271ZbK3pHFjqW9+IouIbcb9cAqApmnBLkmtSKQMEUPHKKvySFwd4keVOfinuPSJ8Lno358Yg=="},"length":890}},"version":4},"signatures":[{"keyid":"f694343ec1d508b2840d86aec5387d7b4d62a39647e33566b2b2abf96029750c","method":"ecdsa","sig":"4DDaOBIQmwft3PfzYaaeAORhgmXS/nths/hJX1QLSFQvQhZ6nSf/K4QmCzYJwQvgvcq+oUATMfk2OzGfpUWCSw=="}]} \ No newline at end of file diff --git a/trustmanager/keystore.go b/trustmanager/keystore.go index 7f774b8f54..dd6d2e163d 100644 --- a/trustmanager/keystore.go +++ b/trustmanager/keystore.go @@ -66,7 +66,9 @@ func migrateTo0Dot4(s Storage) { } } else if strings.HasPrefix(fileDir, notary.NonRootKeysSubdir) { fileDir = strings.TrimPrefix(fileDir, notary.NonRootKeysSubdir) - block.Headers["gun"] = fileDir[1:] + if fileDir != "" { + block.Headers["gun"] = fileDir[1:] + } if strings.Contains(keyID, "_") { role := strings.Split(keyID, "_")[1] keyID = strings.TrimSuffix(keyID, "_"+role)