mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-11 00:52:55 +00:00
82 lines
1.7 KiB
Bash
Executable File
82 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# To test the release process, this script attempts to
|
|
# use Google cloudbuild configuration to create a release
|
|
# locally.
|
|
#
|
|
# Usage: from the repo root, enter:
|
|
#
|
|
# module=kustomize
|
|
# module=pluginator # pick one
|
|
# module=api
|
|
#
|
|
# ./releasing/localbuild.sh $module
|
|
#
|
|
#
|
|
# See https://cloud.google.com/cloud-build/docs/build-debug-locally
|
|
#
|
|
# At the time of writing,
|
|
#
|
|
# https://pantheon.corp.google.com/cloud-build/triggers?project=kustomize-199618
|
|
#
|
|
# has a trigger such that whenever a git tag is
|
|
# applied to the kustomize repo, the cloud builder
|
|
# reads the repository-relative file
|
|
#
|
|
# releasing/cloudbuild_${module}.yaml
|
|
#
|
|
# Inside this yaml file is a reference to the script
|
|
#
|
|
# releasing/cloudbuild.sh
|
|
#
|
|
# which runs goreleaser from the proper directory, with the
|
|
# proper config.
|
|
#
|
|
# The script you are reading now does something
|
|
# analogous via docker tricks.
|
|
|
|
set -e
|
|
|
|
module=$1
|
|
case "$module" in
|
|
api)
|
|
;;
|
|
kustomize)
|
|
;;
|
|
pluginator)
|
|
;;
|
|
*)
|
|
echo "Don't recognize module=$module"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
config=$(mktemp)
|
|
cp releasing/cloudbuild_${module}.yaml $config
|
|
|
|
# Delete the cloud-builders/git step, which isn't needed
|
|
# for a local run.
|
|
sed -i '2,3d' $config
|
|
|
|
# Add the --snapshot flag to suppress the
|
|
# github release and leave the build output
|
|
# in the kustomize/dist directory.
|
|
sed -i 's|"\]$|", "--snapshot"]|' $config
|
|
|
|
echo "Executing cloud-build-local with:"
|
|
echo "========================="
|
|
cat $config
|
|
echo "========================="
|
|
|
|
cloud-build-local \
|
|
--config=$config \
|
|
--bind-mount-source \
|
|
--dryrun=false \
|
|
.
|
|
|
|
echo " "
|
|
echo "Result of local build:"
|
|
echo "##########################################"
|
|
tree ./$module/dist
|
|
echo "##########################################"
|