Skip to content

Commit ab785f1

Browse files
authored
Merge pull request kubernetes#3442 from palnabarun/kep-manifest-generator
add script to generate and push KEP manifest to GCS bucket
2 parents 6de253f + 9eb8781 commit ab785f1

File tree

1 file changed

+53
-0
lines changed

1 file changed

+53
-0
lines changed

hack/push-manifest.sh

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
#!/usr/bin/env bash
2+
3+
# Copyright 2022 The Kubernetes Authors.
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License");
6+
# you may not use this file except in compliance with the License.
7+
# You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
set -o errexit
18+
set -o nounset
19+
set -o pipefail
20+
21+
if ! command -v gsutil &> /dev/null
22+
then
23+
echo "gsutil could not be found"
24+
exit
25+
fi
26+
27+
# create a temporary directory
28+
TMP_DIR=$(mktemp -d)
29+
30+
# cleanup
31+
exitHandler() (
32+
echo "=== Cleaning up..."
33+
rm -rf "${TMP_DIR}"
34+
)
35+
trap exitHandler EXIT
36+
37+
# cd to the root path
38+
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd -P)"
39+
cd "${ROOT}"
40+
41+
# compile kepctl
42+
echo "=== Compiling kepctl"
43+
make tools
44+
45+
# generate KEP manifest and store it in TMP_DIR
46+
echo "=== Generating manifest"
47+
kepctl query --output json > "${TMP_DIR}/keps.json"
48+
49+
# copy manifest to bucket
50+
echo "=== Copying manifest to bucket"
51+
gsutil -h 'Cache-Control: no-store, must-revalidate' -m cp -Z "${TMP_DIR}/keps.json" "${KEPS_BUCKET}/keps.json"
52+
53+
echo "=== Done"

0 commit comments

Comments
 (0)