mirror of https://github.com/rancher/gitjob.git
24 lines
993 B
Bash
Executable File
24 lines
993 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -euo pipefail
|
|
|
|
tmpdir=$(mktemp -d)
|
|
trap 'rm -rf ${tmpdir}' EXIT
|
|
|
|
log() {
|
|
echo "$*" >&2
|
|
}
|
|
|
|
|
|
# Ensure the latest version of controller-gen is installed
|
|
CONTROLLERGEN=controller-gen
|
|
CONTROLLERGEN_VERSION=$(curl -sL https://api.github.com/repos/kubernetes-sigs/controller-tools/releases/latest | jq -r ".tag_name")
|
|
if ! $CONTROLLERGEN --version | grep -q "${CONTROLLERGEN_VERSION}" ; then
|
|
log "Downloading controller-gen ${CONTROLLERGEN_VERSION} to a temporary directory. Run 'go install sigs.k8s.io/controller-tools/cmd/controller-gen@${CONTROLLERGEN_VERSION}' to get a persistent installation"
|
|
GOBIN="${tmpdir}/bin" go install sigs.k8s.io/controller-tools/cmd/controller-gen@${CONTROLLERGEN_VERSION}
|
|
CONTROLLERGEN="${tmpdir}/bin/controller-gen"
|
|
fi
|
|
|
|
# Run controller-gen
|
|
${CONTROLLERGEN} object:headerFile=scripts/boilerplate.go.txt,year="$(date +%Y)" paths="./pkg/apis/..."
|
|
${CONTROLLERGEN} crd webhook paths="./pkg/apis/..." output:stdout > chart/crds/crds.yaml |