From 69ed6f5ca459ee017fca3a15c24f1b94419afabf Mon Sep 17 00:00:00 2001 From: Daniel Valdivia Date: Mon, 6 Apr 2020 14:22:27 -0700 Subject: [PATCH] Development md (#34) * Introduce DEVELOPMENT.md * Ignore *.orig files Co-authored-by: Lenin Alevski --- .gitignore | 1 + DEVELOPMENT.md | 31 +++++++++++++++++++++++++++++++ README.md | 32 ++------------------------------ 3 files changed, 34 insertions(+), 30 deletions(-) create mode 100644 DEVELOPMENT.md diff --git a/.gitignore b/.gitignore index ab873a055..b9482596b 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ *.dylib .DS_Store *.swp +*.orig # Test binary, build with `go test -c` *.test diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md new file mode 100644 index 000000000..964efb23c --- /dev/null +++ b/DEVELOPMENT.md @@ -0,0 +1,31 @@ +# Development + +This is a REST portal server created using [go-swagger](https://github.com/go-swagger/go-swagger) + +The API handlers are created using a YAML definition located in `swagger.YAML`. + +To add new api, the YAML file needs to be updated with all the desired apis using the [Swagger Basic Structure](https://swagger.io/docs/specification/2-0/basic-structure/), this includes paths, parameters, definitions, tags, etc. + +## Generate server from YAML +Once the YAML file is ready we can autogenerate the code needed for the new api by just running: + +Validate it: +``` +swagger validate ./swagger.yml +``` +Update server code: +``` +make swagger-gen +``` + +This will update all the necessary code. + +`./restapi/configure_mcs.go` is a file that contains the handlers to be used by the application, here is the only place where we need to update our code to support the new apis. This file is not affected when running the swagger generator and it is safe to edit. + +## Unit Tests +`./restapi/handlers_test.go` needs to be updated with the proper tests for the new api. + +To run tests: +``` +go test ./restapi +``` diff --git a/README.md b/README.md index ede866d94..42508bae9 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# MCS Minio Console Service +# Minio Console Server A graphical user interface for [MinIO](https://github.com/minio/minio) @@ -64,32 +64,4 @@ You can verify that the apis work by doing the request on `localhost:9090/api/v1 # Development -This is a REST portal server created using [go-swagger](https://github.com/go-swagger/go-swagger) - -The API handlers are created using a YAML definition located in `swagger.YAML`. - -To add new api, the YAML file needs to be updated with all the desired apis using the [Swagger Basic Structure](https://swagger.io/docs/specification/2-0/basic-structure/), this includes paths, parameters, definitions, tags, etc. - -## Generate server from YAML -Once the YAML file is ready we can autogenerate the code needed for the new api by just running: - -Validate it: -``` -swagger validate ./swagger.yml -``` -Update server code: -``` -make swagger-gen -``` - -This will update all the necessary code. - -`./restapi/configure_mcs.go` is a file that contains the handlers to be used by the application, here is the only place where we need to update our code to support the new apis. This file is not affected when running the swagger generator and it is safe to edit. - -## Unit Tests -`./restapi/handlers_test.go` needs to be updated with the proper tests for the new api. - -To run tests: -``` -go test ./restapi -``` +For development on this project please refer to our [DEVELOPMENT.md](DEVELOPMENT.md)