Граф коммитов

341 Коммитов

Автор SHA1 Сообщение Дата
Adam 7826d3778b Merge pull request #25 from hasAdamr/truss-interface
Update truss to use NamedReadWriter Interface
2016-08-19 13:51:26 -07:00
Adam Ryman 0307725f4b Update truss to use NamedReadWriter Interface
The truss.NamedReadWriter interface has the methods Read, Write, and
Name. *os.File fulfills this interface. A slice of them can represent a
file structure. This allows files to be directly used as NameReadWriter's.

This also allows for a truss.NamedReadWriter to be passed to functions
that accept io.Reader or io.Writer.
2016-08-19 10:54:04 -07:00
Adam 2606176641 Merge pull request #22 from hasAdamr/truss-refactor
Major refactor of truss
2016-08-17 19:46:12 -07:00
Adam Ryman 78d2ce7eaa Major truss refactor
truss used to be composed of several protoc plugins, with lots of side
effects.

truss is now composed of one protoc plugin, protoc-gen-truss-protocout
which outputs the output of protoc.

This output, plus the .proto file with the service definition are used
to create a doctree

This doctree is then used by gendocs and gengokit to generate the
microservice and documentation.

This stucture has less side effects, and should be more testable
2016-08-17 19:26:35 -07:00
Adam e8e3e8ec8c Merge pull request #19 from hasLeland/truss
Hotfix of typo in error wraps
2016-08-10 12:16:08 -07:00
Leland Batey b6559f0e26 Hotfix of typo in error wraps 2016-08-10 12:12:53 -07:00
Adam 31fe2d42c9 Merge pull request #18 from hasLeland/doctree-refactor
Makedt refactor
2016-08-09 14:16:45 -07:00
Leland Batey f4d039307f Clarify error messages 2016-08-08 17:41:40 -07:00
Leland Batey 8e1c66af07 Clean comments, break out functionality 2016-08-08 17:26:49 -07:00
Leland Batey 3a8d80046b Fix "it's" mistakes, move makedt to camelCase 2016-08-08 17:02:54 -07:00
Leland Batey 5d7b04f3d5 Add `github.com/pkg/errors` to vendored packages 2016-08-08 14:08:56 -07:00
Leland Batey 76e63e6504 Add unit test for makedt
The addition of annotations.pb.go and http.pb.go are necessary so that
tests which make use of http annotations are able to make use of them.
They're not used in this single test, but for future tests it's
important that they be included so I'm including them now.
2016-08-08 13:59:02 -07:00
Leland Batey 19b7251304 Refactor doctree creation into smaller functions
Each stage of the construction of a doctree has been broken down into
smaller functions, allowing each of those smaller functions to be
tested.
2016-08-07 16:26:01 -07:00
Adam ffd57bbce0 Merge pull request #16 from hasAdamr/truss-updatebuildflag
Update truss flag -build=false to -nobuild
2016-08-03 17:09:47 -07:00
Adam Ryman c1a1c38327 Update truss flag -build=false to -nobuild 2016-08-03 17:08:32 -07:00
hasLeland 7c0b2a858c Merge pull request #15 from hasAdamr/truss-buildflag
Add build flag for truss
2016-08-03 16:12:36 -07:00
Adam Ryman 0953ebae59 Add build flag for truss
The slowest part of truss is exec'ing $ go build for the generated
microservice. This commit adds a build flag to truss.

If truss is called as followed:
$ truss -build=false *.proto

