#!/usr/bin/env bash set -euo pipefail MODULE_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" echo "MODULE ROOT: ${MODULE_ROOT}" cd "${MODULE_ROOT}" mkdir -p \ "${MODULE_ROOT}/pkg/generated/clientset" \ "${MODULE_ROOT}/pkg/generated/listers" \ "${MODULE_ROOT}/pkg/generated/informers" controller-gen \ object:headerFile=hack/boilerplate.go.txt \ paths=./pkg/apis/... MODULE="$(go list -m -f '{{.Path}}')" echo "MODULE: ${MODULE}" CODEGEN_PKG="$(go list -f '{{.Dir}}' -m k8s.io/code-generator)" echo "CODEGEN PKG: ${CODEGEN_PKG}" source "${CODEGEN_PKG}/kube_codegen.sh" mkdir -p "${MODULE_ROOT}/pkg/generated" kube::codegen::gen_helpers \ --boilerplate "${MODULE_ROOT}/hack/boilerplate.go.txt" \ "${MODULE_ROOT}/pkg/apis" kube::codegen::gen_client \ --with-watch \ --output-dir "${MODULE_ROOT}/pkg/generated" \ --output-pkg "${MODULE}/pkg/generated" \ --boilerplate "${MODULE_ROOT}/hack/boilerplate.go.txt" \ "${MODULE_ROOT}/pkg/apis"