summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntoine GIRARD <sapk@users.noreply.github.com>2017-06-15 15:51:23 +0200
committerBo-Yi Wu <appleboy.tw@gmail.com>2017-06-15 08:51:23 -0500
commit2bcd9471c9b7efcf8f832f2855e2bc2221c75e03 (patch)
treef61429a95ef0b6a20608667090c3269d4850a60e
parent01322af2e8e213209cddff5356b317ce4875fca3 (diff)
downloadgitea-2bcd9471c9b7efcf8f832f2855e2bc2221c75e03.tar.gz
gitea-2bcd9471c9b7efcf8f832f2855e2bc2221c75e03.zip
Separate generate swagger + fix sed os specific (#1791)
* Separate generate-swagger * Remove go generate rules * Add missing definition replacement + remove use of -i sed flag for compatibility with mac os default sed version. This is a little hacky a better solution could be use. * Use custom SED_INPLACE depending of platform detection * Use SED_INPLACE for swagger-ui also
-rw-r--r--Makefile25
-rw-r--r--routers/api/v1/api.go4
2 files changed, 22 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index a0f73658ae..70018cd554 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,18 @@
DIST := dist
IMPORT := code.gitea.io/gitea
+
+SED_INPLACE := sed -i
+
+ifeq ($(OS), Windows_NT)
+ EXECUTABLE := gitea.exe
+else
+ EXECUTABLE := gitea
+ UNAME_S := $(shell uname -s)
+ ifeq ($(UNAME_S),Darwin)
+ SED_INPLACE := sed -i ''
+ endif
+endif
+
BINDATA := modules/{options,public,templates}/bindata.go
STYLESHEETS := $(wildcard public/less/index.less public/less/_*.less)
JAVASCRIPTS :=
@@ -59,11 +72,17 @@ generate:
@hash go-bindata > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
go get -u github.com/jteeuwen/go-bindata/...; \
fi
+ go generate $(PACKAGES)
+
+.PHONY: generate-swagger
+generate-swagger:
@hash swagger > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
go get -u github.com/go-swagger/go-swagger/cmd/swagger; \
fi
- go generate $(PACKAGES)
-
+ swagger generate spec -o ./public/swagger.v1.json
+ $(SED_INPLACE) "s;\".ref\": \"#/definitions/GPGKey\";\"type\": \"object\";g" ./public/swagger.v1.json
+ $(SED_INPLACE) "s;^ \".ref\": \"#/definitions/Repository\"; \"type\": \"object\";g" ./public/swagger.v1.json
+
.PHONY: errcheck
errcheck:
@hash errcheck > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
@@ -241,7 +260,7 @@ swagger-ui:
git clone --depth=10 -b v3.0.7 --single-branch https://github.com/swagger-api/swagger-ui.git /tmp/swagger-ui
mv /tmp/swagger-ui/dist public/assets/swagger-ui
rm -Rf /tmp/swagger-ui
- sed -i "s;http://petstore.swagger.io/v2/swagger.json;../../swagger.v1.json;g" public/assets/swagger-ui/index.html
+ $(SED_INPLACE) "s;http://petstore.swagger.io/v2/swagger.json;../../swagger.v1.json;g" public/assets/swagger-ui/index.html
.PHONY: assets
assets: javascripts stylesheets
diff --git a/routers/api/v1/api.go b/routers/api/v1/api.go
index aa7d8a5626..0e356b1f90 100644
--- a/routers/api/v1/api.go
+++ b/routers/api/v1/api.go
@@ -2,10 +2,6 @@
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
-//go:generate swagger generate spec -o ../../../public/swagger.v1.json
-//go:generate sed -i "s;\".ref\": \"#/definitions/GPGKey\";\"type\": \"object\";g" ../../../public/swagger.v1.json
-//go:generate sed -i "s;^ \".ref\": \"#/definitions/Repository\"; \"type\": \"object\";g" ../../../public/swagger.v1.json
-
// Package v1 Gitea API.
//
// This provide API interface to communicate with this Gitea instance.