...
1#!/usr/bin/env bash
2
3set -o errexit
4set -o nounset
5set -o pipefail
6
7if [[ -n "${BUILD_WORKSPACE_DIRECTORY:-}" ]]; then # Running inside bazel
8 echo "Updating generated manifests..." >&2
9elif ! command -v bazel &>/dev/null; then
10 echo "Install bazel via `just hack/bazelisk`" >&2
11 exit 1
12else
13 echo "This script should be ran via a Bazel target."
14 exit 1
15fi
16
17# tools
18go=$(realpath "$1")
19export go
20export PATH=$(dirname $(dirname "$go")):$PATH
21export PATH=$(dirname "$go"):$PATH
22export GOROOT=$(dirname $(dirname "$go"))
23controllergen="$(realpath "$2")"
24
25# parameters
26pkg_dir="$3"
27crd_out_path="$4"
28outpath_relative_to_repo_root="$5"
29paths="$6"
30gen_webhooks="$7"
31
32cd "${BUILD_WORKSPACE_DIRECTORY}/${pkg_dir}"
33
34if [[ "$outpath_relative_to_repo_root" == "True" ]]; then
35 crd_out_path="${BUILD_WORKSPACE_DIRECTORY}/${crd_out_path}"
36fi
37
38args=()
39args+=( 'crd:allowDangerousTypes=true,generateEmbeddedObjectMeta=true' 'webhook' "paths=$paths" "output:crd:artifacts:config=$crd_out_path" 'output:none' )
40if [[ "$gen_webhooks" == "True" ]]; then
41 args+=( "output:webhook:artifacts:config=$crd_out_path/webhooks" )
42fi
43
44# dont generate anything other than CRDs
45GOTOOLDIR="/private/var/tmp/_bazel_aa250816/52b683b8d8328151a92aa8ea13f8d520/external/go_sdk/pkg/tool/darwin_arm64" "$controllergen" "${args[@]}"
View as plain text