Skip to content

Commit

Permalink
Merge pull request #16439 from justinsb/store_hashes_for_assets
Browse files Browse the repository at this point in the history
Use embedded hashes for our well-known assets
  • Loading branch information
k8s-ci-robot committed May 11, 2024
2 parents ff273c1 + 4ab4ccf commit 22eea4e
Show file tree
Hide file tree
Showing 27 changed files with 1,249 additions and 485 deletions.
2 changes: 1 addition & 1 deletion cmd/kops/get_assets.go
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ func RunGetAssets(ctx context.Context, f *util.Factory, out io.Writer, options *
file := File{
Canonical: fileAsset.CanonicalURL.String(),
Download: fileAsset.DownloadURL.String(),
SHA: fileAsset.SHAValue,
SHA: fileAsset.SHAValue.Hex(),
}
if !seen[file.Canonical] {
result.Files = append(result.Files, &file)
Expand Down
13 changes: 7 additions & 6 deletions hack/generate-asset-hashes.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ filestores:
files:
EOF

for ((patch = 0 ; patch < max_patch ; patch++ )); do
for ((patch = 0 ; patch <= max_patch ; patch++ )); do
version="${prefix}.${patch}"
echo "k8s ${version}"

Expand All @@ -62,12 +62,12 @@ function generate_runc_hashes() {
# This file is generated by generate-asset-hashes.sh
filestores:
- base: https://dl.k8s.io/release/
- base: https://github.com/opencontainers/runc/releases/download/
files:
EOF

for ((patch = 0 ; patch < max_patch ; patch++ )); do
for ((patch = 0 ; patch <= max_patch ; patch++ )); do
version="${prefix}.${patch}"
echo "runc ${version}"

Expand All @@ -83,9 +83,10 @@ EOF
generate_k8s_hashes 1.24 17
generate_k8s_hashes 1.25 16
generate_k8s_hashes 1.26 15
generate_k8s_hashes 1.27 12
generate_k8s_hashes 1.28 8
generate_k8s_hashes 1.29 3
generate_k8s_hashes 1.27 13
generate_k8s_hashes 1.28 9
generate_k8s_hashes 1.29 4
generate_k8s_hashes 1.30 0


generate_runc_hashes 1.1 12
19 changes: 17 additions & 2 deletions pkg/assets/assetdata/data_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,22 @@ func TestGetHash(t *testing.T) {
Name string
Hash string
}{
{Name: "https://dl.k8s.io/release/v1.26.0/bin/linux/amd64/kubelet", Hash: "sha256:b64949fe696c77565edbe4100a315b6bf8f0e2325daeb762f7e865f16a6e54b5"},
{
Name: "https://dl.k8s.io/release/v1.26.0/bin/linux/amd64/kubelet",
Hash: "b64949fe696c77565edbe4100a315b6bf8f0e2325daeb762f7e865f16a6e54b5",
},
{
Name: "https://github.com/opencontainers/runc/releases/download/v1.1.0/runc.amd64",
Hash: "ab1c67fbcbdddbe481e48a55cf0ef9a86b38b166b5079e0010737fd87d7454bb",
},
{
Name: "https://github.com/opencontainers/runc/releases/download/v1.1.0/runc.arm64",
Hash: "9ec8e68feabc4e7083a4cfa45ebe4d529467391e0b03ee7de7ddda5770b05e68",
},
{
Name: "https://github.com/opencontainers/runc/releases/download/v1.1.12/runc.amd64",
Hash: "aadeef400b8f05645768c1476d1023f7875b78f52c7ff1967a6dbce236b8cbd8",
},
}

for _, g := range grid {
Expand All @@ -41,7 +56,7 @@ func TestGetHash(t *testing.T) {
if !found {
t.Fatalf("hash for %q was not found", g.Name)
}
got := h.String()
got := h.Hex()
want := g.Hash
if got != g.Hash {
t.Errorf("unexpected hash for %q; got %q, want %q", g.Name, got, want)
Expand Down
97 changes: 97 additions & 0 deletions pkg/assets/assetdata/k8s-1.24.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1653,3 +1653,100 @@ files:
sha256: c21615a59254e931323e939bc79627ce4a98006b3632108c372dcfbe739eb147
- name: v1.24.16/kubernetes-source.spdx
sha256: a69f3779e7c117327d4a48d76f0ad7b6f413414106c36149beda3663d6da022b
# kubernetes 1.24.17
- name: v1.24.17/bin/darwin/amd64/kubectl
sha256: 1eb904b2c1148ff8431b0bd86677287a48bff000f93fd2d36377fbe956bd1e49
- name: v1.24.17/bin/darwin/amd64/kubectl-convert
sha256: 7f4d03fbaa6b1c860c3e895894b97592cca55f166d5de482595029ea453d4bca
- name: v1.24.17/bin/darwin/arm64/kubectl
sha256: 7addbe3f1e22a366fa05aed4f268e77e83d902b40a5854e192b4205ed92e5f8d
- name: v1.24.17/bin/darwin/arm64/kubectl-convert
sha256: a0e5ea01668501c93184aaa8164726c0d5cd8259a141ecbd81481373ecd3b449
- name: v1.24.17/bin/linux/386/kubectl
sha256: b0cde7ca2973a4420aaaca967fe45fe3d763a319a4850955333f0e2c1036b4a4
- name: v1.24.17/bin/linux/386/kubectl-convert
sha256: 119d814d9e6df5dcdcc07cd603efe5a0288d9a7142e33c2fc277b169e3e89499
- name: v1.24.17/bin/linux/amd64/apiextensions-apiserver
sha256: d9597f0bb60747e7f10370c7c544d541421b095db7580f0bc48a24ddfc5f7dcf
- name: v1.24.17/bin/linux/amd64/kube-aggregator
sha256: 922207c55954e51723ad1e1895374b0fa3f36139ffeabb68d1f2160382ef9883
- name: v1.24.17/bin/linux/amd64/kube-apiserver
sha256: b92a2631a9aa741b268b71844ed8920039bdbdaa8aee0d595562a8fb9b58bf99
- name: v1.24.17/bin/linux/amd64/kube-apiserver.docker_tag
sha256: 92969c8802c0bcabebb3fc8a117a41bb1a383ac3a1c3d71e18e39098d8fea2e9
- name: v1.24.17/bin/linux/amd64/kube-apiserver.tar
sha256: 3b65d653386b0d6dd00160c0e85f36ae131c0f2b47eab364cd70c7fbfbe8b4ab
- name: v1.24.17/bin/linux/amd64/kube-controller-manager
sha256: c8801bca5d80e31607b24c3979a843e4da4ab8cf2145d5cfa88db6ce9e0b93d1
- name: v1.24.17/bin/linux/amd64/kube-controller-manager.docker_tag
sha256: 92969c8802c0bcabebb3fc8a117a41bb1a383ac3a1c3d71e18e39098d8fea2e9
- name: v1.24.17/bin/linux/amd64/kube-controller-manager.tar
sha256: 45fc89995bd17a201a67eecf8ea0e3744622daa3a8f30c6967f1894b1a4480fb
- name: v1.24.17/bin/linux/amd64/kube-log-runner
sha256: f97e37714ca0a0a3585f714235f9a51c1f8fa07deab2b53a5a5bd376226a1998
- name: v1.24.17/bin/linux/amd64/kube-proxy
sha256: d6663ca58e29da5ad54c8ab0846efbce9eb07568bbf6f728e1ec0a5c835b58d1
- name: v1.24.17/bin/linux/amd64/kube-proxy.docker_tag
sha256: 92969c8802c0bcabebb3fc8a117a41bb1a383ac3a1c3d71e18e39098d8fea2e9
- name: v1.24.17/bin/linux/amd64/kube-proxy.tar
sha256: b89dc9686b81bbbb0989c64b34e27fc1c84d7e14b768ea93733386bfc4f5485a
- name: v1.24.17/bin/linux/amd64/kube-scheduler
sha256: ce2f040ffed8e7e75e4733b26d9c58e197264a603bb9a04e1b8cb8d863acdf12
- name: v1.24.17/bin/linux/amd64/kube-scheduler.docker_tag
sha256: 92969c8802c0bcabebb3fc8a117a41bb1a383ac3a1c3d71e18e39098d8fea2e9
- name: v1.24.17/bin/linux/amd64/kube-scheduler.tar
sha256: e7193255c9ece8f49004a0649be006613d2299d89f0f352b1084bbc077a2a36a
- name: v1.24.17/bin/linux/amd64/kubeadm
sha256: 774bae9f86c093fd28c7649cf4a84cb3555a70d29ea5dba438abc990dd0febc9
- name: v1.24.17/bin/linux/amd64/kubectl
sha256: 3e9588e3326c7110a163103fc3ea101bb0e85f4d6fd228cf928fa9a2a20594d5
- name: v1.24.17/bin/linux/amd64/kubectl-convert
sha256: d5d0ebf549345a622106740ec3bfa43f7a0389778b14e032b44df59ad1333941
- name: v1.24.17/bin/linux/amd64/kubelet
sha256: babf327f3089982b271ac0acff51009eb0d649f7d1f4fbd976419ee76864f633
- name: v1.24.17/bin/linux/amd64/mounter
sha256: af57e269cce129610b5b70c8f48d5153e4e094a5fe46c5da39481387707d6e08
- name: v1.24.17/bin/linux/arm64/apiextensions-apiserver
sha256: a9cb5b9597b194d747bd432c246ee1a4062bf390748d8c81ee7037e99eaf9895
- name: v1.24.17/bin/linux/arm64/kube-aggregator
sha256: 54430f0fcfd106e470fb019c143a1f84fec69b102f4600d46d26233cb29a468c
- name: v1.24.17/bin/linux/arm64/kube-apiserver
sha256: cd1025d49b69907aa1b0abd98a4569de15ffbdd4252a7a36479894988803d095
- name: v1.24.17/bin/linux/arm64/kube-apiserver.docker_tag
sha256: 92969c8802c0bcabebb3fc8a117a41bb1a383ac3a1c3d71e18e39098d8fea2e9
- name: v1.24.17/bin/linux/arm64/kube-apiserver.tar
sha256: 1908ea1c29c601836273878a0d5e49bb0703b8bd492d9b28c66a38b7ec440ece
- name: v1.24.17/bin/linux/arm64/kube-controller-manager
sha256: dd5bf9c31597975dcae53a650b682b34f77f5c1d375ca597a413852a887988d2
- name: v1.24.17/bin/linux/arm64/kube-controller-manager.docker_tag
sha256: 92969c8802c0bcabebb3fc8a117a41bb1a383ac3a1c3d71e18e39098d8fea2e9
- name: v1.24.17/bin/linux/arm64/kube-controller-manager.tar
sha256: 1bf59c33803796a84f8f99622417222cd2fe43e53d5b7ce3e8051e416952464d
- name: v1.24.17/bin/linux/arm64/kube-log-runner
sha256: b54f4ed74a47797e02b51266de1ff87c64eae3745f236057f1a5d92fa43a0f62
- name: v1.24.17/bin/linux/arm64/kube-proxy
sha256: df7173fef6ed86c1d776898b83c0148928c7b6a146304111d17d2c3497eda172
- name: v1.24.17/bin/linux/arm64/kube-proxy.docker_tag
sha256: 92969c8802c0bcabebb3fc8a117a41bb1a383ac3a1c3d71e18e39098d8fea2e9
- name: v1.24.17/bin/linux/arm64/kube-proxy.tar
sha256: 4e7d53a4ab6201c619484be9692229419e9bf8a93d5b5c0bbf7cc69bc8a790fa
- name: v1.24.17/bin/linux/arm64/kube-scheduler
sha256: 6cf8ae89e4f777df6d330ec755a8972ffdec28243513711b71063eb0e8ff4fdf
- name: v1.24.17/bin/linux/arm64/kube-scheduler.docker_tag
sha256: 92969c8802c0bcabebb3fc8a117a41bb1a383ac3a1c3d71e18e39098d8fea2e9
- name: v1.24.17/bin/linux/arm64/kube-scheduler.tar
sha256: 4ae7812152bd6bfd303abe12b833ec44033a960ef02d110148c2ebf28dee32a6
- name: v1.24.17/bin/linux/arm64/kubeadm
sha256: 1d484faddd1b789c67cdadb315d53250d9906e5b727c9254131c01b2f8f17beb
- name: v1.24.17/bin/linux/arm64/kubectl
sha256: 66885bda3a202546778c77f0b66dcf7f576b5a49ff9456acf61329da784a602d
- name: v1.24.17/bin/linux/arm64/kubectl-convert
sha256: cfc733d10193f887ffefbada494f9734c084df947269db3cb249c2a06a69a965
- name: v1.24.17/bin/linux/arm64/kubelet
sha256: dc83bc7a47715f1fa29ea7f1e1d13e3626a8bfbe3a6793d8cb97273289fe9bba
- name: v1.24.17/bin/linux/arm64/mounter
sha256: eee629ce9443b9dd57e47cbca163ebd8e156cf11e0880d905b976296810ec55f
- name: v1.24.17/kubernetes-release.spdx
sha256: 78f6454e018213006313ffdc4713d63cbd1e160f9dbf84240366c2ce1ec437a7
- name: v1.24.17/kubernetes-source.spdx
sha256: bd288ea8af006ce0581b55f3f25a40d279e24276bf54e5a637ee2cca8e752202
97 changes: 97 additions & 0 deletions pkg/assets/assetdata/k8s-1.25.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1556,3 +1556,100 @@ files:
sha256: e6e3d6c49279b2b97b3447ce262ff3ce142a0e2b7b0d8eb2156b140fcf06b687
- name: v1.25.15/kubernetes-source.spdx
sha256: 86c51af4c39254848e8ab4a0e6292de20c4513c36fab3ca00fc0cafaab48da90
# kubernetes 1.25.16
- name: v1.25.16/bin/darwin/amd64/kubectl
sha256: 34e87fdf0613502edbd2a2b00de5ee8c7789ab10e33257d14423dc6879321920
- name: v1.25.16/bin/darwin/amd64/kubectl-convert
sha256: a91a6d8a8d12984876518b72e2f3412b89b162d7539a5ee6c9a16e7027d9c5ae
- name: v1.25.16/bin/darwin/arm64/kubectl
sha256: d364f73df218b02642d06f3fa9b7345d64c03567b96ca21d361b487f48a33ccc
- name: v1.25.16/bin/darwin/arm64/kubectl-convert
sha256: a334e7d78e6a0ad48cab54a70347b727bf01f2da5eb1b0d0f55a3953c2cd2ee8
- name: v1.25.16/bin/linux/386/kubectl
sha256: fc402605202b90c8fe4461ec57ce444c1e6f4eeec8d8713bc9bd13c836750c2d
- name: v1.25.16/bin/linux/386/kubectl-convert
sha256: 90bd36fc98aa95f9f95c58dbb1a3f06a0b8c815b436a0effc635666c6469e92b
- name: v1.25.16/bin/linux/amd64/apiextensions-apiserver
sha256: 8a40ed7a2da5407d43e7379327f6ba9c4afce784d7bcc38a31181a4bb44a4d63
- name: v1.25.16/bin/linux/amd64/kube-aggregator
sha256: d47663a21e983e113c62c4e1f53a831a8ce260c00ee1ce10772f5f970d6618d0
- name: v1.25.16/bin/linux/amd64/kube-apiserver
sha256: ed78a3575f238061f8602f1f0f6f2097499c855390c7af4bcb7530bcc8a1ec82
- name: v1.25.16/bin/linux/amd64/kube-apiserver.docker_tag
sha256: b9e46e7e6810dc6e288be45503d778aa48dd64fd805f91e8ee20f5319aabec6c
- name: v1.25.16/bin/linux/amd64/kube-apiserver.tar
sha256: 6002cf0d62fcbb0ab1c526a2efe1aa5de3bd3f220ffcbc160e442efbccc62a95
- name: v1.25.16/bin/linux/amd64/kube-controller-manager
sha256: e22f880e14233ad056699de1ea65f0e9cf94ac0391ad9342228be78feac646b4
- name: v1.25.16/bin/linux/amd64/kube-controller-manager.docker_tag
sha256: b9e46e7e6810dc6e288be45503d778aa48dd64fd805f91e8ee20f5319aabec6c
- name: v1.25.16/bin/linux/amd64/kube-controller-manager.tar
sha256: 41ead11c6cf132bcdbf1fce92a2758b4a2103f81475863f51805b74613f31d08
- name: v1.25.16/bin/linux/amd64/kube-log-runner
sha256: 1c2102e73829c1f8f4be7d62c706b14f11aba91ff7e784f693ea409a73d6e8e1
- name: v1.25.16/bin/linux/amd64/kube-proxy
sha256: 1e42e209c389c2f24665f986d0bba931ba00c066dcd0baea2d4baf62288b7b9c
- name: v1.25.16/bin/linux/amd64/kube-proxy.docker_tag
sha256: b9e46e7e6810dc6e288be45503d778aa48dd64fd805f91e8ee20f5319aabec6c
- name: v1.25.16/bin/linux/amd64/kube-proxy.tar
sha256: 8a245fee7e05e220723d98b6f762e5deaec33ae34c5634f193632eb077a16a21
- name: v1.25.16/bin/linux/amd64/kube-scheduler
sha256: 9b6bd6fe686d8c6121b8c370edf5e2d00f54809f73403af32297d83215e4181e
- name: v1.25.16/bin/linux/amd64/kube-scheduler.docker_tag
sha256: b9e46e7e6810dc6e288be45503d778aa48dd64fd805f91e8ee20f5319aabec6c
- name: v1.25.16/bin/linux/amd64/kube-scheduler.tar
sha256: a14f440c8c22688b259d262d04a64b831f0a5811e2b01f499c8fac8b848b4af7
- name: v1.25.16/bin/linux/amd64/kubeadm
sha256: 11c70502ac5bad303b5b4103b9eb5b2a83376cf6a1bce878b6018c6ca44a7d6e
- name: v1.25.16/bin/linux/amd64/kubectl
sha256: 5a9bc1d3ebfc7f6f812042d5f97b82730f2bdda47634b67bddf36ed23819ab17
- name: v1.25.16/bin/linux/amd64/kubectl-convert
sha256: f0f3db15a1c5107c032edad1b72a25c5bd584548ad2627d7be396d5c191e7599
- name: v1.25.16/bin/linux/amd64/kubelet
sha256: b159f4b0ce7987385902faf6b97530489a6340d728a9688c5791d8d18144b4b7
- name: v1.25.16/bin/linux/amd64/mounter
sha256: d4db60a86ce606a43c85f0b34a7fc16a4f7413d22a4227560e42ae3967099dad
- name: v1.25.16/bin/linux/arm64/apiextensions-apiserver
sha256: 43fdae4029ff69a0c7bd1cab09107e367aeb40c2debffd674e64db9ae28b4afb
- name: v1.25.16/bin/linux/arm64/kube-aggregator
sha256: a7eb1535fc33d1f8a5554f198e5669d9fd173b686689398c6b8f3f0a3637542c
- name: v1.25.16/bin/linux/arm64/kube-apiserver
sha256: bb7a54deeda14d113fe9ef04412dfa70ed1c81283da118d367c224546d8d0d5f
- name: v1.25.16/bin/linux/arm64/kube-apiserver.docker_tag
sha256: b9e46e7e6810dc6e288be45503d778aa48dd64fd805f91e8ee20f5319aabec6c
- name: v1.25.16/bin/linux/arm64/kube-apiserver.tar
sha256: afbc4d5847c422277546e96d62f1e459864e910e1dad077d43d3e7f9501e46d6
- name: v1.25.16/bin/linux/arm64/kube-controller-manager
sha256: a2cc5e2ce6bccc692dfea1278d0437ae2abf4532f707726701047cc5be89a9d3
- name: v1.25.16/bin/linux/arm64/kube-controller-manager.docker_tag
sha256: b9e46e7e6810dc6e288be45503d778aa48dd64fd805f91e8ee20f5319aabec6c
- name: v1.25.16/bin/linux/arm64/kube-controller-manager.tar
sha256: ab3a272dfd688b660a49139f38bf9c96d8afe26647bc787546032b935ee9d3f6
- name: v1.25.16/bin/linux/arm64/kube-log-runner
sha256: 90e2e6207ca963af538c9e6bdd60efe6201bd0d59f183ac35ba0ba5057251b9a
- name: v1.25.16/bin/linux/arm64/kube-proxy
sha256: 0d180ce4259200319d58c802e0dd336627665511f5e6017df59596486b5c5ff0
- name: v1.25.16/bin/linux/arm64/kube-proxy.docker_tag
sha256: b9e46e7e6810dc6e288be45503d778aa48dd64fd805f91e8ee20f5319aabec6c
- name: v1.25.16/bin/linux/arm64/kube-proxy.tar
sha256: d2ebd32194eee7973de03139ec5e339205f3366bdeb884a4ad20e89fe8c415a4
- name: v1.25.16/bin/linux/arm64/kube-scheduler
sha256: d9cfbad115d9118ff353e8882c621eb213e1fedd65d0fb7df0c39700214287a7
- name: v1.25.16/bin/linux/arm64/kube-scheduler.docker_tag
sha256: b9e46e7e6810dc6e288be45503d778aa48dd64fd805f91e8ee20f5319aabec6c
- name: v1.25.16/bin/linux/arm64/kube-scheduler.tar
sha256: 14e3a028a84d64cc4aeed966c32a5efdee0771d949370ee3575418859d623408
- name: v1.25.16/bin/linux/arm64/kubeadm
sha256: 55cc8e3c5985858b9f683bf6c7352d76f073d3dc136f450e8761c0ed7092c0f3
- name: v1.25.16/bin/linux/arm64/kubectl
sha256: d6c23c80828092f028476743638a091f2f5e8141273d5228bf06c6671ef46924
- name: v1.25.16/bin/linux/arm64/kubectl-convert
sha256: bae6df75b4d397e6cbaf38fa46043f51b88909a1a6532a077313176e9c0279dd
- name: v1.25.16/bin/linux/arm64/kubelet
sha256: 5f379fc59db0efc288236dbd0abd32b1b0206d1c435001b9c0c3996171e20ffd
- name: v1.25.16/bin/linux/arm64/mounter
sha256: 34741a7956e5c54ccb227ee8de554c702163757a9db5963b9dd228dd9d239ef7
- name: v1.25.16/kubernetes-release.spdx
sha256: a1acde1a9164f7cec948e375141e88167d3589167fa54c57526c095e27c44251
- name: v1.25.16/kubernetes-source.spdx
sha256: c50966fc9a676330b1c85f4a21440f676550419959dd2dd2798e78f2b14676d8

0 comments on commit 22eea4e

Please sign in to comment.