The generated microservice will not be built.
This was added for using truss for tests that do not involve the built
microservice.
2016-08-03 16:11:07 -07:00
hasLeland 0ecb845f2c Merge pull request #14 from TuneLab/truss
Truss
2016-08-03 15:32:56 -07:00
hasLeland d437e730f7 Merge pull request #13 from TuneLab/sanitize-proto
Sanitize protobuf files
2016-08-03 12:05:48 -07:00
Leland Batey 09aa1879ef Remove pb from names 2016-08-02 19:05:54 -07:00
Leland Batey deffb3bbbf Remove references to tmc 2016-08-02 17:17:04 -07:00
Leland Batey aaf9e55ab0 Remove 'mv' references in files and names 2016-08-02 17:13:13 -07:00
Leland Batey 014766bc49 Move sanitize mvauth 2016-08-02 17:06:35 -07:00
hasLeland 174f0b0666 Merge pull request #12 from TuneLab/truss-rename-gotemplate
Update truss .go templates to .gotemplate
2016-08-02 16:47:12 -07:00
Adam 67975ae6f3 Merge pull request #11 from TuneLab/tests-and-comments
Expanding tests and documentation
2016-08-02 15:57:51 -07:00
Adam Ryman e823b84944 Update truss .go templates to .gotemplate
Having the template files be of extention .go confuses golangs tooling.
.gotemplate does not.
2016-08-02 15:53:26 -07:00
Leland Batey f2a9ad396b Revise clientarggen package docstring 2016-08-02 15:44:20 -07:00
hasLeland cc1ccd7540 Merge pull request #10 from TuneLab/developing.md
Add initial development documentation
2016-08-02 14:41:00 -07:00
Adam Ryman 546b78da79 Add initial development documentation 2016-08-02 14:38:15 -07:00
Leland Batey 5eeab0b8a4 Merge branch 'truss' into tests-and-comments 2016-08-02 14:27:53 -07:00
hasLeland 9245d19ab2 Merge pull request #8 from TuneLab/truss-integration-test-refactor
Refactor truss and integration_tests
2016-08-02 14:19:09 -07:00
Adam Ryman b30bbb71b1 Update Makefile with path, add logging to integration_tests 2016-08-02 14:10:22 -07:00
Leland Batey 24e78ed59a Add package documentation for protoc-gen-truss-doc 2016-08-02 13:36:32 -07:00
Adam Ryman a5b00d119c Refactor truss and integration_tests
truss has been refactored into main.go and generator/generator.go.
Where main.go deals with working directory, GOPATH, and argument
parsing and sanitation and generator.go actually exec's protoc and go
build to generate and build the microservice.

integration_tests were refactored to use `testing.T` to do logging
rather than logrus. As well as be more readable. It can also be called
with `$ go test -tags=integration -clean` in order to remove the
generated test files and nothing else.

Eventual goals are to unit test generator.go's functions and
eventually move the integration_tests to the generator package and test
by calling functions rather than execing the truss binary
2016-08-02 13:19:47 -07:00
Leland Batey 2fb39f3a1d Refine documentation for clientarggen package 2016-08-02 13:14:22 -07:00
Leland Batey 67235f246c Re-order imports for clarity 2016-08-02 12:17:04 -07:00
Leland Batey 9d9e85c1a8 Expand service parser unit tests for thoroughness 2016-08-02 12:12:01 -07:00
Adam 85636cbc38 Merge pull request #7 from TuneLab/vendor-deps
Remove and exclude breaking vendored files
2016-08-02 11:08:11 -07:00
Leland Batey b92907f265 Remove and exclude breaking vendored files 2016-08-01 16:28:33 -07:00
Adam ad5554a5af Merge pull request #6 from TuneLab/add-license
Add license file
2016-08-01 14:50:37 -07:00
Leland Batey 2642fb4bc4 Add license file
This license is a copy (dates changed) of the license for another of
Tune's open source projects, `freight_forwarder`, which can be found at
https://github.com/TuneOSS/freight_forwarder
2016-08-01 14:40:35 -07:00
Adam 51d40c51b6 Merge pull request #5 from TuneLab/vendor-deps
Vendor truss dependencies into the repo
2016-08-01 14:28:24 -07:00
Leland Batey 069194b1c2 Vendor truss dependencies into the repo 2016-08-01 12:27:45 -07:00
Adam d3c2f044fa Merge pull request #3 from TuneLab/http-param-tests
Http param tests
2016-08-01 11:48:43 -07:00
hasLeland b4c8d2e80d Merge pull request #2 from TuneLab/truss-go-test
Truss go test
2016-08-01 10:52:27 -07:00
Adam Ryman 50da5acdb2 Add deleting service directory in tests after integration test runs 2016-07-29 19:04:10 -07:00
Adam Ryman daf8503b8f Restructure integration test directories 2016-07-29 18:41:36 -07:00
hasLeland f4a4601f86 Merge pull request #1 from TuneLab/truss-template-rename
Rename template_files/ to service/ in t-gokit for symmetry
2016-07-29 18:18:29 -07:00
Adam Ryman fadd9ab462 Add build tags to integration tests
integration tests will now only run with
$ go test -tags=integration
2016-07-29 18:16:00 -07:00
Adam Ryman f82ae28448 Update integration runner to be called with go test 2016-07-29 16:49:40 -07:00