gs generator
Standard Tooling for Go-Gulfstream Development
Make golang microservices based on event-driven architecture
Status
Not ready for production.
In the process of testing and fixing in internal projects.
Table of contents
Requirements
Install golang is recommended
Installation
From source
$ git clone git@github.com:go-gulfstream/gs.git
$ cd gs
$ make build-linux
$ make build-mac
Binary
$ go install github.com/go-gulfstream/gs/cmd/gs@latest
Docker
Repository
$ docker pull gulstream/gs:latest
$ docker run --rm docker.io/gulstream/gs:latest version
1. Create a new manifest file for project
With empty manifest file
$ gs manifest path/to/project
$ docker run -v path/to/project:/gs -w /gs docker.io/gulstream/gs:latest manifest /gs
With interactive mode
$ gs manifest -i path/to/project
With data example
$ gs manifest -d path/to/project
$ docker run -v path/to/project:/gs -w /gs docker.io/gulstream/gs:latest manifest -d /gs
2. Initialize a new project
$ gs init path/to/project
$ docker run -v path/to/project:/gs -w /gs docker.io/gulstream/gs:latest init /gs
3. Add mutations
$ gs add path/to/project
$ gs apply path/to/project
OR short entry
$ gs add -a path/to/project
OR See step 4
4. Apply changes to the project
Edit the path/to/project/gulfstream.yml
manifest file
Add command mutations OR/AND event mutations
Then execute apply command:
$ gs apply path/to/project
$ docker run -v path/to/project:/gs -w /gs docker.io/gulstream/gs:latest apply /gs
A short example
$ mkdir ~/myproject
$ gs manifest -d ~/myproject
$ gs init ~/myproject
$ gs add -a ~/myproject