cadvisor/build/assets.sh
Daniel, Dao Quang Minh 236f41d419 Add support for go module (#2338)
* add go module support, update go-bindata ref, bump runc dep

```
go mod init github.com/google/cadvisor
go mod tidy

go get github.com/matttproud/golang_protobuf_extensions@c182affec369e30f25d3eb8cd8a478dee585ae7d
go get github.com/containerd/typeurl@5eb25027c9fdd675e1db2bd25af02f5db75027ab
```

Somehow the dependencies retrieved by `go mod init` was mismatched (maybe because
runc itself does not support go module yet ?). This fixes the dependencies retrieved
in go module, the packages bump itself seems sane.

The original go-bindata is unmaintained and is on an old revision, so our usage
of it is outdated. Changed to https://github.com/kevinburke/go-bindata which
seems to be a more official and well maintained fork, and bump to latest version.
2019-12-03 10:41:37 -08:00

63 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
# Copyright 2015 Google Inc. All rights reserved.
#
# 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 -e
GIT_ROOT=$(dirname "${BASH_SOURCE}")/..
ASSETS_INPUT_DIRS="$GIT_ROOT/pages/assets/js/... $GIT_ROOT/pages/assets/styles/..."
ASSETS_OUTPUT_PATH="$GIT_ROOT/pages/static/assets.go"
ASSETS_PACKAGE="static"
TEMPLATES_INPUT_DIRS="$GIT_ROOT/pages/assets/html/..."
TEMPLATES_OUTPUT_PATH="$GIT_ROOT/pages/templates.go"
TEMPLATES_PACKAGE="pages"
FORCE="${FORCE:-}" # Force assets to be rebuilt if FORCE=true
go get -u github.com/kevinburke/go-bindata/...
build_asset () {
local package=$1
local output_path=$2
local input_dirs=${@:3}
local tmp_output=$(mktemp)
local year=$(date +%Y)
go-bindata -nometadata -o $output_path -pkg $package $input_dirs
cat build/boilerplate/boilerplate.go.txt | sed "s/YEAR/$year/" > "${tmp_output}"
echo -e "// generated by build/assets.sh; DO NOT EDIT\n" >> "${tmp_output}"
cat "${output_path}" >> "${tmp_output}"
gofmt -w -s "${tmp_output}"
mv "${tmp_output}" "${output_path}"
}
for f in $GIT_ROOT/pages/assets/js/* $GIT_ROOT/pages/assets/styles/*; do
if [ "$FORCE" == "true" ] || [ "$f" -nt $ASSETS_OUTPUT_PATH -o ! -e $ASSETS_OUTPUT_PATH ]; then
build_asset "$ASSETS_PACKAGE" "$ASSETS_OUTPUT_PATH" "$ASSETS_INPUT_DIRS"
break;
fi
done
for f in $GIT_ROOT/pages/assets/html/*; do
if [ "$FORCE" == "true" ] || [ "$f" -nt $TEMPLATES_OUTPUT_PATH -o ! -e $TEMPLATES_OUTPUT_PATH ]; then
build_asset "$TEMPLATES_PACKAGE" "$TEMPLATES_OUTPUT_PATH" "$TEMPLATES_INPUT_DIRS"
break;
fi
done
exit 0