Skip to content

Commit

Permalink
RELTEC-11865: updated used generator version
Browse files Browse the repository at this point in the history
  • Loading branch information
mplushnikov committed Jun 19, 2024
1 parent fb45828 commit e2371a0
Show file tree
Hide file tree
Showing 30 changed files with 746 additions and 397 deletions.
58 changes: 25 additions & 33 deletions api-generator/generate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,57 +6,49 @@ if [ -d "api-generator" ]; then
cd api-generator
fi

GENERATOR=openapi-generator-cli.jar
GENERATOR=openapi-generator-cli-7.5.0_INTERHYP.jar

if [ ! -f "$GENERATOR" ]; then
echo "Please download https://github.com/Interhyp/openapi-generator/blob/RELTEC-11228/bin/openapi-generator-cli.jar using your browser and save as $GENERATOR"
echo "Please download https://github.com/Interhyp/openapi-generator/blob/new_generator_rebased/bin/openapi-generator-cli-7.5.0_INTERHYP.jar using your browser and save as $GENERATOR"
exit 1
fi

API_MODEL_PACKAGE_NAME=openapi

java -jar $GENERATOR generate \
-i ../api/openapi-v3-spec.json \
-o tmp/$API_MODEL_PACKAGE_NAME \
-o ../api \
--package-name $API_MODEL_PACKAGE_NAME \
--global-property modelTests=false,modelDocs=false,apiTests=false,apiDocs=false,generateClient=false \
-g go

# -------------------------------------- customization -----------------------------------------
# omit certain fields from yaml representations, which we use internally to save to files in git
# (this information is represented in the directory tree or is part of the commit metadata)
sed -i'' -e 's/yaml:"timeStamp"/yaml:"-"/g' tmp/$API_MODEL_PACKAGE_NAME/generated_models.go
sed -i'' -e 's/yaml:"commitHash"/yaml:"-"/g' tmp/$API_MODEL_PACKAGE_NAME/generated_models.go
sed -i'' -e 's/yaml:"jiraIssue"/yaml:"-"/g' tmp/$API_MODEL_PACKAGE_NAME/generated_models.go
sed -i'' -e 's/yaml:"owner"/yaml:"-"/g' tmp/$API_MODEL_PACKAGE_NAME/generated_models.go
# ------------------------------------ end customization ---------------------------------------

mkdir -p ../api
mv tmp/$API_MODEL_PACKAGE_NAME/generated_models.go ../api/generated_apimodel.go || (rm -rf tmp && exit 1)
rm -rf tmp

gofmt -w ../api/generated_apimodel.go

DOWNSTREAM_API_DIRECTORY=../internal/client
--global-property models \
--additional-properties=enumClassPrefix=true,structPrefix=true \
-g go-autumrest

function generate_downstream {
P_DOWNSTREAM_NAME=$1
P_SPEC_FILE_NAME=$2
# use 'tags' from openapi to generate only selected parts of the entire api. Use ':' as separator for multiple values. Convert whitespaces to CamelCased string: 'Abc and Def'->'AbcAndDef'
P_APIS=$3

MODEL_PACKAGE_NAME=${P_DOWNSTREAM_NAME}client
java -jar $GENERATOR generate \
-i ${DOWNSTREAM_API_DIRECTORY}/${P_SPEC_FILE_NAME} \
-o tmp/${MODEL_PACKAGE_NAME} \
-o ${DOWNSTREAM_API_DIRECTORY}/${P_DOWNSTREAM_NAME} \
--package-name ${MODEL_PACKAGE_NAME} \
--global-property modelTests=false,modelDocs=false,apiTests=false,apiDocs=false \
-g go
mkdir -p ${DOWNSTREAM_API_DIRECTORY}/${P_DOWNSTREAM_NAME}
mv tmp/${MODEL_PACKAGE_NAME}/generated_models.go ${DOWNSTREAM_API_DIRECTORY}/${P_DOWNSTREAM_NAME}/generated_model.go || (rm -rf tmp && exit 1)
mv tmp/${MODEL_PACKAGE_NAME}/generated_client.go ${DOWNSTREAM_API_DIRECTORY}/${P_DOWNSTREAM_NAME}/generated_client.go || (rm -rf tmp && exit 1)
rm -rf tmp

gofmt -w ${DOWNSTREAM_API_DIRECTORY}/${P_DOWNSTREAM_NAME}/generated_model.go
gofmt -w ${DOWNSTREAM_API_DIRECTORY}/${P_DOWNSTREAM_NAME}/generated_client.go
--global-property supportingFiles,models,apis=${P_APIS} \
--additional-properties=enumClassPrefix=true,structPrefix=true \
-g go-autumrest
}

# generate_downstream package_name openapi-spec-filename.json
# -------------------------------------- customization -----------------------------------------
# omit certain fields from yaml representations, which we use internally to save to files in git
# (this information is represented in the directory tree or is part of the commit metadata)
for i in ../api/*.go; do
sed -i'' -e 's/yaml:"timeStamp"/yaml:"-"/g' $i
sed -i'' -e 's/yaml:"commitHash"/yaml:"-"/g' $i
sed -i'' -e 's/yaml:"jiraIssue"/yaml:"-"/g' $i
sed -i'' -e 's/yaml:"owner"/yaml:"-"/g' $i
done

# ------------------------------------ end customization ---------------------------------------

gofmt -w ../api/*.go
364 changes: 0 additions & 364 deletions api/generated_apimodel.go

This file was deleted.

18 changes: 18 additions & 0 deletions api/generated_model_condition_reference_dto.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 18 additions & 0 deletions api/generated_model_deletion_dto.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

23 changes: 23 additions & 0 deletions api/generated_model_error_dto.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 18 additions & 0 deletions api/generated_model_health_component.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 18 additions & 0 deletions api/generated_model_link.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions api/generated_model_merge_strategy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

21 changes: 21 additions & 0 deletions api/generated_model_notification.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 19 additions & 0 deletions api/generated_model_notification_payload.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

33 changes: 33 additions & 0 deletions api/generated_model_owner_create_dto.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

37 changes: 37 additions & 0 deletions api/generated_model_owner_dto.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 19 additions & 0 deletions api/generated_model_owner_list_dto.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

37 changes: 37 additions & 0 deletions api/generated_model_owner_patch_dto.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 19 additions & 0 deletions api/generated_model_quicklink.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit e2371a0

Please sign in to comment.