@@ -34,24 +34,26 @@ EXPERIMENTAL_APIS=(
3434 udproutes
3535)
3636
37- rm -rf gateway-api/src/apis/
37+ export APIS_DIR=' gateway-api/src/apis'
38+ rm -rf $APIS_DIR /standard/
39+ rm -rf $APIS_DIR /experimental/
3840
39- mkdir -p gateway-api/src/apis/
40- cat << EOF > gateway-api/src/apis/mod.rs
41+ cat << EOF > $APIS_DIR /mod.rs
4142pub mod experimental;
4243pub mod standard;
4344EOF
4445
45- mkdir -p gateway-api/src/apis/standard/
46- mkdir -p gateway-api/src/apis/experimental/
4746
48- echo " // WARNING! generated file do not edit" > gateway-api/src/apis/standard/mod.rs
47+ mkdir -p $APIS_DIR /standard/
48+ mkdir -p $APIS_DIR /experimental/
49+
50+ echo " // WARNING! generated file do not edit" > $APIS_DIR /standard/mod.rs
4951
5052for API in " ${STANDARD_APIS[@]} "
5153do
5254 echo " generating standard api ${API} "
53- curl -sSL " https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/${VERSION} /config/crd/standard/gateway.networking.k8s.io_${API} .yaml" | kopium --schema=derived --derive=JsonSchema --derive=Default --derive=PartialEq --docs -f - > gateway-api/src/apis /standard/${API} .rs
54- echo " pub mod ${API} ;" >> gateway-api/src/apis /standard/mod.rs
55+ curl -sSL " https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/${VERSION} /config/crd/standard/gateway.networking.k8s.io_${API} .yaml" | kopium --schema=derived --derive=JsonSchema --derive=Default --derive=PartialEq --docs -f - > $APIS_DIR /standard/${API} .rs
56+ echo " pub mod ${API} ;" >> $APIS_DIR /standard/mod.rs
5557done
5658
5759# Standard API enums that need a Default trait impl along with their respective default variant.
@@ -71,8 +73,8 @@ ENUMS_WITH_DEFAULTS=$(printf ",%s" "${ENUMS[@]}")
7173ENUMS_WITH_DEFAULTS=${ENUMS_WITH_DEFAULTS: 1}
7274
7375# The task searches for $GATEWAY_API_ENUMS in the enviornment to get the enum names and their default variants.
74- GATEWAY_API_ENUMS=${ENUMS_WITH_DEFAULTS} cargo xtask gen_enum_defaults >> gateway-api/src/apis /standard/enum_defaults.rs
75- echo " mod enum_defaults;" >> gateway-api/src/apis /standard/mod.rs
76+ GATEWAY_API_ENUMS=${ENUMS_WITH_DEFAULTS} cargo xtask gen_enum_defaults >> $APIS_DIR /standard/enum_defaults.rs
77+ echo " mod enum_defaults;" >> $APIS_DIR /standard/mod.rs
7678
7779GATEWAY_CLASS_CONDITION_CONSTANTS=" GatewayClassConditionType=Accepted"
7880GATEWAY_CLASS_REASON_CONSTANTS=" GatewayClassConditionReason=Accepted,InvalidParameters,Pending,Unsupported,Waiting"
@@ -84,16 +86,16 @@ LISTENER_REASON_CONSTANTS="ListenerConditionReason=HostnameConflict,ProtocolConf
8486GATEWAY_CLASS_CONDITION_CONSTANTS=${GATEWAY_CLASS_CONDITION_CONSTANTS} GATEWAY_CLASS_REASON_CONSTANTS=${GATEWAY_CLASS_REASON_CONSTANTS} \
8587 GATEWAY_CONDITION_CONSTANTS=${GATEWAY_CONDITION_CONSTANTS} GATEWAY_REASON_CONSTANTS=${GATEWAY_REASON_CONSTANTS} \
8688 LISTENER_CONDITION_CONSTANTS=${LISTENER_CONDITION_CONSTANTS} LISTENER_REASON_CONSTANTS=${LISTENER_REASON_CONSTANTS} \
87- cargo xtask gen_condition_constants >> gateway-api/src/apis /standard/constants.rs
88- echo " pub mod constants;" >> gateway-api/src/apis /standard/mod.rs
89+ cargo xtask gen_condition_constants >> $APIS_DIR /standard/constants.rs
90+ echo " pub mod constants;" >> $APIS_DIR /standard/mod.rs
8991
90- echo " // WARNING! generated file do not edit" > gateway-api/src/apis /experimental/mod.rs
92+ echo " // WARNING! generated file do not edit" > $APIS_DIR /experimental/mod.rs
9193
9294for API in " ${EXPERIMENTAL_APIS[@]} "
9395do
9496 echo " generating experimental api $API "
95- curl -sSL " https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/${VERSION} /config/crd/experimental/gateway.networking.k8s.io_${API} .yaml" | kopium --schema=derived --derive=JsonSchema --derive=Default --derive=PartialEq --docs -f - > gateway-api/src/apis /experimental/${API} .rs
96- echo " pub mod ${API} ;" >> gateway-api/src/apis /experimental/mod.rs
97+ curl -sSL " https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/${VERSION} /config/crd/experimental/gateway.networking.k8s.io_${API} .yaml" | kopium --schema=derived --derive=JsonSchema --derive=Default --derive=PartialEq --docs -f - > $APIS_DIR /experimental/${API} .rs
98+ echo " pub mod ${API} ;" >> $APIS_DIR /experimental/mod.rs
9799done
98100
99101# Experimental API enums that need a Default trait impl along with their respective default variant.
@@ -110,8 +112,8 @@ ENUMS=(
110112
111113ENUMS_WITH_DEFAULTS=$( printf " ,%s" " ${ENUMS[@]} " )
112114ENUMS_WITH_DEFAULTS=${ENUMS_WITH_DEFAULTS: 1}
113- GATEWAY_API_ENUMS=${ENUMS_WITH_DEFAULTS} cargo xtask gen_enum_defaults >> gateway-api/src/apis /experimental/enum_defaults.rs
114- echo " mod enum_defaults;" >> gateway-api/src/apis /experimental/mod.rs
115+ GATEWAY_API_ENUMS=${ENUMS_WITH_DEFAULTS} cargo xtask gen_enum_defaults >> $APIS_DIR /experimental/enum_defaults.rs
116+ echo " mod enum_defaults;" >> $APIS_DIR /experimental/mod.rs
115117
116118# GatewayClass conditions vary between standard and experimental
117119GATEWAY_CLASS_CONDITION_CONSTANTS=" ${GATEWAY_CLASS_CONDITION_CONSTANTS} ,SupportedVersion"
@@ -120,8 +122,9 @@ GATEWAY_CLASS_REASON_CONSTANTS="${GATEWAY_CLASS_REASON_CONSTANTS},SupportedVersi
120122GATEWAY_CLASS_CONDITION_CONSTANTS=${GATEWAY_CLASS_CONDITION_CONSTANTS} GATEWAY_CLASS_REASON_CONSTANTS=${GATEWAY_CLASS_REASON_CONSTANTS} \
121123 GATEWAY_CONDITION_CONSTANTS=${GATEWAY_CONDITION_CONSTANTS} GATEWAY_REASON_CONSTANTS=${GATEWAY_REASON_CONSTANTS} \
122124 LISTENER_CONDITION_CONSTANTS=${LISTENER_CONDITION_CONSTANTS} LISTENER_REASON_CONSTANTS=${LISTENER_REASON_CONSTANTS} \
123- cargo xtask gen_condition_constants >> gateway-api/src/apis /experimental/constants.rs
124- echo " pub mod constants;" >> gateway-api/src/apis /experimental/mod.rs
125+ cargo xtask gen_condition_constants >> $APIS_DIR /experimental/constants.rs
126+ echo " pub mod constants;" >> $APIS_DIR /experimental/mod.rs
125127
126128# Format the code.
127129cargo fmt
130+
0 commit comments