Skip to content

Commit 49c6c10

Browse files
authored
Merge pull request #2724 from liangyuanpeng/support_kind_name
Support name of kind and crd-model-gen by default name
2 parents 248446d + c17b312 commit 49c6c10

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

client-java-contrib/generate.sh

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,21 +21,24 @@ CRD_URLS=${CRD_URLS:-}
2121
OUTPUT_DIR=${OUTPUT_DIR:-}
2222
KUBERNETES_CRD_GROUP_PREFIX=${KUBERNETES_CRD_GROUP_PREFIX:-}
2323
PACKAGE_NAME=${PACKAGE_NAME:-}
24+
CLUSTER_NAME=${CLUSTER_NAME:-"crd-model-gen"}
2425

2526
print_usage() {
2627
echo "Usage: generate Java model classes from CRDs" >& 2
2728
echo " -n: the prefix of the target CRD's api group to generate." >& 2
2829
echo " -p: the base package name of the generated java project. " >& 2
2930
echo " -o: output directory of the generated java project. " >& 2
3031
echo " -u: url location of the YAML manifest to install CRDs to a Kubernetes cluster. " >& 2
32+
echo " -c: cluster name of kind. " >& 2
3133
}
3234

33-
while getopts 'u:n:p:o:' flag; do
35+
while getopts 'u:n:p:o:c:' flag; do
3436
case "${flag}" in
3537
u) CRD_URLS+=("${OPTARG}") ;;
3638
n) KUBERNETES_CRD_GROUP_PREFIX="${OPTARG}" ;;
3739
p) PACKAGE_NAME="${OPTARG}" ;;
3840
o) OUTPUT_DIR="${OPTARG}" ;;
41+
c) CLUSTER_NAME="${OPTARG}" ;;
3942
*) print_usage
4043
exit 1 ;;
4144
esac
@@ -44,7 +47,7 @@ done
4447
set -e
4548

4649
# create a KinD cluster on the host
47-
kind create cluster
50+
kind create cluster --name ${CLUSTER_NAME}
4851

4952
# install CRDs to the KinD cluster and dump the swagger spec
5053
for url in "${CRD_URLS[@]}"; do
@@ -62,19 +65,19 @@ kubectl get crd -o name \
6265
do
6366
if [[ $(kubectl get $L -o jsonpath='{.status.conditions[?(@.type=="NonStructuralSchema")].status}') == "True" ]]; then
6467
echo "$L failed publishing openapi schema because it's attached non-structral-schema condition."
65-
kind delete cluster
68+
kind delete cluster --name ${CLUSTER_NAME}
6669
exit 1
6770
fi
6871
if [[ $(kubectl get $L -o jsonpath='{.spec.preserveUnknownFields}') == "true" ]]; then
6972
echo "$L failed publishing openapi schema because it explicitly disabled unknown fields pruning."
70-
kind delete cluster
73+
kind delete cluster --name ${CLUSTER_NAME}
7174
exit 1
7275
fi
7376
echo "$L successfully installed"
7477
done
7578

7679
# destroy the KinD cluster
77-
kind delete cluster
80+
kind delete cluster --name ${CLUSTER_NAME}
7881

7982
# execute the generation script
8083
bash java-crd-cmd.sh -n "${KUBERNETES_CRD_GROUP_PREFIX}" -p "${PACKAGE_NAME}" -l 2 -o "${OUTPUT_DIR}/gen" < /tmp/swagger

0 commit comments

Comments
 (0)