github.com/argoproj/argo-events@v1.9.1/hack/crdgen.sh (about)

     1  #!/bin/bash
     2  set -eu -o pipefail
     3  
     4  source $(dirname $0)/library.sh
     5  ensure_vendor
     6  
     7  add_header() {
     8    cat "$1" | ./hack/auto-gen-msg.sh >tmp
     9    mv tmp "$1"
    10  }
    11  
    12  if [ "$(command -v controller-gen)" = "" ]; then
    13    go install sigs.k8s.io/controller-tools/cmd/controller-gen
    14  fi
    15  
    16  header "Generating CRDs"
    17  controller-gen crd:crdVersions=v1,maxDescLen=262143,maxDescLen=0 paths=./pkg/apis/... output:dir=manifests/base/crds
    18  
    19  mv manifests/base/crds/argoproj.io_eventbuses.yaml manifests/base/crds/argoproj.io_eventbus.yaml || true
    20  
    21  find manifests/base/crds -name 'argoproj.io*.yaml' | while read -r file; do
    22    echo "Patching ${file}"
    23    # remove junk fields
    24    go run ./hack cleancrd "$file"
    25    add_header "$file"
    26  done
    27