...

Text file src/edge-infra.dev/hack/tools/controller-gen/gen-rbac.sh

Documentation: edge-infra.dev/hack/tools/controller-gen

     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"))
    23
    24controllergen="$(realpath "$2")"
    25
    26# parameters
    27pkg_dir="$3"
    28role_name="$4"
    29rbac_out_path="$5"
    30outpath_relative_to_repo_root="$6"
    31paths="$7"
    32
    33
    34cd "${BUILD_WORKSPACE_DIRECTORY}/${pkg_dir}"
    35
    36if [[ "$outpath_relative_to_repo_root" == "True" ]]; then
    37  rbac_out_path="${BUILD_WORKSPACE_DIRECTORY}/${rbac_out_path}"
    38fi
    39
    40# dont generate anything other than RBAC
    41"$controllergen" \
    42  rbac:roleName="$role_name" \
    43  paths="$paths" \
    44  output:rbac:artifacts:config="$rbac_out_path" \
    45  output:none

View as plain text