forked from kubernetes/test-infra
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgather-static.sh
executable file
·63 lines (57 loc) · 1.82 KB
/
gather-static.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#!/usr/bin/env bash
# Copyright 2022 The Kubernetes Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -o errexit
set -o nounset
set -o pipefail
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../../.." && pwd -P)"
cd "${REPO_ROOT}"
readonly STATIC_MAP_FILE="prow/cmd/deck/static-map"
readonly JS_OUTPUT_DIR="_output/js"
mkdir -p "${JS_OUTPUT_DIR}"
readonly KO_DATA_PATH="prow/cmd/deck/kodata"
if [[ -d $KO_DATA_PATH ]]; then
rm -rf $KO_DATA_PATH
fi
# Roll up typescripts
if [[ "${CLEAN:-}" == "true" ]]; then
echo "Running in cleanup mode"
CLEAN=true ./hack/make-rules/update/ts-rollup.sh "${REPO_ROOT}/prow/cmd/deck/.ts-packages"
rm -rf ${KO_DATA_PATH}
exit 0
fi
./hack/make-rules/update/ts-rollup.sh "${REPO_ROOT}/prow/cmd/deck/.ts-packages"
STATIC_MAP=()
while IFS= read -r map; do
STATIC_MAP+=("${map}")
done < "${STATIC_MAP_FILE}"
for map in "${STATIC_MAP[@]}"; do
parts=(${map//->/ })
src="${REPO_ROOT}/${parts[0]}"
dst="${KO_DATA_PATH}/${parts[1]}"
echo "src: $src, dst: $dst"
mkdir -p $dst
rsync \
-av \
--exclude='*.go' \
--exclude='*.ts' \
--exclude='tsconfig.json' \
--exclude='*.bazel' \
--exclude='*/*.go' \
--exclude='*/*.ts' \
--exclude='*/tsconfig.json' \
--exclude='*/*.bazel' \
$src \
$dst
done