@@ -9,6 +9,8 @@ SWAGGER_AWS = $(SWAGGER_DIST)/aws/swagger.yaml
99SWAGGER_PUBLIC = $(SWAGGER_DIST ) /public/swagger.yaml
1010SWAGGER_APIGEE = $(SWAGGER_DIST ) /apigee/swagger.yaml
1111_CLEANED_SWAGGER_FILE = $(SWAGGER_DIST ) /build/_02_clean.yaml
12+ PROXYGEN_TIMESTAMP = $(TIMESTAMP_DIR ) /.proxygen.stamp
13+ SWAGGER_PUBLISH_TIMESTAMP = $(TIMESTAMP_DIR ) /.swagger.publish.stamp
1214
1315TOOL_VERSIONS_COPY = $(TIMESTAMP_DIR ) /tool-versions.copy
1416SWAGGER_DEPENDENCIES = $(shell find infrastructure/swagger -type f -name "* .yaml" -not -path "* /dist/* .yaml" ) $(shell find scripts/infrastructure/swagger -type f -name "* .sh") $(TOOL_VERSIONS_COPY )
@@ -18,6 +20,7 @@ swagger--merge--public: $(SWAGGER_PUBLIC) ## Updates public swagger builds from
1820swagger--merge--apigee : $(SWAGGER_APIGEE ) # # Updates Apigee swagger builds from the components in the infrastructure/swagger/ directory.
1921swagger--clean : # # Removes swagger builds.
2022 [[ -d $( SWAGGER_DIST) ]] && rm -r $(SWAGGER_DIST ) || :
23+ swagger--publish : $(SWAGGER_PUBLISH_TIMESTAMP ) # # Publish swagger docs via proxygen to API Catalogue
2124
2225
2326$(_CLEANED_SWAGGER_FILE ) : $(SWAGGER_DEPENDENCIES )
@@ -34,3 +37,17 @@ $(SWAGGER_PUBLIC): $(SWAGGER_DEPENDENCIES) $(_CLEANED_SWAGGER_FILE)
3437$(SWAGGER_APIGEE ) : $(SWAGGER_DEPENDENCIES ) $(_CLEANED_SWAGGER_FILE ) $(WORKSPACE_OUTPUT_JSON )
3538 @env bash $(PATH_TO_INFRASTRUCTURE ) /swagger/merge.sh generate_apigee_swagger
3639 npx --yes @redocly/cli lint $(SWAGGER_APIGEE ) --skip-rule security-defined
40+
41+ $(SWAGGER_PUBLISH_TIMESTAMP ) : aws--login $(SWAGGER_PUBLIC ) $(WORKSPACE_OUTPUT_JSON )
42+ [[ -f $( SWAGGER_PUBLISH_TIMESTAMP) ]] && rm $(SWAGGER_PUBLISH_TIMESTAMP ) || :
43+
44+ WORKSPACE_OUTPUT_JSON=$(WORKSPACE_OUTPUT_JSON) \
45+ ENVIRONMENT_MAPPING_YAML=$(ENVIRONMENT_MAPPING_YAML) \
46+ STAGE_MAPPING_YAML=$(STAGE_MAPPING_YAML) \
47+ APIGEE_CONFIG_PATH=$(APIGEE_CONFIG_PATH) \
48+ SWAGGER_APIGEE=$(SWAGGER_APIGEE) \
49+ SWAGGER_PUBLIC=$(SWAGGER_PUBLIC) \
50+ AWS_ACCESS_KEY_ID=$(AWS_ACCESS_KEY_ID) \
51+ AWS_SECRET_ACCESS_KEY=$(AWS_SECRET_ACCESS_KEY) \
52+ AWS_SESSION_TOKEN=$(AWS_SESSION_TOKEN) \
53+ bash $(PATH_TO_INFRASTRUCTURE)/apigee/proxygen.sh publish_swagger
0 commit comments